Spec-Zone.ru › Ansible 2.10

ngine_io.cloudstack.cs_template – Управляет шаблонами на основе Apache CloudStack.

Примечание

Этот плагин входит в состав коллекции ngine_io.cloudstack (версия 1.1.0).

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

Для использования в playbook, укажите: ngine_io.cloudstack.cs_template.

Новое в версии 0.1.0: из ngine_io.cloudstack

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

Обзор

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

Требования

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

  • python >= 2.6
  • cs >= 0.9.0

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
account
строка
Аккаунт, к которому относится шаблон, снимок или виртуальная машина.
api_http_method
строка
    Варианты:
  • get
  • post
HTTP-метод, используемый для запроса к API-точке входа.
Если не указано, используется переменная среды CLOUDSTACK_METHOD.
В качестве последнего варианта используется значение из файла конфигурации ini, см. также примечания.
Значение по умолчанию — get, если не указано.
api_key
строка
API-ключ API CloudStack.
Если не указано, используется переменная среды CLOUDSTACK_KEY.
В качестве последнего варианта используется значение из файла конфигурации ini, см. также примечания.
api_region
строка
Значение по умолчанию:
"cloudstack"
Имя раздела ini в файле cloustack.ini.
Если не указано, используется переменная среды CLOUDSTACK_REGION.
api_secret
строка
Секретный ключ API CloudStack.
Если не задано, используется переменная среды CLOUDSTACK_SECRET.
В качестве последнего варианта используется значение из файла конфигурации ini, см. также примечания.
api_timeout
целое число
Таймаут HTTP в секундах.
Если не указано, используется переменная среды CLOUDSTACK_TIMEOUT.
В качестве последнего варианта используется значение из файла конфигурации ini, см. также примечания.
Значение по умолчанию — 10 секунд, если не указано.
api_url
строка
URL API CloudStack, например, https://cloud.example.com/client/api.
Если не указано, используется переменная среды CLOUDSTACK_ENDPOINT.
В качестве последнего варианта используется значение из файла конфигурации ini, см. также примечания.
api_verify_ssl_cert
строка
Файл сертификата CA-авторитета.
Если не указано, используется переменная среды CLOUDSTACK_VERIFY.
В качестве последнего варианта используется значение из файла конфигурации ini, см. также примечания.
Значение по умолчанию — null, если не указано.
bits
целое число
    Варианты:
  • 32
  • 64
Значение по умолчанию:
64
Поддержка 32 или 64 бит.
checksum
строка
Значение контрольной суммы MD5 этого шаблона.
Если задано, поиск ведётся по контрольной сумме вместо имени.
cross_zones
логический тип
    Варианты:
  • нет ←
  • да
Указывает, должен ли шаблон синхронизироваться или удаляться между зонами.
Используется только если состояние равно present или absent.
details
строка
Детали шаблона в формате ключ/значение.
display_text
строка
Текст для отображения шаблона.
domain
строка
Домен, к которому относится шаблон, снимок или виртуальная машина.
format
строка
    Варианты:
  • QCOW2
  • RAW
  • VHD
  • OVA
Формат шаблона.
Учитывается только если состояние=присутствует.
hypervisor
строка
Имя гипервизора, который будет использоваться для создания нового шаблона.
Актуально при использовании состояние=присутствует.
Возможные значения: KVM, VMware, BareMetal, XenServer, LXC, HyperV, UCS, OVM, Simulator.
is_dynamically_scalable
логический тип
    Варианты:
  • нет
  • да
Зарегистрировать шаблон с установленным XS/VMware tools для поддержки динамического масштабирования ЦП/памяти виртуальной машины.
Используется только если состояние равно present.
is_extractable
логический тип
    Варианты:
  • нет
  • да
Разрешает извлечение шаблона или его производных.
is_featured
логический тип
    Варианты:
  • нет
  • да
Зарегистрировать шаблон для отображения.
Используется только если состояние равно present.
is_public
логический тип
    Варианты:
  • нет
  • да
Зарегистрировать шаблон как общедоступный для всех пользователей.
Используется только если состояние равно present.
is_routing
логический тип
    Варианты:
  • нет
  • да
Устанавливает тип шаблона как маршрутизируемый, т.е. если шаблон используется для развертывания маршрутизаторов.
Учитывается только если используется url.
mode
строка
    Варианты:
  • http_download ←
  • ftp_upload
Режим извлечения шаблона.
Используется только если состояние=извлечено.
name
строка / обязательно
Имя шаблона.
os_type
строка
Тип ОС, наилучшим образом представляющий ОС этого шаблона.
password_enabled
логический тип
    Варианты:
  • нет
  • да
Включить поддержку сброса пароля шаблона.
poll_async
логический тип
    Варианты:
  • нет
  • да ←
Проверить асинхронные задачи до завершения.
project
строка
Имя проекта, в котором будет зарегистрирован шаблон.
requires_hvm
логический тип
    Варианты:
  • нет
  • да
Требуется ли шаблон HVM.
Учитывается только при создании шаблона.
snapshot
строка
Имя снимка, созданного из корневого тома виртуальной машины, из которого будет создан шаблон.
vm требуется вместе с этим аргументом.
sshkey_enabled
логический тип
    Варианты:
  • нет
  • да
Истина, если шаблон поддерживает функцию загрузки sshkey.
Учитывается только если используется url (ограничение API).
state
строка
    Варианты:
  • присутствует ←
  • отсутствует
  • извлечён
Состояние шаблона.
tags
список / элементы=словарь
Список тегов. Теги представляют собой список словарей, содержащих ключи ключ и значение.
Чтобы удалить все теги, задайте пустой список, например, теги: [].

псевдонимы: тег
template_filter
строка
    Варианты:
  • все
  • выделенные
  • текущий ←
  • самовыполняемый
  • совместно используемый
  • выполняемый
  • сообщество
Имя фильтра, используемого для поиска шаблона.
Фильтр all был добавлен в версии 2.7.
template_find_options
список / элементы=строка
    Варианты:
  • отображаемый текст
  • контрольная сумма
  • межзонный
Значение по умолчанию:
[]
Параметры для уникального поиска шаблона.
Разрешено несколько.

псевдонимы: параметр_поиска_шаблона
template_tag
строка
Тег для этого шаблона.
url
строка
URL, где размещён шаблон при состояние=присутствует.
URL, на который будет извлечён шаблон при состояние=извлечён.
Взаимоисключительно с 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
  ngine_io.cloudstack.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)

- name: Create a template from a stopped virtual machine's volume
  ngine_io.cloudstack.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


# Note: Use template_find_option(s) when a template name is not unique
- name: Create a template from a stopped virtual machine's volume
  ngine_io.cloudstack.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

- name: create a template from a virtual machine's root volume snapshot
  ngine_io.cloudstack.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

- name: Remove a template
  ngine_io.cloudstack.cs_template:
    name: systemvm-4.2
    cross_zones: yes
    state: absent

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

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

Ключ Возвращаемое значение Описание
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
строка
успех
Домен, к которому относится шаблон.

Пример:
пример домена
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
строка
успех
Имя проекта, к которому относится шаблон.

Пример:
Производство
sshkey_enabled
логическое
если доступно
true, если шаблон поддерживает ssh-ключ, иначе 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


Авторы

  • 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.10/collections/ngine_io/cloudstack/cs_template_module.html

Spec-Zone.ru

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