Jenkins — Active Choice: AWS ECR Images tag (AWS Cli)

  Для параметризованной сборки с выбором тега образа, понадобится плагин Active Choices Переходим в настройки Jenkins'а   Раздел "Управление плагинами"   Переходим к вкладке "Доступные" и в поиске указываем "Active Choice" Устанавливаем его. Создаем "New Item" — "Pipeline", указываем, что это будет параметризованной сборка, и добавляем параметр "Active Choices Reactive Parameter"   Указываем, что это … Продолжить читать "Jenkins — Active Choice: AWS ECR Images tag (AWS Cli)"

FIX ERROR — Ansible AWS SSM: AnsibleError: An unhandled exception occurred while templating

При попытке получить значение с AWS SSM Ansible Playbook используя в качестве интерпретатора Python3 выдает следующую ошибку: fatal: [localhost-py3]: FAILED! => {"changed": false, "msg": "AnsibleError: An unhandled exception occurred while templating '{{ lookup('aws_ssm', 'server_listeners', decrypt=false, region=’eu-west-1′) }}'. Error was a <class 'ansible.errors.AnsibleError'>, original message: An unhandled exception occurred while running the lookup plugin 'aws_ssm'. Error … Продолжить читать "FIX ERROR — Ansible AWS SSM: AnsibleError: An unhandled exception occurred while templating"

CodeCommit — Git

HTTPS Для того, чтобы можно было работать с Git репозиторием в CodeCommit используя AIM роль, на инстансе должен быть установлен AWS Cli. Так же понадобится "credential-helper", для этого создадим файл конфигурации для Git'а:   И скопируем в него следующее:   Теперь можно работать с CodeCommit по протоколу HTTPS не указывая логин/пароль.   SSH Для работы … Продолжить читать "CodeCommit — Git"

AWS Cli — Поиск EC2 инстансов по тегу и состоянию

  Чтобы получить IP адреса всех инстансов с тегом "Application" и его значением "Frontend", и так же отфильтровать по состоянию, чтобы вывести информацию только о тех инстансах, которые в состоянии "running".   Чтобы вместе с IP адресом вывести имя истанса:

AWS SNS — HTTP(S) Subscription: ручное подтверждение

При создании подписки на HTTP/HTTPS в AWS SNS можно наблюдать, что подписка повисла в статусе: "Pending confirmation"   SNS на указанный URL делает POST запрос, в котором отправляет данные в формате JSON, и ожидает в ответ получить значение ключа: "SubscribeURL". Но если приложение не умеет ответить SNS'у, то можно ввести URL подтверждения вручную, но для … Продолжить читать "AWS SNS — HTTP(S) Subscription: ручное подтверждение"

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

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

AWS AMI Linux 2 — Logstash

  Для установки Logstash нужна установленная Java OpenJDK Устанавливаем Java OpenJDK:   Импортируем ключ репозитория:   И добавляем репозиторий:   Устанавливаем Logstash:   После установки на AMI Linux 2 не будет Systemd сервиса. Создадим его:   Запускаем сервис и проверяем статус:   Добавляем в автозапуск:

AWS AMI Linux 2 — redis-stat

Для установки redis-stat нужен ruby версии > 2.0 Сморим список доступных репозиториев:   Подключаем репозиторий с "ruby2.6":   Устанавливаем зависимости:   Устанавливаем "redis-stat":   redis-stat можно запустить не только, как консольную утилиту, а веб сервис:   После чего на порту "8080" будет доступен "redis-stat"