Долгий Артём 2023-10-10 11:41:49 +03:00
parent 83a6151d49
commit 8a36084728
6 changed files with 55 additions and 11 deletions

View File

@ -1,6 +1,6 @@
--- ---
- name: Разворачивание второго контроллера домена - name: Разворачивание файлового сервера
hosts: nastest hosts: nastest
roles: roles:
- deploy_nas - deploy_nas

View File

@ -6,8 +6,5 @@ api_user: root@pam
api_password: P@ssw0rd api_password: P@ssw0rd
node: altv node: altv
key_name: id_rsa.pub key_name: id_rsa.pub
server_template: s-tmpl
ws_template: ws-tmpl
kws_template: kws-tmpl
vm_user: root vm_user: root
vm_password: P@ssw0rd vm_password: P@ssw0rd

View File

@ -8,7 +8,7 @@
api_user: "{{ api_user }}" api_user: "{{ api_user }}"
api_password: "{{ api_password }}" api_password: "{{ api_password }}"
api_host: "{{ api_host }}" api_host: "{{ api_host }}"
clone: "{{ server_template }}" clone: "{{ item.value.template }}"
storage: "{{ pve_storage }}" storage: "{{ pve_storage }}"
format: qcow2 format: qcow2
timeout: 500 timeout: 500

View File

@ -8,7 +8,7 @@
api_user: "{{ api_user }}" api_user: "{{ api_user }}"
api_password: "{{ api_password }}" api_password: "{{ api_password }}"
api_host: "{{ api_host }}" api_host: "{{ api_host }}"
clone: "{{ server_template }}" clone: "{{ item.value.template }}"
storage: "{{ pve_storage }}" storage: "{{ pve_storage }}"
format: qcow2 format: qcow2
timeout: 500 timeout: 500
@ -16,7 +16,7 @@
- name: Рабочая станция - Настройка IP адресов - name: Рабочая станция - Настройка IP адресов
command: "qm set {{ item.value.vmid }} --ipconfig0 gw={{ item.value.gw }},ip={{ item.value.ip }}" command: "qm set {{ item.value.vmid }} --ipconfig0 gw={{ item.value.gw }},ip={{ item.value.ip }}"
loop: "{{ lookup('dict', server_vms) }}" loop: "{{ lookup('dict', ws_vms) }}"
- name: Рабочая станция - Настройка DNS - name: Рабочая станция - Настройка DNS
command: "qm set {{ item.value.vmid }} --nameserver {{ item.value.dns }}" command: "qm set {{ item.value.vmid }} --nameserver {{ item.value.dns }}"

View File

@ -2,6 +2,7 @@
server_vms: server_vms:
alts1: alts1:
template: s-tmpl
name: dc1.alt.lan name: dc1.alt.lan
ip: 10.1.1.11/24 ip: 10.1.1.11/24
gw: 10.1.1.9 gw: 10.1.1.9
@ -11,6 +12,7 @@ server_vms:
sockets: 1 sockets: 1
memory: 2048 memory: 2048
alts2: alts2:
template: s-tmpl
name: dc2.alt.lan name: dc2.alt.lan
ip: 10.1.1.12/24 ip: 10.1.1.12/24
gw: 10.1.1.9 gw: 10.1.1.9
@ -20,6 +22,7 @@ server_vms:
sockets: 1 sockets: 1
memory: 2048 memory: 2048
alts3: alts3:
template: s-tmpl
name: nas.alt.lan name: nas.alt.lan
ip: 10.1.1.13/24 ip: 10.1.1.13/24
gw: 10.1.1.9 gw: 10.1.1.9
@ -31,6 +34,7 @@ server_vms:
ws_vms: ws_vms:
ws: ws:
template: ws-tmpl
name: ws.alt.lan name: ws.alt.lan
ip: 10.1.1.14/24 ip: 10.1.1.14/24
gw: 10.1.1.9 gw: 10.1.1.9
@ -40,6 +44,7 @@ ws_vms:
sockets: 1 sockets: 1
memory: 2048 memory: 2048
kws: kws:
template: kws-tmpl
name: kws.alt.lan name: kws.alt.lan
ip: 10.1.1.15/24 ip: 10.1.1.15/24
gw: 10.1.1.9 gw: 10.1.1.9

