Spec-Zone.ru › Ansible 2.8

cs_template – Управляет шаблонами на облаках Apache CloudStack

Новая в версии 2.0.

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус

Описание

  • Регистрация шаблонов из URL.
  • Создание шаблонов из корневого тома остановленной виртуальной машины или её снимка.
  • Обновление (с версии 2.7), извлечение и удаление шаблонов.

Требования

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

  • python >= 2.6
  • cs >= 0.6.10

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
account
строка
Аккаунт, к которому относится шаблон, снимок или виртуальная машина.
api_http_method
строка
    Варианты:
  • get
  • post
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, см. примечания.
bits
целое число
    Варианты:
  • 32
  • 64 ←
Поддержка 32 или 64 бит.
checksum
строка
Значение контрольной суммы MD5 этого шаблона.
Если задано, поиск производится по контрольной сумме вместо имени.
cross_zones
логическое значение
    Варианты:
  • нет ←
  • да
Синхронизировать или удалить шаблон по всем зонам.
Используется только если state равно present или absent.
details
строка
Детали шаблона в виде пар ключ/значение.
display_text
строка
Текст отображения шаблона.
domain
строка
Домен, к которому относится шаблон, снимок или виртуальная машина.
format
строка
    Варианты:
  • QCOW2
  • RAW
  • VHD
  • OVA
Формат шаблона.
Учитывается только если state=present.
hypervisor
строка
Название гипервизора, который будет использоваться для создания нового шаблона.
Актуально при использовании state=present.
Возможные значения: KVM, VMware, BareMetal, XenServer, LXC, HyperV, UCS, OVM, Simulator.
is_dynamically_scalable
логическое значение
    Варианты:
  • нет
  • да
Зарегистрировать шаблон, у которого установлены инструменты XS/VMWare, чтобы поддерживать динамическое масштабирование ЦП/памяти VM.
Используется только если state равно present.
is_extractable
логическое значение
    Варианты:
  • нет
  • да
Разрешает извлечение шаблона или его производных.
is_featured
логическое значение
    Варианты:
  • нет
  • да
Зарегистрировать шаблон для отображения.
Используется только если state равно present.
is_public
логическое значение
    Варианты:
  • нет
  • да
Зарегистрировать шаблон, который будет доступен всем пользователям.
Используется только если state равно present.
is_ready
логическое значение
    Варианты:
  • нет
  • да
Примечание: этот флаг не был реализован и поэтому помечен как устаревший.
Устаревший, будет удален в версии 2.11.
is_routing
логическое значение
    Варианты:
  • нет
  • да
Устанавливает тип шаблона как маршрутизируемый, т.е. если шаблон используется для развертывания маршрутизаторов.
Учитывается только если используется url.
mode
строка
    Варианты:
  • http_download ←
  • ftp_upload
Режим извлечения шаблона.
Используется только если state=extracted.
name
строка / обязательно
Имя шаблона.
os_type
строка
Тип ОС, наилучшим образом представляющий ОС этого шаблона.
password_enabled
логическое значение
    Варианты:
  • нет
  • да
Включить поддержку сброса пароля шаблона.
poll_async
логическое значение
    Варианты:
  • нет
  • да ←
Проверить асинхронные задачи до завершения.
project
строка
Имя проекта, в котором будет зарегистрирован шаблон.
requires_hvm
логическое значение
    Варианты:
  • нет
  • да
Требуется HVM или нет.
Учитывается только при создании шаблона.
snapshot
строка
Имя снимка, созданного из корневого тома VM, из которого будет создан шаблон.
vm требуется вместе с этим аргументом.
sshkey_enabled
логическое значение
    Варианты:
  • нет
  • да
Истина, если шаблон поддерживает функцию загрузки ключа ssh.
Учитывается только если используется url (ограничение API).
state
строка
    Варианты:
  • наличие ←
  • отсутствие
  • извлечение
Состояние шаблона.
tags
список
добавлено в 2.4
Список тегов. Теги — список словарей с ключами key и value.
Для удаления всех тегов установите пустой список, например, tags: [].

псевдонимы: тег
template_filter
строка
    Варианты:
  • все
  • выделенные
  • собственный ←
  • собственный исполняемый
  • совместный исполняемый
  • исполняемый
  • сообщество
Имя фильтра, используемого для поиска шаблона.
Фильтр all был добавлен в 2.7.
template_find_options
список
добавлено в 2.7
    Варианты:
  • display_text
  • checksum
  • cross_zones
По умолчанию:
[]
Параметры для уникальной идентификации шаблона.
Допускается несколько значений.

