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

In computing, Ansible is an open-source software provisioning, configuration management, and application deployment tool. It runs on many Unix-like systems, and can configure both Unix-like systems as well as Microsoft Windows.

Ansible: подключение в приватную сеть через Bastion хост

31 января 2018
 

 Примеры подключения Ansible через Bastion хост (или jump-host) в публичной сети к EC2 в приватной сети. По теме – SSH: подключение в приватную сеть через Bastion и немного про Multiplexing (только тут для .ssh/config используем ProxyJump вместо ProxyCommand, доступна в OpenSSH 7.3 и выше). Для примера используем Bastion хост в публичной сети и DB хост в приватной… Читать далее »

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… Читать далее »

Prometheus: Ansible, NGINX и Grafana dashboard

23 октября 2017
 

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

Jenkins: миграция RTFM 2.6 – Jenkins Pipeline для Ansible

18 октября 2017
 

 В одном из предыдущих постов – Jenkins: миграция RTFM 2.4 – Jenkins Pipeline для CloudFormation RTFM стека – была добавлена задача в Jenkins для создания и апдейта AWS CloudFormation стека. Следующая задача – запускать Ansbile из Jenkins для настройки серверов в стеке. Далее создадим одну Ansbile роль с установкой NGINX, потом добавим задачу в Jenkins. PEM-ключи для… Читать далее »

Azure: подключение volume – ARM, Ansible и данные Prometheus

12 октября 2017
 

 Задача – добавить подключение data-диска к виртуальной машине во время развёртывания Azure Resource Group с виртуальной машиной, смонтировать диск к файловой системе и запустить Prometheus с использованием этого диска для хранения данных. Azure data disk Диск уже есть. Используем Azure CLI v2 из Docker образа: [simterm] $ docker run -v ~/Work/BER.JM/azure-infrastructure/:/root/azure-infrastructure/ -it azuresdk/azure-cli-python [/simterm]

Ansible: миграция RTFM 2.2 – RTFM Jenkins provision

8 октября 2017
 

 Продолжение сетапа Jenkins для RTFM. Начало – AWS: CloudFormation для EC2 c Jenkins. Для того, что бы развернуть Jenkins на EC2 в созданном стеке – потребуются: Docker для запуска самого Jenkins docker-compose файл для запуска Jenkins и подключения разделов Т.к. CI для развёртывания CI не будет 🙂 – то добавлю скрипт, который будет запускать создание стека а… Читать далее »

Ansible: Ansible Galaxy – создание аккаунта и добавление роли

8 октября 2017
 

  Процесс создания Github токена, авторизации Ansible Galaxy в Github и добавления роли в Galaxy. Установка Ansible Устанавливаем Ansible: [simterm] $ sudo pacman -S ansible resolving dependencies… looking for conflicting packages… Packages (17) python2-asn1crypto-0.23.0-1 python2-bcrypt-3.1.3-1 python2-cffi-1.10.0-1 python2-crypto-2.6.1-5 python2-cryptography-2.0.3-1 python2-enum34-1.1.6-1 python2-idna-2.6-1 python2-ipaddress-1.0.18-1 python2-jinja-2.9.6-1 python2-markupsafe-1.0-1 python2-paramiko-2.3.1-1 python2-ply-3.10-1 python2-pyasn1-0.3.6-1 python2-pycparser-2.18-1 python2-pynacl-1.1.2-1 python2-yaml-3.12-3 ansible-2.4.0.0-1 … [/simterm] Проверяем: [simterm] $… Читать далее »

Ansible: роли для Docker Compose, Prometheus и node_exporter

2 октября 2017
 

 Перебирал несколько ролей в Ansible Galaxy для установки и настройки Prometheus – но в конце-концов решил делать всё по-своему. Будем использовать Docker Compose, который будет запускать сам Prometheus и node_exporter. Роль Docker Compose Начнём с добавления роли docker-compose. В корне репозитория создаём каталог roles/docker-compose/tasks: [simterm] $ mkdir -p roles/docker-compose/tasks [/simterm] Создаём файл roles/docker-compose/tasks/main.yml: – name:… Читать далее »

Let’s Encrypt: firewall и верификация домена

26 сентября 2017
 

 Во время установки и получения сертификата с помощью Ansible – возник вопрос с доступом к серверу для верификации, т.к. доступ к портам 80 и 443 ограничен на уровне Azure Network Security Group. Для certbot можно было бы использовать manual верификацию через DNS – но тут требовалось или ручная обработка, или боль с Azure DNS API… Читать далее »