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-ключ 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, см. также примечания. | |
| 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 Cloud.
- Этот модуль поддерживает режим проверки.
Примеры
- name: Ensure a host is present but disabled
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
delegate_to: localhost
- name: Ensure an existing host is disabled
cs_host:
name: pod01.zone01.example.com
zone: zone01
allocation_state: disabled
delegate_to: localhost
- name: Ensure an existing host is enabled
cs_host:
name: pod01.zone01.example.com
zone: zone01
allocation_state: enabled
delegate_to: localhost
- name: Ensure a host is absent
cs_host:
name: pod01.zone01.example.com
zone: zone01
state: absent
delegate_to: localhost
Возвращаемые значения
Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращено | Описание |
|---|---|---|
| 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 |
Статус
- Данный модуль не гарантирует обратную совместимость интерфейса. [preview]
- Этот модуль поддерживается сообществом 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.8/modules/cs_host_module.html