Архив рубрики: Setups

Примеры систем билдов-деплоев приложений и провижена рабочих окружений — Chef, bash, CI/CD сервера

Terraform: создание проекта с EC2, VPC и AWS cross-region VPC peering

28 июня 2018
 

 Одной из неприятных неожиданностей в использовании CloudFormation оказался факт того, что он не умеет создавать VPC peering между VPC в разных регионах. Т.е., сама возможность создания cross-region peering была анонсирована>>> AWS в ноябре 2017, но по состоянию на июнь 2018 — AWS CloudFormation просто не имеет опции region. В результате он пытается выполнить пиринг между… Читать далее »

AWS: создание стека в AWS — bash-скрипт и CloudFormation шаблон

10 мая 2018
 

 Задача — развернуть мониторинг Prometehus + Grafana в AWS (в противоположность Azure на предыдущем проекте…). Весь стек будет состоять из одного EC2, на котором будет NGINX + Prometheus + Grafana. Из экспортёров на хосте мониторинга будут node_exporter и blackbox_exporter, скорее всего ещё mysql_exporter — собирать метрики с MariaDB бекенда нашего приложения, и какие-то ещё. Но это… Читать далее »

Ansible: миграция RTFM 2.11 — хост Services — установка PHP, PHP-FPM

24 марта 2018
 

 Продолжаем миграцию. Предыдущие посты: AWS: миграция RTFM 2.1 – CloudFormation для EC2 c Jenkins Ansible: миграция RTFM 2.2 – RTFM Jenkins provision AWS: миграция RTFM 2.3 – инфраструктура для RTFM и создание CloudFormation шаблона – VPC, subnets, EC2 Jenkins: миграция RTFM 2.4 – Jenkins Pipeline для CloudFormation RTFM стека AWS: миграция RTFM 2.5 – настройка… Читать далее »

AWS: CloudFormation — пример создания S3 корзины, IAM пользователя, Glacier Lifecycle и SNS Notification

7 марта 2018
 

 Ещё один пример работы с CloudFormation. Задача — добавить создание AWS S3 корзины, со следующими параметрами: AccessControl: полный доступ владельцу (документация тут>>>) и IAM пользователю LifecycleConfiguration: архивировать данные в AWS Glacier по истечении заданного кол-ва дней (документация тут>>>) Tags: само собой NotificationConfiguration: отправлять сообщения через AWS SNS при удалении объектов из корзины (документация тут>>>) VersioningConfiguration: вкусно, но… Читать далее »

Ansible: миграция RTFM 2.10 — Let’s Encrypt, NGINX SSL, hostname и exim

10 февраля 2018
 

 Предыдущий пост серии — Ansible: миграция RTFM 2.9 – монтирование EBS и настройка NGINX на Bastion. Сегодня надо выполнить установку и настройку: Let’s Encrypt SSL на NGINX и виртуалхоста (пока только dev.rtfm.co.ua) hostname exim Ссылки на коммиты файлов, получившиеся в результате написания этого поста: roles/letsencrypt/tasks/main.yml rtfm-blog-ansible-bastion-provision.yml roles/nginx/templates/nginx.conf hosts roles/common/tasks/main.yml roles/exim/templates/update-exim4.conf.conf.j2 roles/exim/templates/mailname.j2 roles/exim/tasks/main.yml

Ansible: миграция RTFM 2.9 — монтирование EBS и настройка NGINX на Bastion

3 февраля 2018
 

 Предыдущий пост серии — Ansible: миграция RTFM 2.8 – logrotate, unattended-upgrades и Let’s Encrypt для Bastion хоста. Сейчас Bastion запущен и настроен, сегодня надо выполнить настройку NGINX. Как и прежние посты этой серии — это скорее заметки для себя по выполненным обновлениям плюс примеры настроек и действий. План таков: обновить роль common и добавить монтирование диска… Читать далее »

Ansible: миграция RTFM 2.8 — logrotate, unattended-upgrades и Let’s Encrypt для Bastion хоста

29 января 2018
 

 Прыдущая часть — AWS: миграция RTFM 2.7 – CloudFormation и Ansible – наcтройка NAT (там же ссылки на предыдущие посты). В этой части продолжим настройку Bastion хоста. Задача — добавить: роль logrotate: ротация логов NGINX (в дальнейшем логи будут сбрасываться через CloudWatch Logs агента) роль unattended-upgrades: автоапдейты системы роль Let’s Encrypt: получение и обновление сертификатов для сайтов роль… Читать далее »

AWS: миграция RTFM 2.7 — CloudFormation и Ansible — наcтройка NAT

27 января 2018
 

 Продолжаем миграцию. Предыдущие посты серии: AWS: миграция RTFM 2.1 – CloudFormation для EC2 c Jenkins: создание CloudFormation шаблона для EC2 с Jenkins Ansible: миграция RTFM 2.2 – RTFM Jenkins provision: создание ролей Ansible для установки и запуска Jenkins AWS: миграция RTFM 2.3 – инфраструктура для RTFM и создание CloudFormation шаблона – VPC, subnets, EC2: создание CloudFormation… Читать далее »

Docker: запуск Jenkins в Docker и Docker private registry

23 ноября 2017
 

 Задача — развернуть Jenkins и Docker Private registry в Китае, на AWS. Аналогичные посты — тут>>> и тут>>>, только в этом посте всё собрано в одно целое и упорядочено. К EC2 будут подключены два EBS — один с данными Jenkins, второй — с данными Docker. Для Docker registry в качестве хранилища используем AWS S3. Далее в посте: создадим… Читать далее »

Prometheus: Ansible, NGINX и Grafana dashboard

23 октября 2017
 

 Продолжаем с Prometheus… Последней задачей было Azure: подключение volume – ARM, Ansible и данные Prometheus. Теперь — добавим Grafana для визуализации данных. Надо — обновить docker-compose файл, добавить запуск контейнера с Grafana, и в самой Grafana — настроить backend, что бы она получала данные с Prometheus сервера. Кроме того — надо обновить NGINX (в нём в блоге не… Читать далее »