44 lines
2.0 KiB
YAML
44 lines
2.0 KiB
YAML
---
|
||
|
||
- name: Репликация между контроллерами
|
||
hosts: dc1
|
||
|
||
tasks:
|
||
- name: Проверка соответствия ОС
|
||
ansible.builtin.fail:
|
||
msg: Операционная система должна быть Альт
|
||
when: ansible_os_family != "Altlinux"
|
||
|
||
- name: Проверка наличия развёрнутого домена на хосте {{ ansible_hostname }}
|
||
ansible.builtin.shell: "samba-tool domain info {{ ansible_default_ipv4.address }}"
|
||
register: samba_tool_result
|
||
ignore_errors: true
|
||
|
||
- name: Если на хосте НЕ развёрнут домен, выполнение прерывается
|
||
ansible.builtin.fail:
|
||
msg: На хосте {{ ansible_hostname }} НЕ обнаружен развёрнутый домен. Прерываю выполнение
|
||
when:
|
||
- samba_tool_result.failed != false
|
||
|
||
- name: Репликация в направлении {{ hostnames.dc2_host }} -> {{ hostnames.dc1_host }}
|
||
ansible.builtin.shell: |
|
||
samba-tool drs replicate \
|
||
{{ hostnames.dc2_host }}.{{ dc_details.realm }} \
|
||
{{ hostnames.dc1_host }}.{{ dc_details.realm }} \
|
||
dc={{ dc_details.domain }},dc={{ dc_details.domain_suffix }} \
|
||
-Uadministrator --password={{ dc_details.adminpass }}
|
||
register: rep1_output
|
||
- ansible.builtin.debug:
|
||
msg: "Итог репликации: {{ rep1_output.stdout }}"
|
||
|
||
- name: Репликация в направлении {{ hostnames.dc1_host }} -> {{ hostnames.dc2_host }}
|
||
ansible.builtin.shell: |
|
||
samba-tool drs replicate \
|
||
{{ hostnames.dc1_host }}.{{ dc_details.realm }} \
|
||
{{ hostnames.dc2_host }}.{{ dc_details.realm }} \
|
||
dc={{ dc_details.domain }},dc={{ dc_details.domain_suffix }} \
|
||
-Uadministrator --password={{ dc_details.adminpass }}
|
||
register: rep2_output
|
||
- ansible.builtin.debug:
|
||
msg: "Итог репликации: {{ rep2_output.stdout }}"
|