Spec-Zone.ru › Ansible 2.11

community.general.rax – создание/удаление экземпляра в облаке Rackspace Public Cloud

Примечание

Этот плагин входит в состав коллекции community.general (версия 2.0.1).

Для его установки используйте: ansible-galaxy collection install community.general.

Для использования в книге задач укажите: community.general.rax.

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры

Описание

  • создает/удаляет экземпляр Rackspace Public Cloud и, необязательно, ожидает его перехода в состояние «запущен».

Требования

Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.

  • python >= 2.6
  • pyrax

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
api_key
строка
Ключ API Rackspace, переопределяет credentials.

псевдонимы: password
auth_endpoint
строка
URI службы аутентификации.
Если не указано, будет установлено значение https://identity.api.rackspacecloud.com/v2.0/
auto_increment
логическое
    Варианты:
  • нет
  • да ←
Устанавливать ли счётчик с именем созданного сервера. Применимо только при использовании атрибута group или ключа meta.
boot_from_volume
логическое
    Варианты:
  • нет ←
  • да
Загружать ли экземпляр с тома Cloud Block Storage. Если yes, и image указано, при загрузке будет создан новый том. boot_volume_size требуется вместе с image для создания нового тома при загрузке.
boot_volume
строка
ID или имя тома Cloud Block Storage для использования в качестве загрузочного тома экземпляра
boot_volume_size
целое число
Значение по умолчанию:
100
Размер создаваемого тома в гигабайтах. Требуется только вместе с image и boot_from_volume.
boot_volume_terminate
логическое
    Варианты:
  • нет ←
  • да
Удалить ли boot_volume или новый том, созданный из image, при удалении сервера
config_drive
логическое
    Варианты:
  • нет ←
  • да
Присоединить только для чтения том конфигурации к серверу как метку config-2
count
целое число
Значение по умолчанию:
1
количество запускаемых экземпляров
count_offset
целое число
Значение по умолчанию:
1
номер с которого начинать подсчёт
credentials
путь
Файл для поиска учетных данных Rackspace. Игнорируется, если указаны api_key и username.

псевдонимы: creds_file
disk_config
строка
    Варианты:
  • авто
  • ручной
Стратегия разбиения диска
Если не указано, предполагается значение auto.
env
строка
Настройка среды, как в ~/.pyrax.cfg, см. https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#pyrax-configuration.
exact_count
логическое
    Варианты:
  • нет ←
  • да
Явно обеспечить точное количество экземпляров, используется со state=active/present. Если указано как yes, и count меньше, чем совпадающие серверы, серверы будут удалены, чтобы соответствовать количеству. Если количество совпадающих серверов меньше, чем указано в count, будут добавлены дополнительные серверы.
extra_client_args
словарь
Хэш пар ключ/значение, которые будут использоваться при создании клиента cloudservers. Это считается расширенным вариантом, используйте его разумно и с осторожностью.
extra_create_args
словарь
Хэш пар ключ/значение, которые будут использоваться при создании нового сервера. Это считается расширенным вариантом, используйте его разумно и с осторожностью.
files
словарь
Файлы для вставки в экземпляр. remotefilename:localcontent
flavor
строка
тип экземпляра для использования
group
строка
группа хостов для назначения сервера, также используется для идемпотентных операций, чтобы гарантировать определённое количество экземпляров
identity_type
строка
Значение по умолчанию:
"rackspace"
Механизм аутентификации, например, rackspace или keystone.
image
строка
используемый образ для экземпляра. Может быть id, human_id или name. При boot_from_volume, будет создан том Cloud Block Storage с этим образом
instance_ids
список / элементы=строка
список id экземпляров, в настоящее время используется только при state='absent' для удаления экземпляров
key_name
строка
ключевая пара для использования на экземпляре

псевдонимы: keypair
meta
словарь
Хэш метаданных, которые нужно связать с экземпляром
name
строка
Имя, которое нужно присвоить экземпляру
networks
список / элементы=строка
Значение по умолчанию:
["public", "private"]
Сеть для подключения к экземплярам. Если указано, вы должны включить ВСЕ сети, включая публичные и частные интерфейсы. Может быть id или label.
region
строка
Регион для создания экземпляра.
state
строка
    Варианты:
  • present ←
  • absent
Указать желаемое состояние ресурса
tenant_id
строка
ID арендатора, используемый для аутентификации.
tenant_name
строка
Имя арендатора, используемое для аутентификации.
user_data
строка
Данные, которые нужно загрузить в том конфигурации серверов. Этот параметр подразумевает config_drive. Может быть путём к файлу или строкой
username
строка
Имя пользователя Rackspace, переопределяет credentials.
validate_certs
логическое
    Варианты:
  • нет
  • да
Требовать или нет проверку SSL API-точек доступа.

псевдонимы: verify_ssl
wait
логическое
    Варианты:
  • нет ←
  • да
подождать, пока экземпляр не перейдёт в состояние «запущен», прежде чем вернуть результат
wait_timeout
целое число
Значение по умолчанию:
300
время ожидания в секундах

Примечания

Примечание

  • exact_count может быть «разрушительным», если количество работающих серверов в группе больше, чем указано в count. В таком случае, state фактически устанавливается в 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 (@omgjlk)
  • Matt Martz (@sivel)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/rax_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API