dblenkus.common
ansible-common
Роль Ansible для общих конфигурационных задач на серверах EL7.
Требования
На данный момент роль поддерживает только дистрибутивы CentOS
_ и
Red Hat Enterprise Linux (RHEL)
_ EL7.
Также требуется RHEL/CentOS 7.4 или выше, так как она предоставляет новую версию пакета python-virtualenv (1.10.1-4.el7+), которая исправляет совместимость с Python 3 (подробности см. по ссылке: https://bugzilla.redhat.com/show_bug.cgi?id=1411685).
Если вам нужна поддержка других дистрибутивов, не стесняйтесь отправить запрос на внесение изменений
_.
.. _CentOS: https://www.centos.org/ .. _Red Hat Enterprise Linux (RHEL): https://www.redhat.com/en/technologies/linux-platforms/enterprise-linux .. _отправить запрос на внесение изменений: https://github.com/dblenkus/ansible-common/pull/new/master
Переменные роли
Переменная remote_user
автоматически устанавливается с использованием
команды whoami
, которая возвращает имя пользователя, подключающегося к серверу.
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| Имя | Тип | Описание | Обязательно| По умолчанию |
+====================================+==========+===========================================+===========+================================================================+
| common_include_security
| логическое| Определяет, будет ли выполнен раздел роли, | нет | true
|
| | | отвечающий за безопасность. | | |
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| common_include_guest_additions
| логическое| Определяет, будет ли выполнен раздел роли, | нет | false
|
| | | отвечающий за установку дополнений | | |
| | | VirtualBox. | | |
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| common_hostname
| строка | Имя хоста сервера. | нет | "{{ inventory_hostname }}"
|
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| common_rhel_repos_for_epel
| список | Список идентификаторов репозиториев, | нет | - rhel-7-server-optional-rpms
|
| | | которые должны быть включены на RHEL | | |
| | | для репозитория EPEL
. | | - rhel-7-server-extras-rpms
|
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| common_python3_enabled
| логическое| Установить Python 3.4, если true
. | нет | false
|
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| common_python36_enabled
| логическое| Установить Python 3.6, если true
. | нет | false
|
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| common_selinux_permisive
| логическое| Установить SELinux в режим permissive, | нет | false
|
| | | если true
. | | |
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| common_ssh_allowed_ips
| список | Список IP-адресов, с которых брандмауэр | нет | []
|
| | | позволит подключение по ssh. | | |
| | | | | |
| | | .. ПРЕДУПРЕЖДЕНИЕ:: | | |
| | | Если список пуст, все ssh подключения | | |
| | | будут разрешены. | | |
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| common_ssh_authorized_keys
| список | Список публичных ssh-ключей, которые будут| нет | []
|
| | | добавлены в файл authorized_keys
| | |
| | | пользователя remote_user
. | | |
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| vaulted_common_root_password
| строка | Пароль для root
. Он должен быть | нет | ""
|
| | | зашифрован и храниться в Ansible Vault для| | |
| | | обеспечения безопасности. См. документацию Ansible
| | |
| | | для получения дополнительных сведений. | | |
| | | | | |
| | | .. ПРЕДУПРЕЖДЕНИЕ:: | | |
| | | Пароль будет отключен, если это | | |
| | | значение оставлено пустым. | | |
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| vaulted_common_user_password
| строка | Пароль для remote_user
. Он должен | нет | |
| | | быть зашифрован и храниться в Ansible Vault| | |
| | | для обеспечения безопасности. См. документацию Ansible
_ | | |
| | | для получения дополнительных сведений. | | |
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| common_root_ps1
| строка | Значение переменной PS1
для root
| нет | "${BGREEN}\u@\h${NORMAL}:${BBLUE}\w${NORMAL}\\$"
|
| | | bash, если задано. | | |
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| common_user_ps1
| строка | Значение переменной PS1 bash для | нет | "${BLUE}(${RED}\w${BLUE}) ${NORMAL}\h ${RED}\\$ ${NORMAL}"
|
| | | remote_user
, если задано. | | |
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
| common_virtualbox_dist_dir
| строка | Путь, по которому будут скачаны и | нет | /opt/virtualbox
|
| | | распакованы дополнения VirtualBox. | | |
+------------------------------------+----------+-------------------------------------------+-----------+----------------------------------------------------------------+
.. _документация Ansible: http://docs.ansible.com/ansible/faq.html#how-do-i-generate-crypted-passwords-for-the-user-module .. _репозиторий EPEL: https://fedoraproject.org/wiki/EPEL
Зависимости
Нет зависимостей.
Пример Playbook
Чтобы использовать эту роль, добавьте это в ваш playbook:
.. код-блок:: yaml
- hosts: servers
roles:
- { role: domenblenkus.common }
Лицензия
Лицензия GPLv3. См. файл COPYING для получения деталей.
Информация об авторе
| Domen Blenkuš | Tadej Janež
ansible-galaxy install dblenkus.common