rax - создание/удаление экземпляра в Rackspace Public Cloud
Краткое описание
- создает/удаляет экземпляр Rackspace Public Cloud и, необязательно, ожидает, пока он не станет «запущенным».
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- pyrax
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_key | Ключ API Rackspace, переопределяет credentials. Псевдонимы: пароль | |
| auth_endpoint (добавлен в 1.5) | Значение по умолчанию: https://identity.api.rackspacecloud.com/v2.0/ | URI службы аутентификации. |
| auto_increment (добавлен в 1.5) |
| Увеличивать ли автоматически число с именем созданных серверов. Применимо только при использовании атрибута group или метаключей. |
| boot_from_volume (добавлен в 1.9) |
| Загружать ли экземпляр с тома Cloud Block Storage. Если yes и указан параметр image, то новый том будет создан во время загрузки. Параметр boot_volume_size необходим при использовании параметра image для создания нового тома во время загрузки. |
| boot_volume (добавлен в 1.9) | ID или имя тома Cloud Block Storage, который следует использовать в качестве загрузочного тома экземпляра | |
| boot_volume_size (добавлен в 1.9) | Значение по умолчанию: 100 | Размер создаваемого тома в гигабайтах. Требуется только при использовании параметров image и boot_from_volume. |
| boot_volume_terminate (добавлен в 1.9) | Значение по умолчанию: нет | Будет ли boot_volume или созданный том из image удален при удалении сервера |
| config_drive (добавлен в 1.7) |
| Присоединить только для чтения том конфигурации к серверу как метка config-2 |
| count (добавлен в 1.4) | Значение по умолчанию: 1 | количество экземпляров для запуска |
| count_offset (добавлен в 1.4) | Значение по умолчанию: 1 | счет, с которого начинать |
| credentials | Значение по умолчанию: None | Файл для поиска учетных данных Rackspace. Игнорируется, если заданы параметры api_key и username. Псевдонимы: creds_file |
| disk_config (добавлен в 1.4) |
| Стратегия разбиения диска |
| env (добавлен в 1.5) | Настройка среды в ~/.pyrax.cfg, см. https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#pyrax-configuration. | |
| exact_count (добавлен в 1.4) |
| Явно обеспечить точное количество экземпляров, используется со state=active/present. Если указано yes, и count меньше, чем сопоставленных серверов, серверы будут удалены, чтобы соответствовать количеству. Если количество сопоставленных серверов меньше, чем указано в count, будут добавлены дополнительные серверы. |
| extra_client_args (добавлен в 1.6) | Хэш пар ключ/значение, используемый при создании клиента cloudservers. Это считается расширенным вариантом, используйте его с умом и осторожностью. | |
| extra_create_args (добавлен в 1.6) | Хэш пар ключ/значение, используемый при создании нового сервера. Это считается расширенным вариантом, используйте его с умом и осторожностью. | |
| files | Значение по умолчанию: None | Файлы для вставки в экземпляр. remotefilename:localcontent |
| flavor | Значение по умолчанию: None | Используемый тип экземпляра |
| group (добавлен в 1.4) | Группа хостов, назначаемая серверу, также используется для идемпотентных операций, чтобы обеспечить определенное количество экземпляров | |
| identity_type (добавлен в 1.5) | Значение по умолчанию: rackspace | Механизм аутентификации, например, rackspace или keystone. |
| image | Значение по умолчанию: None | Используемый образ для экземпляра. Может быть id, human_id или name. При использовании boot_from_volume, с этим образом будет создан том Cloud Block Storage. |
| instance_ids (добавлен в 1.4) | Список идентификаторов экземпляров, в настоящее время используется только при state='absent' для удаления экземпляров | |
| key_name | Значение по умолчанию: None | Используемая пара ключей на экземпляре Псевдонимы: keypair |
| meta | Значение по умолчанию: None | Хэш метаданных, ассоциированных с экземпляром |
| name | Значение по умолчанию: None | Имя, присваиваемое экземпляру |
| networks (добавлен в 1.4) | Значение по умолчанию: [u'public', u'private'] | Сеть, к которой присоединить экземпляры. Если указано, вы должны указать ВСЕ сети, включая общедоступный и частный интерфейсы. Может быть id или label. |
| region | Значение по умолчанию: DFW | Регион, в котором создать экземпляр. |
| state |
| Указывает желаемое состояние ресурса |
| tenant_id (добавлен в 1.5) | Идентификатор арендатора, используемый для аутентификации. | |
| tenant_name (добавлен в 1.5) | Имя арендатора, используемое для аутентификации. | |
| user_data (добавлен в 1.7) | Данные, которые необходимо загрузить на том конфигурации серверов. Этот параметр подразумевает config_drive. Может быть путём к файлу или строкой | |
| username | Имя пользователя Rackspace, переопределяет credentials. | |
| verify_ssl (добавлен в 1.5) | Требовать или нет проверку SSL для API-точек доступа. | |
| wait |
| ждать, пока экземпляр не перейдет в состояние «запущен» перед возвратом |
| wait_timeout | Значение по умолчанию: 300 | Время ожидания, в секундах, до отказа |
Примечания
Примечание
-
exact_count может быть «разрушительным», если количество работающих серверов в группе больше, чем указано в count. В таком случае, состояние фактически устанавливается в
absentи лишние серверы удаляются. В случае удаления возвращаемая структура данных будет иметьactionустановленным в значениеdelete, и самые старые серверы в группе будут удалены. - Можно использовать следующие переменные окружения:
RAX_USERNAME,RAX_API_KEY,RAX_CREDS_FILE,RAX_CREDENTIALS,RAX_REGION. -
RAX_CREDENTIALSиRAX_CREDS_FILEуказывают на файл с учетными данными, подходящий для pyrax. См. https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#authenticating -
RAX_USERNAMEиRAX_API_KEYисключают использование файла с учетными данными -
RAX_REGIONопределяет регион Rackspace Public Cloud (DFW, ORD, LON, ...)
Примеры
- name: Build a Cloud Server
gather_facts: False
tasks:
- name: Server build request
local_action:
module: rax
credentials: ~/.raxpub
name: rax-test1
flavor: 5
image: b11d9567-e412-4255-96b9-bd63ab23bcfe
key_name: my_rackspace_key
files:
/root/test.txt: /home/localuser/test.txt
wait: yes
state: present
networks:
- private
- public
register: rax
- name: Build an exact count of cloud servers with incremented names
hosts: local
gather_facts: False
tasks:
- name: Server build requests
local_action:
module: rax
credentials: ~/.raxpub
name: test%03d.example.org
flavor: performance1-1
image: ubuntu-1204-lts-precise-pangolin
state: present
count: 10
count_offset: 10
exact_count: yes
group: test
wait: yes
register: rax
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость интерфейса.
Автор
- Jesse Keating (@j2sol)
- Matt Martz (@sivel)
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/rax_module.html