псевдонимы: template_find_option
template_tag
строка
Тег для данного шаблона.
url
строка
URL расположения шаблона при state=present.
URL, на который будет произведён экстракт шаблона при state=extracted.
Взаимоисключающее с vm.
vm
строка
Имя ВМ, шаблон будет создан из её тома или альтернативно из моментального снимка.
ВМ должна быть остановлена, если создаётся из тома.
Взаимоисключающее с url.
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: register a systemvm template
  cs_template:
    name: systemvm-vmware-4.5
    url: "http://packages.shapeblue.com/systemvmtemplate/4.5/systemvm64template-4.5-vmware.ova"
    hypervisor: VMware
    format: OVA
    cross_zones: yes
    os_type: Debian GNU/Linux 7(64-bit)
  delegate_to: localhost

- name: Create a template from a stopped virtual machine's volume
  cs_template:
    name: Debian 9 (64-bit) 20GB ({{ ansible_date_time.date }})
    vm: debian-9-base-vm
    os_type: Debian GNU/Linux 9 (64-bit)
    zone: tokio-ix
    password_enabled: yes
    is_public: yes
  delegate_to: localhost

# Note: Use template_find_option(s) when a template name is not unique
- name: Create a template from a stopped virtual machine's volume
  cs_template:
    name: Debian 9 (64-bit)
    display_text: Debian 9 (64-bit) 20GB ({{ ansible_date_time.date }})
    template_find_option: display_text
    vm: debian-9-base-vm
    os_type: Debian GNU/Linux 9 (64-bit)
    zone: tokio-ix
    password_enabled: yes
    is_public: yes
  delegate_to: localhost

- name: create a template from a virtual machine's root volume snapshot
  cs_template:
    name: Debian 9 (64-bit) Snapshot ROOT-233_2015061509114
    snapshot: ROOT-233_2015061509114
    os_type: Debian GNU/Linux 9 (64-bit)
    zone: tokio-ix
    password_enabled: yes
    is_public: yes
  delegate_to: localhost

- name: Remove a template
  cs_template:
    name: systemvm-4.2
    cross_zones: yes
    state: absent
  delegate_to: localhost

Возвращаемые значения

Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:

Ключ Возвращаемое значение Описание
account
строка
успех
Аккаунт, к которому относится шаблон.

Пример:
example account
checksum
строка
если доступно
MD5 контрольная сумма шаблона.

Пример:
0b31bccccb048d20b551f70830bb7ad0
created
строка
успех
Дата регистрации.

Пример:
2015-03-29T14:57:06+0200
cross_zones
логическое значение
если доступно
true, если шаблон управляется во всех зонах, иначе false.

display_text
строка
если доступно
Текст для отображения шаблона.

Пример:
Debian 7.7 64-bit minimal 2015-03-19
domain
строка
успех
Домен, к которому относится шаблон.

Пример:
example domain
format
строка
если доступно
Формат шаблона.

Пример:
OVA
hypervisor
строка
если доступно
Гипервизор, связанный с этим шаблоном.

Пример:
VMware
id
строка
успех
UUID шаблона или извлеченного объекта.

Пример:
a6f7a5fc-43f8-11e5-a151-feff819cdc9f
is_extractable
логическое значение
если доступно
True, если шаблон можно извлечь.

Пример:
True
is_featured
логическое значение
если доступно
True, если шаблон выделен.

Пример:
True
is_public
логическое значение
если доступно
True, если шаблон общедоступен.

Пример:
True
is_ready
логическое значение
если доступно
True, если шаблон готов к развертыванию.

Пример:
True
mode
строка
в состоянии state=extracted
Режим извлечения

Пример:
http_download
name
строка
успех
Имя шаблона или извлеченного объекта.

Пример:
Debian 7 64-bit
os_type
строка
если доступно
Тип ОС.

Пример:
CentOS 6.5 (64-bit)
password_enabled
логическое значение
если доступно
True, если функция сброса пароля включена, иначе false.

project
строка
успех
Имя проекта, к которому относится шаблон.

Пример:
Production
sshkey_enabled
логическое значение
если доступно
true, если для шаблона включена sshkey, иначе false.

state
строка
в состоянии state=extracted
Состояние извлеченного шаблона

Пример:
DOWNLOAD_URL_CREATED
status
строка
успех
Статус шаблона или извлеченного объекта.

Пример:
Загрузка завершена
tags
список
если доступно
Список тегов ресурсов, связанных с шаблоном.

Пример:
[ { "key": "foo", "value": "bar" } ]
template_tag
строка
если доступно
Тег шаблона, связанный с этим шаблоном.

Пример:
special
template_type
строка
если доступно
Тип шаблона.

Пример:
USER
url
строка
в состоянии state=extracted
URL, по которому извлечен шаблон

Пример:
http://1.2.3.4/userdata/eb307f13-4aca-45e8-b157-a414a14e6b04.ova
zone
строка
успех
Название зоны, в которой зарегистрирован шаблон.

Пример:
zuerich


Статус

  • Этот модуль гарантированно не будет иметь обратной несовместимости в будущих изменениях. [stableinterface]
  • Этот модуль поддерживается сообществом 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_template_module.html

Spec-Zone.ru

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