ngine_io.cloudstack.cs_host – Управляет хостами в облаках на базе Apache CloudStack.
Примечание
Этот плагин входит в коллекцию ngine_io.cloudstack (версия 1.1.0).
Для его установки используйте: ansible-galaxy collection install ngine_io.cloudstack.
Для использования в playbook, укажите: ngine_io.cloudstack.cs_host.
Новое в версии 0.1.0: модуля ngine_io.cloudstack
Описание
- Создание, обновление и удаление хостов.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- cs >= 0.9.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| allocation_state строка |
| Состояние выделения хоста. |
| api_http_method строка |
| HTTP-метод, используемый для запроса к API-точке. Если не указано, используется переменная среды CLOUDSTACK_METHOD. В качестве последнего варианта, значение берется из файла конфигурации ini, также см. примечания. Значение по умолчанию: get, если не указано. |
| api_key строка | Ключ API CloudStack API. Если не указано, используется переменная среды CLOUDSTACK_KEY. В качестве последнего варианта, значение берется из файла конфигурации ini, также см. примечания. | |
| api_region строка | Значение по умолчанию: "cloudstack" | Имя раздела ini в файле cloustack.ini. Если не указано, используется переменная среды CLOUDSTACK_REGION. |
| api_secret строка | Секретный ключ CloudStack API. Если не указано, используется переменная среды CLOUDSTACK_SECRET. В качестве последнего варианта, значение берется из файла конфигурации ini, также см. примечания. | |
| api_timeout целое число | Таймаут HTTP в секундах. Если не указано, используется переменная среды CLOUDSTACK_TIMEOUT. В качестве последнего варианта, значение берется из файла конфигурации ini, также см. примечания. Значение по умолчанию: 10 секунд, если не указано. | |
| api_url строка | URL CloudStack API, например, https://cloud.example.com/client/api. Если не указано, используется переменная среды CLOUDSTACK_ENDPOINT. В качестве последнего варианта, значение берется из файла конфигурации ini, также см. примечания. | |
| api_verify_ssl_cert строка | Файл сертификата CA. Если не указано, используется переменная среды CLOUDSTACK_VERIFY. В качестве последнего варианта, значение берется из файла конфигурации ini, также см. примечания. Значение по умолчанию: null, если не указано. | |
| cluster строка | Имя кластера. | |
| host_tags список / элементы=строка | Теги хоста. псевдонимы: host_tag | |
| hypervisor строка | Имя кластера. Обязательно, если state=present и хост еще не существует. Возможные значения: KVM, VMware, BareMetal, XenServer, LXC, HyperV, UCS, OVM, Simulator. | |
| name строка / обязательно | Имя хоста. псевдонимы: ip_address | |
| password строка | Пароль для хоста. Обязательно, если state=present и хост еще не существует. | |
| pod строка | Имя подсети. Обязательно, если state=present и хост еще не существует. | |
| state строка |
| Состояние хоста. |
| url строка | URL хоста, используемого для создания хоста. Если не указано, используется http://, и параметр name используется как URL.Рассматривается только если state=present и хост еще не существует. | |
| username строка | Имя пользователя для хоста. Обязательно, если state=present и хост еще не существует. | |
| zone строка | Имя зоны, в которой должен быть развернут хост. Если не задано, используется зона по умолчанию. |
Примечания
Примечание
- Ansible использует метод конфигурации библиотеки
cs, если учетные данные не предоставлены аргументамиapi_url,api_key,api_secret. Конфигурация считывается из нескольких источников, в следующем порядке.CLOUDSTACK_ENDPOINT,CLOUDSTACK_KEY,CLOUDSTACK_SECRETиCLOUDSTACK_METHOD. Переменные окруженияCLOUDSTACK_TIMEOUT. Переменная окруженияCLOUDSTACK_CONFIG, указывающая на файл.ini. Файлcloudstack.iniв текущей рабочей директории. Файл.cloudstack.iniв домашней директории пользователя. Допускается указание нескольких учетных данных и конечных точек с использованием разделов ini вcloudstack.ini. Используйте аргументapi_regionдля выбора имени раздела, раздел по умолчанию -cloudstack. Дополнительную информацию можно найти на https://github.com/exoscale/cs. - Подробное руководство по модулям cloudstack можно найти в Руководстве по облакам CloudStack.
- Этот модуль поддерживает режим проверки.
Примеры
- name: Ensure a host is present but disabled
ngine_io.cloudstack.cs_host:
name: pod01.zone01.example.com
cluster: vcenter.example.com/zone01/cluster01
pod: pod01
zone: zone01
hypervisor: VMware
allocation_state: disabled
host_tags:
- perf
- gpu
- name: Ensure an existing host is disabled
ngine_io.cloudstack.cs_host:
name: pod01.zone01.example.com
zone: zone01
allocation_state: disabled
- name: Ensure an existing host is enabled
ngine_io.cloudstack.cs_host:
name: pod01.zone01.example.com
zone: zone01
allocation_state: enabled
- name: Ensure a host is absent
ngine_io.cloudstack.cs_host:
name: pod01.zone01.example.com
zone: zone01
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны в разделе здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| allocation_state: строка | success | Состояние выделения ресурсов хоста. Пример: enabled |
| capabilities строка | success | Возможности хоста. Пример: hvm |
| cluster строка | success | Кластер хоста. Пример: vcenter.example.com/zone/cluster01 |
| cluster_type строка | success | Тип кластера хоста. Пример: ExternalManaged |
| cpu_allocated строка | success | Процент процессорного времени хоста, выделенного в данный момент. Пример: 166.25% |
| cpu_number строка | success | Количество процессоров хоста. Пример: 24 |
| cpu_sockets целое число | success | Количество сокетов процессора хоста. Пример: 2 |
| cpu_speed целое число | success | Частота процессора в МГц Пример: 1999 |
| cpu_used строка | success | Используемое процессорное время хоста. Пример: 33.6% |
| cpu_with_overprovisioning строка | success | Количество процессорных ресурсов хоста после применения cpu.overprovisioning.factor. Пример: 959520.0 |
| created строка | success | Дата создания хоста. Пример: 2015-05-03T15:05:51+0200 |
| disconnected строка | success | Дата отключения хоста. Пример: 2015-05-03T15:05:51+0200 |
| disk_size_allocated целое число | success | Выделенный размер диска хоста. Пример: 2593 |
| disk_size_total целое число | success | Общий размер диска хоста. Пример: 259300 |
| events строка | success | Доступные события для хоста. Пример: Ping; HostDown; AgentConnected; AgentDisconnected; PingTimeout; ShutdownRequested; Remove; StartAgentRebalance; ManagementServerDown |
| gpu_group список / элементы=строка | success | Наличие видеокарт на хосте. |
| ha_host логическое значение | success | Является ли хост хостом HA. |
| has_enough_capacity логическое значение | success | Достаточно ли на хосте ресурсов (CPU и ОЗУ) для миграции виртуальной машины? Пример: True |
| host_tags строка | success | Список меток хоста, разделенных запятыми. Пример: perf |
| host_type строка | success | Тип хоста. Пример: Routing |
| host_version строка | success | Версия хоста. Пример: 4.5.2 |
| hypervisor строка | success | Гипервизор хоста. Пример: VMware |
| hypervisor_version строка | success | Версия гипервизора. Пример: 5.1 |
| ip_address строка | success | IP-адрес хоста. Пример: 10.10.10.1 |
| is_local_storage_active логическое значение | success | Доступно ли локальное хранилище. |
| last_pinged строка | success | Дата и время последнего пинга хоста. Пример: 1970-01-17T17:27:32+0100 |
| management_server_id целое число | success | ID сервера управления хостом. Пример: 345050593418 |
| memory_allocated целое число | success | Выделенный объем памяти хоста. Пример: 69793218560 |
| memory_total целое число | success | Общий объем памяти хоста. Пример: 206085263360 |
| memory_used целое число | success | Используемый объем памяти хоста. Пример: 65504776192 |
| name строка | success | Имя хоста. Пример: esx32.example.com |
| network_kbs_read целое число | success | Входящий сетевой трафик на хосте. |
| network_kbs_write целое число | success | Исходящий сетевой трафик на хосте. |
| os_category строка | success | Категория операционной системы хоста. Пример: ... |
| out_of_band_management строка | success | Информация о внеполосном управлении хостом. Пример: ... |
| pod строка | success | Имя подсети хоста. Пример: Pod01 |
| removed строка | success | Дата и время удаления хоста. Пример: 1970-01-17T17:27:32+0100 |
| resource_state строка | success | Состояние ресурса хоста. Пример: Enabled |
| state строка | success | Состояние хоста. Пример: Up |
| suitable_for_migration строка | success | Подходит ли этот хост для миграции виртуальной машины (имеет достаточную мощность и соответствует всем условиям, таким как hosttags, максимальное количество виртуальных машин и т. д.)? Пример: True |
| zone строка | success | Зона хоста. Пример: zone01 |
Авторы
- René Moser (@resmo)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/ngine_io/cloudstack/cs_host_module.html