AWS — EKS Fargate — Fluentd CloudWatch

На момент написания статьи EKS Fargate не поддерживал драйверлог для записи в CloudWatch. Единственный вариант — использовать Sidecar Создадим ConfigMap, в котором укажем имя EKS кластера, регион и namespace:   Далее создадим сервис аккаунт и ConfigMap с файлом конфигурации для Fluentd. Для этого скопируем текст ниже и сохраним его как файл «fluentd.yaml»   И применим … Продолжить читать "AWS — EKS Fargate — Fluentd CloudWatch"

Kubernetes — Одна роль для нескольких пространств имен

    Цель: Есть 2 пространства имен, это «kube-system» и «default«. Нужно запускать крон задачу в пространстве «kube-system«, которая будет очищать выполненные джобы и поды в пространстве «default«. Для этого создадим сервис аккаунт в пространстве «kube-system«, роль с необходимыми правами в пространстве «default«, и для созданного аккаунта привязываем созданную роль. cross-namespace-role.yaml

EKS — RollingUpdate с запуском pod’а на том же инстансе

Необходимо выполнить обновление пода без даунтайма, но у пода есть volume, который является EBS, и может быть приатачен одновременно только к одному из EC2 инстансов. Поэтому необходимо, чтобы под был запущен на той же ноде, для этого можно воспользоваться «podAffinity» deployment.yaml

Kubernetes — Dashboard через service по HTTPS (AWS EKS)

Задача: Получить доступ к Kubernetes Dashboard по доменному имени, а не используя «kubectl proxy«. Так же подключение должно осуществляться по HTTPS, но при этом вести на внутренний локальный адрес, доступный только через VPN, и не используя для этого никаких Ingress‘ов.   Редактируем деплоймент «kubernetes-dashboard«:   Приводим аргументы к следующему виду:   А так же для … Продолжить читать "Kubernetes — Dashboard через service по HTTPS (AWS EKS)"

Kubernetes — NFS provisioner

  Установим NFS provisioner в Kubernetes кластер, для существующего NFS сервера   Дано: 192.168.1.1 — IP адрес NFS сервера /var/lib/nfs — путь NFS директории на сервере   Устанавливаем используя HELM:   Опцией «fullnameOverride» перезапишем полное имя чарта, так как он после имени все равно добавит «nfs-client-provisioner«   Делаем NFS типом хранилища по умолчанию:   Теперь … Продолжить читать "Kubernetes — NFS provisioner"

Kubernetes — Horizontal pod autoscaler на основе кастомных метрик

Спасибо Daniel Vaughan за данную статью. Для горизонтального автоскалирования подов (HPA) на основе кастомных метрик, нам понадобятся: Prometheus Operator Prometheus Adapter Все это, мы будем устанавливать используя Helm. Установку Helm‘а можно посмотреть тут.   Создадим директорию для хранения Helm values:   Создадим values файл для Prometheus Operator‘а:   Устанавливаем Prometheus Operator:  

Kubernetes — OpenVAS

  Пример манифеста для создания конфигмапа, деплоймента, сервиса и ингреса для OpenVAS manifest.yml     Логин по умолчанию — «admin«, если не задаете пароль через переменную «OV_PASSWORD«, то пароль — «admin«

Kubernetes — Сохраняем все манифесты существующего кластера

  Для сохранения всех манифестов создайте BASH скрипт:   Cо следующем содержимым:   Добавьте бит исполнения и запустите его:   После выполнения в текущей директории в папке «k8s-manifests» будут сохранены все манифесты упорядоченные по неймспейсам и типам.