Архив метки: Ansible

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

Ansible: ansible-galaxy – репозиторий ролей и Jenkins VM provision

25 сентября 2017
 

 Продолжаем сетап системы мониторинга. Предыдущие части: Prometheus: мониторинг – введение, установка, запуск, примеры Azure: provisioning с Resource Manager, Jenkins и Groovy Ansible: пример установки NGINX Jenkins: Pipeline, Groovy, Ansible и VM provisioning Для NGINX роль я писал руками, далее – используем Ansible Galaxy.

Jenkins: Pipeline, Groovy, Ansible и VM provisioning

22 сентября 2017
 

 Продолжение постов Ansible: пример установки NGINX и Azure: provisioning с Resource Manager, Jenkins и Groovy. Задача  – запускать провижен VM из Jenkins. Пока выполняется только установка NGINX, позже будет добавлен Prometheus. Используем Jenkins Pipeline и groovy-скрипты. Описание Используется два репозитория: один для скриптов Jenkins (переменная $BUILD_REPO_URL в скриптах ниже), второй для файлов Ansbile ($INFRA_URL), в которых описаны хосты… Читать далее »

Ansible: пример установки NGINX

20 сентября 2017
 

 Задача – установить NGINX на удалённый хост с помощью Ansbile. Подготовка На рабочей машине – устанавливаем Ansible: [simterm] $ sudo pacman -S ansible [/simterm] В Jenkins – будем использовать Docker образ (или плагин). Проверяем: [simterm] $ ansible –version ansible 2.3.2.0 config file = /etc/ansible/ansible.cfg configured module search path = Default w/o overrides python version = 2.7.13… Читать далее »

Ansible: роли (roles) – пример

5 апреля 2015
 

 Роли отлично подходят для организации различных, но связанных между собой задач (task), и размещения всех связанных с этими задачами данных в одном месте. Для примера – выполним установку NGINX, которая будет включать в себя добавление файла репозитория, установку пакетов и установку файла конфигурации виртуалхоста. В данной статье используются примеры из предыдущей части – Ansible: сценарии (playbook)… Читать далее »