Tag Archives: Ansible

Grafana: добавление datasource из Ansible

18 June 2018
 

 В Grafana 5.0 появилась возможность настраивать её без API, а просто добавляя файлы настроек. Документация тут>>>. Удобно для использования с Ansible etc. Ниже быстрый пример применения. Путь к каталогу задаётся через переменную GF_PATHS_PROVISIONING: t=2018-06-18T13:11:26+0000 lvl=info msg=”Config overridden from Environment variable” logger=settings var=”GF_PATHS_PROVISIONING=/etc/grafana/provisioning” Ручное добавление Протестируем – попробуем добавить datasource вручную. Grafana запущена в контейнере, данные… Read More »

Prometheus: мониторинг PHP-FPM + Ansible роль

8 June 2018
 

 Задача – собирать метрики с PHP-FPM /status. Используем lusotycoon/phpfpm-exporter. Кроме этого экспортёра есть bakins/php-fpm-exporter – но контейнер из его Docker образа постоянно возвращает “Empty reply from server“. Есть peakgames/php-fpm-prometheus – но для него нет Docker образа, а собирать свой не хочется. Имеется также hipages/php-fpm_exporter – но с ним возникли ошибки вида “Error scraping PHP-FPM: invalid character ‘A’ looking for beginning… Read More »

AWS: CloudWatch unified agent – сбор метрик и логов с EC2 и Ansible роль для него

7 June 2018
 

 В дополнение к посту AWS: CloudWatch logs – сбор и мониторинг логов, где сбор логов выполнялся старым агентом – пример использования нового агента, который собирать и метрики инстанса, и логи. Для работы агента – ЕС2 требуется подключенная роль CloudWatchAgentServerPolicy, создание описано тут>>>. Пост кратенький, просто пример установки и запуска. Установка CloudWatch unified агента Устанавливаем unzip: Загружаем архив… Read More »

Ansible: модуль cloudformation

25 May 2018
 

 Для Ansible существует интересный модуль cloudformation, который позволяет создавать и удалять AWS CloudFormation стеки. Его может быть полезно использовать, что бы удобно передавать различные параметрыдля стеков, например Dev и Production, через переменные самого Ansible. Для примера возьмём шаблон ec2_simple_stack.json. Подготовка проекта Создадим новые проект: Создаём плейбук, всего одна роль – cloudformation: – hosts: – all become:… Read More »

Ansible: теги, include_vars и приоритеты переменных

22 May 2018
 

 В процессе написания плейбука для создания стека с модулем cloudformation (про него позже) появился пример использования тегов для ограничения выполнения задач из различных ролей, и хороший пример важности учёта приоритетов при использовании переменных. Ansible теги К примеру, есть такой плейбук: – hosts: – all become: true gather_facts: false roles: – role: cloudformation tags: infra -… Read More »

Ansible: Prometheus provisioning – роли common, exim, nginx, logrotate и unattended-upgrades

14 May 2018
 

 Продолжение сетапа из AWS: создание стека в AWS – bash-скрипт и CloudFormation шаблон. Далее потребуется добавить Ansible playbook и роли для настройки хоста. В принципе – ничего особенно отличного от того, что описано в постах серии RTFM migration, например – Ansible: миграция RTFM 2.9 – монтирование EBS и настройка NGINX на Bastion. Что надо будет выполнить: добавить… Read More »

Ansible: использование Vault – зашифрованного хранилища

13 May 2018
 

 Начиная с версии 1.5 в Ansible была доабвлена возможность хранения секретных данных, таких как пароли или RSA ключи, в зашифрованных файлах – vault (“хранилище”). Для работы с такими хранилищами используется утилита ansible-vault, которая принимает два основных аргумента – –ask-vault-pass или –vault-password-file, которые могут быть заданы через ansible.cfg. Располагается в /usr/bin/ansible-vault и представялет собой Python-скрипт.   Шифрование файлов… Read More »

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

24 March 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 – настройка… Read More »

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

10 February 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 February 2018
 

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