На момент написания статьи EKS Fargate не поддерживал драйверлог для записи в CloudWatch. Единственный вариант — использовать Sidecar Создадим ConfigMap, в котором укажем имя EKS кластера, регион и namespace: Далее создадим сервис аккаунт и ConfigMap с файлом конфигурации для Fluentd. Для этого скопируем текст ниже и сохраним его как файл «fluentd.yaml» И применим …
Продолжить читать "AWS — EKS Fargate — Fluentd CloudWatch"
Цель: Есть 2 пространства имен, это «kube-system» и «default«. Нужно запускать крон задачу в пространстве «kube-system«, которая будет очищать выполненные джобы и поды в пространстве «default«. Для этого создадим сервис аккаунт в пространстве «kube-system«, роль с необходимыми правами в пространстве «default«, и для созданного аккаунта привязываем созданную роль. cross-namespace-role.yaml
После установки CloudWatch Agent‘а в EKS кластер, его поды повисают в состоянии «Pending» Смотрим дескрайб пода Решение: Решение было найдено тут. В данном EKS кластере для системных подов выделена отдельная NodeGroup‘а с типом истансов: t3.micro и для запуска еще и CloudWatch Agent‘a просто не хватает капасити. После изменения типа инстанса в большую …
Продолжить читать "FIX ERROR — EKS: cloudwatch — 0/1 nodes are available: 1 Insufficient pods."
При попытке создать раздел утилитой «fdisk» размером 2 и более терабайта появляется следующее сообщение: The size of this disk is 2 TiB (2199023255552 bytes). DOS partition table format cannot be used on drives for volumes larger than 2199023255040 bytes for 512-byte sectors. Use GUID partition table format (GPT). Решение: Поставить на новый диск лейбл …
Продолжить читать "FIX ERROR — fdisk: DOS partition table format cannot be used on drives for volumes larger than 2199023255040 bytes for 512-byte sectors"
Для параметризованной сборки с выбором тега образа, понадобится плагин Active Choices Переходим в настройки Jenkins‘а Раздел «Управление плагинами» Переходим к вкладке «Доступные» и в поиске указываем «Active Choices» Устанавливаем его. Так же необходим плагин Amazon Web Services SDK Создаем «New Item» — «Pipeline«, указываем, что это будет параметризованной сборка, и добавляем параметр …
Продолжить читать "Jenkins — Active Choice: GitHub — Commit"
Ключ «—environment» утилиты AWS Cli заменяет все переменные, на те которые вы укажете в качестве аргумента. Чтобы изменить значение только одной переменной не стирая другие, или не перечисляя их все, можно воспользоваться следующим BASH скриптом: aws_lambda_update_env.sh: Для работы этого скрипта нужна утилита jq Скрипт вычитывает все текущие переменные, подменяет значение переменной «ECR_TAG» …
Продолжить читать "AWS Cli — Lambda: Обновить значение одной переменной"
После того, как установили Docker на Jenkins сервер и запустили его, при попытке выполнить сборку получаем следующую ошибку: Решение: Добавляем пользователя «jenkins» в группу «docker«: После этого пользователь «jenkins» сможет выполнять работу с Docker‘ом, если подключиться по SSH, но при Jenkins сборке будет по прежнему та же ошибка, чтобы от нее избавится, необходимо …
Продолжить читать "FIX ERROR — Jenkins: dial unix /var/run/docker.sock: connect: permission denied"