1
0
Fork 0
This repository has been archived on 2023-03-27. You can view files and clone it, but cannot push or open issues or pull requests.
fedihub-ansible/README.md
2020-01-25 06:58:57 +05:00

3.3 KiB
Raw Blame History

Конфигурация Ansible

Конфигурация верхнего уровня для развёртывания инфраструктуры с помощью Ansible.

Содержание

Подготовка серверов

Необходимо создать на серверах пользователя, добавить его в группу sudo, установить ему пароль и записать его в инвентарь конфигурации. Это можно сделать, выполнив указанные далее команды на сервере. Имя пользователя kotovalexarian замените на ваше.

adduser --gecos '' kotovalexarian
usermod -a -G sudo kotovalexarian

Также нужно будет разрешить этому пользователю подключаться по SSH с помощью вашего публичного ключа. Текущая конфигурация отключает возможность аутентификации по паролю. Убедитесь, что вы можете войти с помощью публичного ключа, иначе вы рискуете потерять доступ к серверу.

Подготовка конфигурации

Для ускорения работы Ansible используется библиотека Mitogen. Необходимо установить её в директорию vendor:

wget -O vendor/mitogen-0.2.8.tar.gz https://networkgenomics.com/try/mitogen-0.2.8.tar.gz
tar -xzf vendor/mitogen-0.2.8.tar.gz -C vendor/

Конфигурация зависит от ролей Ansible Galaxy, указанных в файле requirements.yml. Следующую команду нужно запускать перед началом работы с конфигурацией, а также после добавления ролей или изменения их версий:

ansible-galaxy install -r requirements.yml -f

Использование конфигурации

Перезагрузка всех серверов:

ansible all -m reboot

Обновление системных пакетов на всех серверах:

ansible all -m apt -a 'update_cache=yes upgrade=yes'

Показать пароль пользователя для каждого сервера:

ansible all -m debug -a var=ansible_become_pass

Развёртывание всей инфраструктуры:

ansible-playbook playbooks/deploy/site.yml

Создание резервной копии всех данных:

ansible-playbook plybooks/backup/site.yml