Для параметризованной сборки с выбором тега образа, понадобится плагин Active Choices Переходим в настройки Jenkins'а Раздел "Управление плагинами" Переходим к вкладке "Доступные" и в поиске указываем "Active Choice" Устанавливаем его. Создаем "New Item" — "Pipeline", указываем, что это будет параметризованной сборка, и добавляем параметр "Active Choices Reactive Parameter" Указываем, что это …
Продолжить читать "Jenkins — Active Choice: AWS ECR Images tag (AWS Cli)"
Пример только с использованием AWS Cli, без сторонних утилит Пример с использованием утилиты jq
При попытке получить значение с 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"
HTTPS Для того, чтобы можно было работать с Git репозиторием в CodeCommit используя AIM роль, на инстансе должен быть установлен AWS Cli. Так же понадобится "credential-helper", для этого создадим файл конфигурации для Git'а: И скопируем в него следующее: Теперь можно работать с CodeCommit по протоколу HTTPS не указывая логин/пароль. SSH Для работы …
Продолжить читать "CodeCommit — Git"
Чтобы получить IP адреса всех инстансов с тегом "Application" и его значением "Frontend", и так же отфильтровать по состоянию, чтобы вывести информацию только о тех инстансах, которые в состоянии "running". Чтобы вместе с IP адресом вывести имя истанса:
При создании подписки на HTTP/HTTPS в AWS SNS можно наблюдать, что подписка повисла в статусе: "Pending confirmation" SNS на указанный URL делает POST запрос, в котором отправляет данные в формате JSON, и ожидает в ответ получить значение ключа: "SubscribeURL". Но если приложение не умеет ответить SNS'у, то можно ввести URL подтверждения вручную, но для …
Продолжить читать "AWS SNS — HTTP(S) Subscription: ручное подтверждение"
Необходимо выполнить обновление пода без даунтайма, но у пода есть volume, который является EBS, и может быть приатачен одновременно только к одному из EC2 инстансов. Поэтому необходимо, чтобы под был запущен на той же ноде, для этого можно воспользоваться "podAffinity" deployment.yaml
Для установки Logstash нужна установленная Java OpenJDK Устанавливаем Java OpenJDK: Импортируем ключ репозитория: И добавляем репозиторий: Устанавливаем Logstash: После установки на AMI Linux 2 не будет Systemd сервиса. Создадим его: Запускаем сервис и проверяем статус: Добавляем в автозапуск:
Запрос, для вывода логов, содержащих строку "artem.services" и ограничением в 200 сообщений для отображения результатов. Результат:
Для установки redis-stat нужен ruby версии > 2.0 Сморим список доступных репозиториев: Подключаем репозиторий с "ruby2.6": Устанавливаем зависимости: Устанавливаем "redis-stat": redis-stat можно запустить не только, как консольную утилиту, а веб сервис: После чего на порту "8080" будет доступен "redis-stat"