rax – создание/удаление экземпляра в Rackspace Public Cloud
Описание
- создаёт/удаляет экземпляр Rackspace Public Cloud и, по желанию, ждёт, пока он станет «запущенным».
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- pyrax
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_key - | Ключ API Rackspace, переопределяет credentials. псевдонимы: password | |
| auth_endpoint - добавлено в 1.5 | По умолчанию: "https://identity.api.rackspacecloud.com/v2.0/" | URI сервиса аутентификации. |
| auto_increment boolean добавлено в 1.5 |
| Увеличивать ли автоматически одно число с именем созданных серверов. Применимо только при использовании атрибута group или ключа meta. |
| boot_from_volume boolean добавлено в 1.9 |
| Загружать ли экземпляр с тома Cloud Block Storage. Если yes и задан image, новый том будет создан во время запуска. boot_volume_size требуется при использовании image для создания нового тома во время запуска. |
| boot_volume - добавлено в 1.9 | Идентификатор или имя тома Cloud Block Storage, используемого в качестве загрузочного тома экземпляра. | |
| boot_volume_size - добавлено в 1.9 | По умолчанию: 100 | Размер тома в гигабайтах. Требуется только при использовании image и boot_from_volume. |
| boot_volume_terminate boolean добавлено в 1.9 |
| Будет ли boot_volume или недавно созданный том из image удален при удалении сервера. |
| config_drive boolean добавлено в 1.7 |
| Подключить только для чтения том конфигурации к серверу как метка config-2 |
| count - добавлено в 1.4 | По умолчанию: 1 | количество запускаемых экземпляров |
| count_offset - добавлено в 1.4 | По умолчанию: 1 | номер для начала подсчета |
| credentials - | Файл для поиска учетных данных 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 boolean добавлено в 1.4 |
| Явно гарантировать точное количество экземпляров, используется со state=active/present. Если задано yes и count меньше, чем совпавшие серверы, серверы будут удалены, чтобы соответствовать счету. Если количество совпавших серверов меньше, чем задано в count, будут добавлены дополнительные серверы. |
| extra_client_args - добавлено в 1.6 | Словарь пар «ключ-значение», используемых при создании клиента cloudservers. Это считается продвинутым вариантом, используйте его разумно и с осторожностью. | |
| extra_create_args - добавлено в 1.6 | Словарь пар «ключ-значение», используемых при создании нового сервера. Это считается продвинутым вариантом, используйте его разумно и с осторожностью. | |
| files - | Файлы для вставки в экземпляр. remotefilename:localcontent | |
| flavor - | Используемый flavor для экземпляра. | |
| group - добавлено в 1.4 | Группа хостов, которая должна быть назначена серверу. Также используется для идемпотентных операций, чтобы гарантировать определенное количество экземпляров. | |
| identity_type - добавлено в 1.5 | По умолчанию: "rackspace" | Используемый механизм аутентификации, например rackspace или keystone. |
| image - | Используемый image для экземпляра. Может быть id, human_id или name. При использовании boot_from_volume, с этим image будет создан том Cloud Block Storage. | |
| instance_ids - добавлено в 1.4 | Список идентификаторов экземпляров. В настоящее время используется только при state='absent' для удаления экземпляров. | |
| key_name - | Используемая пара ключей на экземпляре. псевдонимы: keypair | |
| meta - | Словарь метаданных, которые следует связать с экземпляром. | |
| name - | Имя, которое нужно дать экземпляру. | |
| networks - добавлено в 1.4 | По умолчанию: ["public", "private"] | Сеть, к которой должны быть подключены экземпляры. Если указано, вы должны указать ВСЕ сети, включая интерфейсы public и 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 boolean |
| Ожидать, пока экземпляр перейдет в состояние 'running', перед возвратом |
| wait_timeout - | По умолчанию: 300 | Время ожидания в секундах, прежде чем ожидание будет прервано |
Примечания
Примечание
-
exact_count может быть «деструктивным», если количество работающих серверов в группе group больше, чем указано в 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
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Jesse Keating (@omgjlk)
- 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.7/modules/rax_module.html