View File

@ -30,6 +30,7 @@
- [Репликация между контроллерами](#репликация-между-контроллерами) - [Репликация между контроллерами](#репликация-между-контроллерами)
- [Создание пользователей контроллера домена](#создание-пользователей-контроллера-домена) - [Создание пользователей контроллера домена](#создание-пользователей-контроллера-домена)
- [Добавление компьютеров в домен](#добавление-компьютеров-в-домен) - [Добавление компьютеров в домен](#добавление-компьютеров-в-домен)
- [Разворачивание файлового сервера](#разворачивание-файлового-сервера)
### Описание стенда ### Описание стенда
@ -267,7 +268,7 @@ ansible-playbook 04_deploy_dc2_role.yml
ansible-playbook 05_dc_replication.yml ansible-playbook 05_dc_replication.yml
``` ```
#### Создание пользователей контроллера домена ### Создание пользователей контроллера домена
Эта задача позволяет создавать или удалять пользователей в домене. Эта задача позволяет создавать или удалять пользователей в домене.
@ -289,8 +290,49 @@ ansible-playbook 06_add_samba_users.yml
ansible-playbook -e 'samba_user_mode=delete' 06_add_samba_users.yml ansible-playbook -e 'samba_user_mode=delete' 06_add_samba_users.yml
``` ```
#### Добавление компьютеров в домен ### Добавление компьютеров в домен
Следующим этапом необходимо добавить компьютеры в домен. Для этой задачи создан плэйбук `07_add_samba_clients.yml` Следующим этапом необходимо добавить компьютеры в домен. Для этой задачи создан плэйбук `07_add_samba_clients.yml`
Плэёбук выполняет следующие действия:
* **Проверка того, что узел не является членом домена** - если узел уже является членом домена, дальнейшее выполнение прерывается;
* **Обновление системы** - происходит обновление системы до актуального состояния;
* **Назначение корректного имени хоста** - устанавливается имя узла в соответствии с указанным в переменной в файле `mutable_vars.yml`;
* **Настройка резолвера на контроллеры домена** - чтобы вводимый узел мог найти доменные службы и подключиться к ним;
* **Обновление конфигурации резолвера** - для применения изменений настроек резолвера;
* **Установка клиентского пакета Samba**;
* **Ввод в домен**;
* **Проверка ввода в домен**;
* **Перезагрузка узла после добавления в домен**
Запуск выполняется из директории `ansible` с помощью команды:
```bash
ansible-playbook 07_add_samba_clients.yml
```
### Разворачивание файлового сервера
В этой роли выполняются задачи: Подготовка узла для развёртывания файлового сервера, Настройка файлового сервера Samba
Подготовка узла для развёртывания файлового сервера:
* **Проверка соответствия ОС** - таск выполнится при условии запуска на узле с ОС Альт, в противном случае будет выведено соответствующее сообщение и выполнение прервётся;
* **Проверка наличия развёрнутого домена на узле** - если на узле уже развёрнут контроллер домена, выполнение прервётся;
* **Обновление системы** - выполняется обновление системы до актуального состояния;
* **Назначение корректного имени хоста** - устанавливается имя узла в соответствии с указанным в переменной в файле `mutable_vars.yml`;
* **Настройка резолвера на контроллеры домена** - чтобы вводимый узел мог найти доменные службы и подключиться к ним;
* **Обновление конфигурации резолвера** - для применения изменений настроек резолвера;
* **Установка клиентского пакета Samba**
* **Ввод в домен**
* **Проверка ввода в домен**
* **Перезагрузка узла после добавления в домен**
Настройка файлового сервера Samba:
* **Установка пакета Samba**;
* **Создание разделяемого ресурса Samba** - создание директории и назначение её доменной группе;
* **Добавление в конфигурацию Samba данных о разделяемом ресурсе**;
* **Включение служб файлового сервера Samba**