cs_host – Управляет хостами в облаках на основе Apache CloudStack.
Новое в версии 2.3.
Описание
- Создание, обновление и удаление хостов.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.6
- cs >= 0.6.10
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| allocation_state - |
| Состояние распределения хоста. |
| api_http_method - |
| HTTP-метод, используемый для запроса к API-точке. Если не указано, используется переменная среды CLOUDSTACK_METHOD. В качестве последнего варианта, значение берется из файла конфигурации ini, см. также примечания. Значение по умолчанию — get, если не указано. |
| api_key - | API-ключ API CloudStack. Если не указано, используется переменная среды CLOUDSTACK_KEY. В качестве последнего варианта, значение берется из файла конфигурации ini, см. также примечания. | |
| api_region - | По умолчанию: "cloudstack" | Имя раздела ini в файле cloustack.ini. Если не указано, используется переменная среды CLOUDSTACK_REGION. |
| api_secret - | Секретный ключ API CloudStack. Если не задан, используется переменная среды CLOUDSTACK_SECRET. В качестве последнего варианта, значение берется из файла конфигурации ini, см. также примечания. | |
| api_timeout - | Таймаут HTTP в секундах. Если не указано, используется переменная среды CLOUDSTACK_TIMEOUT. В качестве последнего варианта, значение берется из файла конфигурации ini, см. также примечания. Значение по умолчанию — 10 секунд, если не указано. | |
| api_url - | URL API CloudStack, например, https://cloud.example.com/client/api. Если не указано, используется переменная среды CLOUDSTACK_ENDPOINT. В качестве последнего варианта, значение берется из файла конфигурации ini, см. также примечания. | |
| cluster - | Имя кластера. | |
| host_tags - | Теги хоста. Псевдонимы: host_tag | |
| hypervisor - |
| Имя кластера. Требуется, если state=present и хост еще не существует. |
| 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
local_action:
module: cs_host
name: ix-pod01-esx01.example.com
cluster: vcenter.example.com/ch-zrh-ix/pod01-cluster01
pod: pod01
zone: ch-zrh-ix-01
hypervisor: VMware
allocation_state: disabled
host_tags:
- perf
- gpu
- name: Ensure an existing host is disabled
local_action:
module: cs_host
name: ix-pod01-esx01.example.com
zone: ch-zrh-ix-01
allocation_state: disabled
- name: Ensure an existing host is enabled
local_action:
module: cs_host
name: ix-pod01-esx01.example.com
zone: ch-zrh-ix-01
allocation_state: enabled
- name: Ensure a host is absent
local_action:
module: cs_host
name: ix-pod01-esx01.example.com
zone: ch-zrh-ix-01
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращено | Описание |
|---|---|---|
| allocation_state: строка | успех | Состояние выделения ресурсов хоста. Пример: enabled |
| capabilities строка | успех | Возможности хоста. Пример: hvm |
| cluster строка | успех | Кластер хоста. Пример: vcenter.example.com/zone/cluster01 |
| cluster_type строка | успех | Тип кластера хоста. Пример: ExternalManaged |
| cpu_allocated строка | успех | Процент ЦП хоста, который в настоящее время выделен. Пример: 166.25% |
| cpu_number строка | успех | Количество ЦП хоста. Пример: 24 |
| cpu_sockets целое число | успех | Количество сокетов ЦП хоста. Пример: 2 |
| cpu_speed целое число | успех | Частота ЦП в МГц Пример: 1999 |
| cpu_used строка | успех | Загрузка ЦП хоста. Пример: 33.6% |
| cpu_with_overprovisioning строка | успех | Количество ЦП хоста после применения cpu.overprovisioning.factor. Пример: 959520.0 |
| created строка | успех | Дата создания хоста. Пример: 2015-05-03T15:05:51+0200 |
| disconnected строка | успех | Дата отключения хоста. Пример: 2015-05-03T15:05:51+0200 |
| disk_size_allocated целое число | успех | Выделенный размер диска хоста. Пример: 2593 |
| disk_size_total целое число | успех | Общий размер диска хоста. Пример: 259300 |
| events строка | успех | Доступные события для хоста. Пример: Ping; HostDown; AgentConnected; AgentDisconnected; PingTimeout; ShutdownRequested; Remove; StartAgentRebalance; ManagementServerDown |
| gpu_group список | успех | Наличие видеокарт на хосте. |
| ha_host логическое значение | успех | Является ли хост хостом HA. |
| has_enough_capacity логическое значение | успех | Достаточно ли на хосте ЦП и ОЗУ для миграции виртуальной машины на него. Пример: True |
| host_tags строка | успех | Список тегов хоста, разделенных запятыми. Пример: perf |
| host_type строка | успех | Тип хоста. Пример: Routing |
| host_version строка | успех | Версия хоста. Пример: 4.5.2 |
| hypervisor строка | успех | Гипервизор хоста. Пример: VMware |
| hypervisor_version строка | успех | Версия гипервизора. Пример: 5.1 |
| ip_address строка | успех | IP-адрес хоста. Пример: 10.10.10.1 |
| is_local_storage_active логическое значение | успех | Доступен ли локальный хранилище. |
| last_pinged строка | успех | Дата и время последнего пинга хоста. Пример: 1970-01-17T17:27:32+0100 |
| management_server_id целое число | успех | Идентификатор сервера управления хоста. Пример: 345050593418 |
| memory_allocated целое число | успех | Выделенный объем памяти хоста. Пример: 69793218560 |
| memory_total целое число | успех | Общий объем памяти хоста. Пример: 206085263360 |
| memory_used целое число | успех | Используемый объем памяти хоста. Пример: 65504776192 |
| name строка | успех | Имя хоста. Пример: esx32.example.com |
| network_kbs_read целое число | успех | Входящий сетевой трафик на хосте. |
| network_kbs_write целое число | успех | Исходящий сетевой трафик на хосте. |
| os_category строка | успех | Имя категории ОС хоста. Пример: ... |
| out_of_band_management строка | успех | Информация об управлении хоста вне полосы. Пример: ... |
| pod string | success | Имя подсети узла. Пример: Pod01 |
| removed string | success | Дата и время удаления узла. Пример: 1970-01-17T17:27:32+0100 |
| resource_state string | success | Состояние ресурса узла. Пример: Enabled |
| state string | success | Состояние узла. Пример: Up |
| suitable_for_migration string | success | Подходит ли этот узел для миграции виртуальной машины (имеет достаточную мощность и удовлетворяет всем условиям, таким как теги узлов, максимальное ограничение количества виртуальных машин и т. д.) или нет. Пример: True |
| zone string | success | Зона узла. Пример: zone01 |
Статус
- Данный модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- 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.7/modules/cs_host_module.html