k8s mini cluster step by step [03] Утилиты.

Добавляем утилиты, облегчающие жизнь администратора.

05:06 — PiorytyClass — планируем приоритеты.
09:22 — Reloader, облегчаем работу с ConfigMaps
26:29 — metrics-server — необходимый инструмент для автоскейлинга.
31:29 — nfs-subdir-external-provisioner — автоматическое создание PV.
36:32 — установка cart-manager.

Файлы, используемые в видео: https://github.com/BigKAA/youtube/tree/master/k8s-step-by-step/02-utils

Обновил комп

Обновил комп. Поставил Ryzen 3950x. Теперь могу больше виртуальных машин.

Подготовил «поле» из виртуалок для начала съемок цикла «k8s — step by step».

Сижу, пишу планы. Готовлю скрипты 🙂

Дело осталось за малым — свободное время.

Планы на начало 2021

За последний год работы с kubernetes, наконец то появилось некоторое понимание как это должно работать 🙂 В связи с этим соберу в одну кучу свои заметки по созданию небольшого кластера для devops и развертывания нескольких приложений.

К сожалению к большим кластерам у меня нет доступа. Традиционная проблема «яйца и курицы»: что бы получить доступ к большому кластеру, требуют опыт работы с ним. Что бы получить опыт работы, нужен доступ к большому кластеру.

Ниже представлен план, что будет. Еще не решил, сделать в виде только текста или текст + видео.

Небольшой kubernetes cluster step by step

Попытаюсь описать пошаговую процедуру создания кластера kubernetes.

Будет настроен кластер и некоторое количество системных приложений.

Для лучшего понимания внутренностей системы, по возможности все приложения будут конфигурироваться вручную, без применения helm.

Шаг 0. Определение PriorityClasses.

Шаг 1. Различные утилиты и первоначальные действия.

  • Определение namespaces, необходимых для дальнейшей работы приложений кластера.
  • Reloader — утилита для перезагрузки сервиса после изменения configMap.
  • MetricsServer — отображение метрик при использовании kubectl top.
  • cert-manager — утилита для управления сертификатами.

Шаг 2. Persistent Volumes.

Автоматизируем создание PersistentVolumes на базе nfs.

Шаг 3. Ingress Controllers.

Создаем системный ingress-controller, для доступа к системным приложениям.

Шаг 4. Мониторинг.

  • Разное.
    • netdata — интересная замена node-exporter.
  • Victoriametrics — длительное хранение метрик.
  • Prometeheus — сбор метрик приложений системы.
    • Варианты конфигурации для различных подсистем.
    • node-exporter.
    • kube-state-metrics.
  • Grafana — графики, алёрты.

Шаг 5. Сбор логов.

Сбор логов системных приложений. Для приложений пользователей логи будут собираться отдельно.

  • Роутер логов на основе fluentd.
    • Пересылка логов системных приложений в файловую систему.
  • Сбор системных логов, при помощи fluentbit.

Kubernetes, network, services [02]

Kubernetes, network, service
Продолжение рассказа о сервисах в kubernetes

00:20 — headless service
10:51 — ссылка на конкретный под statefulset
12:33 — service externalname
16:26 — externalIP
22:25 — service NodePort

Текстовый вариант можно почитать тут.