vmware_deploy_vcsa
vmware_deploy_vcsa
Развёртывание VMware vCenter Server Appliance из OVA.
Следующую конфигурацию можно выполнить:
- Обновить дату истечения срока действия аккаунта root или установить его на "никогда не истекает".
- Настроить Syslog.
- Присоединить устройство к домену AD и настроить источники идентификации.
- Импортировать сертификаты, подписанные CA.
- Настроить общие и статистические параметры vCenter.
- Запускать и останавливать службы.
- Назначать глобальные права.
- Назначать администраторов vCenter и пользователей с правами только на чтение.
- Назначать лицензию vCenter.
- Создавать центры обработки данных.
- Создавать кластеры и настраивать HA, DRS и vSAN.
- Назначать лицензию vSAN (экспериментально).
- Добавлять хосты ESXi.
- Назначать лицензии ESXi.
Поддерживаемый VMware vCenter Server
- VMware vCenter Server Appliance (VCSA) 6.5
- VMware vCenter Server Appliance (VCSA) 6.7
Требования
- python >= 2.6
- PyVmomi
Переменные роли
Следующие обязательные параметры должны быть определены в host_vars:
Сетевая конфигурация
Установите параметры сетевой конфигурации для устройства.
network_ip_address: "x.x.x.x"
network_label: "VM Network"
network_prefix: "xx"
network_gateway: "x.x.x.x"
Учетные данные и доступ
Установите имя пользователя и пароль SSH для администратора устройства.
vcsa_admin_username: "root"
vcsa_admin_password: "VMwar3!!"
Установите имя пользователя и пароль администратора SSO для устройства.
vcsa_sso_username: "[email protected]"
vcsa_sso_password: "VMwar3!!"
Установите переменные подключения Ansible (используйте точно так, как показано).
ansible_user: "{{ vcsa_admin_username }}"
ansible_password: "{{ vcsa_admin_password }}"
ansible_host: "{{ network_ip_address }}"
Следующие обязательные параметры должны быть определены в качестве дополнительных переменных, или в group_vars, или в host_vars:
Переменные развертывания OVA
Установите переменные развертывания OVA.
ova_deployment_hostname: "хостнейм vcenter/esxi"
ova_deployment_username: "имя пользователя vcenter/esxi"
ova_deployment_password: "пароль vcenter/esxi"
Установите целевой хранилище данных. Кластеры хранилищ не поддерживаются модулем.
ova_deployment_datastore: "datastore"
Следующие параметры нужны только при развёртывании на vCenter Server. Если папка не определена, устройство будет развернуто в папку по умолчанию.
ova_deployment_datacenter: "центр обработки данных vcenter"
ova_deployment_cluster: "кластер vcenter"
ova_deployment_folder: "папка vcenter"
Конфигурация OVA
Установите имя файла OVA.
ova_file: "ova_file.ova"
Установите локальный путь к OVA файлу (не используйте начальный слэш).
ova_path: "/path/to/ova_file"
Конфигурация DNS
Установите DNS домен, который должен использоваться.
dns_domain: "example.com"
Укажите список доступных DNS серверов.
dns_servers:
- "x.x.x.x"
- "x.x.x.x"
Следующие необязательные параметры могут быть определены в качестве дополнительных переменных, или в group_vars, или в host_vars:
Конфигурация загрузки OVA
Установите URL для OVA файла, если 'ova_source' установлен на 'http' (не используйте начальный слэш). Переменная 'ova_source' по умолчанию настроена на 'local' в роли 'vmware_deploy_ova' и может быть переопределена.
ova_url: "http[s]://example.com/ova"
Политики аккаунта root
Установите политики для аккаунта root. Установите следующие переменные, чтобы переопределить значения по умолчанию.
vcsa_root_expiration_disable: no
vcsa_root_expiration_days: 90
Импорт сертификатов, подписанных CA
Установите 'vcsa_use_signed_certificate' на 'yes', если вы хотите импортировать сертификаты, подписанные CA. Настройка по умолчанию - 'no'.
vcsa_use_signed_certificate: no
Если эта настройка включена, то следующие сертификаты требуются и должны быть помещены в папку 'files/certs' для роли.
- Сертификат хоста с именем файла 'hostname.pem' (имя хоста должно совпадать с тем, что было установлено в инвентаре). Файл PEM должен включать сертификат хоста и цепочку CA.
- Ключ сертификата хоста с именем файла 'hostname.key' (имя хоста должно совпадать с тем, что было установлено в инвентаре). Это должен быть нешифрованный файл, если он был зашифрован.
- Корневой сертификат CA с именем файла 'ca.crt'.
Участие в домене Active Directory
Установите, должно ли устройство быть присоединено к домену Active Directory. По умолчанию - 'no', но можно переопределить, установив следующую переменную на 'yes'.
vcsa_join_to_domain: no
Установите настройки членства в Active Directory, когда 'vcsa_join_to_domain' установлен на 'yes'.
vcsa_ad_dom_join_domain: "ad.domain.local"
vcsa_ad_dom_join_username: "[email protected]"
vcsa_ad_dom_join_password: "VMwar3!!"
OU, в котором необходимо создать объект компьютера AD, также можно указать. Не устанавливайте это, если хотите использовать контейнер по умолчанию.
vcsa_ad_dom_join_ou: "CN=Computers,DC=AD,DC=DOMAIN,DC=LOCAL"
Применить лицензионный ключ vCenter
Установите лицензионный ключ vCenter, который должен быть применен к vCenter Server.
vcsa_license_key: XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Службы vCenter
Список служб, которые должны быть запущены
Установите следующую переменную, чтобы указать список служб, которые должны быть запущены и настроены на автоматический старт. Приведённый список - лишь пример.
vcsa_services_to_start:
- updatemgr
- vsphere-ui
- content-library
- vapi-endpoint
Список служб, которые должны быть остановлены
Установите следующую переменную, чтобы указать список служб, которые должны быть остановлены и настроены на ручной запуск. Приведённый список - лишь пример.
vcsa_services_to_stop:
- rbd
- imagebuilder
Права vCenter
Определить глобальных администраторов
Установите следующую переменную, чтобы указать список групп, которым должны быть предоставлены права 'Глобальных администраторов'. Устройство должно быть присоединено к домену Active Directory, чтобы эти права могли быть применены. Группы будут определены из домена Active Directory, к которому было присоединено устройство.
vcsa_global_admin_groups:
- "vSphere-Gloabl-Admins"
Определить администраторов vCenter
Установите следующую переменную, чтобы указать список групп, которым должен быть предоставлен роль 'Администратор' для vCenter Server. Устройство должно быть присоединено к домену Active Directory, чтобы эти права могли быть применены. Группы будут определены из домена Active Directory, к которому было присоединено устройство.
vcsa_vcenter_admin_groups:
- "vSphere-Admins"
Определить пользователей vCenter с правами только на чтение
Установите следующую переменную для списка групп, которым должны быть предоставлены права 'Только для чтения' для vCenter Server. Устройство должно быть присоединено к домену Active Directory, чтобы эти права могли быть применены. Группы будут определены из домена Active Directory, к которому было присоединено устройство.
vcsa_vcenter_readonly_groups:
- "vSphere-ReadOnly"
Настройки vCenter
Следующие переменные могут быть использованы для настройки параметров vCenter. Все указанные значения являются настройками по умолчанию.
Настройки базы данных
Используйте следующие переменные для настройки параметров базы данных vCenter.
vcsa_database_max_connections: 50
vcsa_task_cleanup: true
vcsa_task_retention: 30
vcsa_event_cleanup: true
vcsa_event_retention: 30
Настройки времени выполнения
Используйте следующие переменные для настройки параметров времени выполнения vCenter.
vcsa_unique_id: 1
Настройки каталога пользователей
Используйте следующие переменные для настройки параметров каталогов пользователей vCenter.
vcsa_user_directory_timeout: 60
vcsa_user_directory_query_limit: true
vcsa_user_directory_query_limit_size: 5000
vcsa_user_directory_validation: true
vcsa_user_directory_validation_period: 1400
Настройки почтового сервера
Используйте следующие переменные для настройки параметров почты vCenter.
vcsa_mail_server: ""
vcsa_mail_sender: ""
Настройки SNMP-приемника
Используйте следующие переменные для настройки параметров SNMP-приемника vCenter.
vcsa_snmp_receiver_url: "localhost"
vcsa_snmp_receiver_enabled: true
vcsa_snmp_receiver_port: 162
vcsa_snmp_receiver_community: "public"
Настройки времени ожидания
Используйте следующие переменные для настройки настроек времени ожидания vCenter.
vcsa_normal_operations_timeout: 30
vcsa_long_operations_timeout: 120
Настройки ведения журнала
Используйте следующие переменные для настройки настроек ведения журнала vCenter.
vcsa_logging_level: "info"
Настройки статистики
Используйте следующие переменные для настройки статистики vCenter.
vcsa_interval_past_day_level: 1
vcsa_interval_past_week_level: 1
vcsa_interval_past_month_level: 1
vcsa_interval_past_year_level: 1
Конфигурация инвентаря
Используйте следующие переменные для создания объектов в инвентаре vCenter Server, таких как центры обработки данных, кластеры и хосты ESXi.
Создание центров обработки данных
Установите следующую переменную, чтобы указать списки центров обработки данных, которые должны быть созданы. Приведённый список - лишь пример.
vcsa_datacenters:
- DC1
- DC2
Создание кластеров
Установите следующую переменную, чтобы указать списки кластеров, которые должны быть созданы. Приведённый список является примером. Настройки кластера могут быть пропущены для использования значений по умолчанию (в соответствии с примером 'Cluster-02'). Если 'vsan_license_key' не предоставлен, будет использоваться лицензия по умолчанию.
vcsa_clusters:
- name: "Cluster-01"
datacenter: "DC1"
enable_ha: yes
ha_vm_monitoring: "vmMonitoringOnly"
enable_drs: yes
drs_vm_behavior: "fullyAutomated"
enable_vsan: no
vsan_license_key: XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
vsan_autoclaim_storage: no
- name: "Cluster-02"
datacenter: "DC1"
Добавление хостов ESXi
Установите следующую переменную, чтобы указать списки хостов ESXi, которые должны быть добавлены. Приведённый список - лишь пример. Если 'license_key' не предоставлен, лицензия по умолчанию будет использоваться.
vcsa_esxi_hosts:
- hostname: "esxi01.domain.local"
datacenter: "DC1"
cluster: "Cluster-01"
license_key: XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
- hostname: "esxi02.domain.local"
datacenter: "DC1"
cluster: "Cluster-01"
Каждый хост ESXi также может быть добавлен в инвентарь Ansible с установленными переменными host_vars. Это позволяет установить переменные для каждого хоста отдельно.
esxi_admin_username: "root"
esxi_admin_password: "VMwar3!!"
esxi_license_key: XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Если вы хотите использовать глобальные учётные данные для всех хостов ESXi, установите следующие переменные учётных данных в group_var.
default_esxi_admin_username: "root"
default_esxi_admin_password: "VMwar3!!"
Обратите внимание, что 'esxi_admin_username' и 'esxi_admin_password' всегда будут переопределять значения по умолчанию.
Дополнительные стандартные переменные
Следующие дополнительные переменные по умолчанию также установлены и могут быть переопределены, установив их в group_var.
Стандартный список NTP-серверов, который будет использоваться.
ntp_servers:
- "0.pool.ntp.org"
- "1.pool.ntp.org"
- "2.pool.ntp.org"
- "3.pool.ntp.org"
Переменные HTTP REST API
http_content_type: "application/json"
http_accept: "application/json"
http_validate_certs: no
http_body_format: "json"
Настройка для включения проверки сертификатов при подключении к VCSA.
vcsa_validate_certs: no
Зависимости
- { role: simplygeekuk.vmware_deploy_ova, tags: [ 'deploy' ] }
Пример Playbook
- hosts: vcsa_appliances
become: no
gather_facts: False
roles:
- simplygeekuk.vmware_deploy_vcsa
Лицензия
MIT
Информация об авторе
Гэвин Стивенс (https://www.simplygeek.co.uk)
ansible-galaxy install simplygeekuk/ansible-role-vmware_deploy_vcsa