inventory/hosts, необходимо указать:
ipaserver_setup_dns=yes, чтобы указать, что нужно использовать интегрированный DNS.
ipaserver_auto_forwarders=yes, чтобы установщик использовал DNS-серверы из настроек сети (из файла /etc/resolv.conf). Не следует использовать этот параметр, если сервер имен, указанный в файле /etc/resolv.conf, содержит адрес localhost 127.0.0.1;
ipaserver_forwarders, чтобы вручную указать дополнительные серверы;
ipaserver_no_forwarders=yes, чтобы настроить корневые DNS-серверы.
ipaserver_allow_zone_overlap=yes, чтобы разрешить создание (обратной) зоны DNS, даже если зона уже существует;
ipaserver_reverse_zones, чтобы вручную указать обратные зоны;
ipaserver_no_reverse=yes, чтобы установщик не настраивал обратные зоны.
Примечание
- name: Playbook to configure IPA server
hosts: ipaservers
become: true
vars_files:
- playbook_sensitive_data.yml
roles:
- role: ipaserver
state: present
[...] [ipaservers:vars] ipaadmin_password=12345678 ipadm_password=12345678
- name: Playbook to configure IPA server
hosts: ipaservers
become: true
roles:
- role: ipaserver
state: present
ipaserver_no_dnssec_validation=yes, если необходимо выключить DNSSEC (например, если в дальнейшем планируется настраивать доверительные отношения с Active Directory и настраивать сервер пересылки DNS).
ipaserver_setup_firewalld=no, если не нужно устанавливать межсетевой экран.
Примечание
ipaserver_install_packages в значение no.
[ipaservers] ipa.example.test [ipaservers:vars] ipaserver_domain=example.test ipaserver_realm=EXAMPLE.TEST ipaserver_setup_dns=yes ipaserver_auto_forwarders=yes ipaserver_allow_zone_overlap=yes ipaserver_no_dnssec_validation=yes ipaadmin_password=12345678 ipadm_password=12345678 ipaserver_setup_firewalld=no
Примечание
/usr/share/ansible/roles/ipaserver/README.md.
install-server.yml, содержащего инструкции по развертыванию сервера FreeIPA:
---
- name: Playbook to configure IPA server
hosts: ipaservers
become: true
roles:
- role: ipaserver
state: present
Здесь:
hosts: ipaservers указывает раздел файла inventory/hosts, где скрипт ansible ищет полные доменные имена узлов, на которых должен быть запущен скрипт ipa-server-install;
become: true указывает, что скрипт ipa-client-install будет вызываться с правами суперпользователя (root);
role: ipaserver указывает роль, которая будет установлена на узле (в данном случае это роль сервера FreeIPA);
state: present указывает, что сервер должен быть установлен, а не удален (absent).
--unattended, -U — не запрашивать у пользователя информацию.
-v, -vv или -vvv):
$ ansible-playbook -v -i inventory/hosts install-server.yml
Using /etc/ansible/ansible.cfg as config file
PLAY [Playbook to configure IPA server] **********************************************************
TASK [Gathering Facts] ***************************************************************************
ok: [ipa.example.test]
...
PLAY RECAP ***************************************************************************************
ipa.example.test : ok=36 changed=20 unreachable=0 failed=0 skipped=37 rescued=0 ignored=0