cs_volume – Управляет томами в облаках на основе Apache CloudStack
Обзор
- Создавать, удалять, подключать, отключать, извлекать или загружать тома.
Требования
Ниже приведены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- cs >= 0.6.10
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| account строка | Аккаунт, к которому относится том. | |
| api_http_method строка |
| 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, см. также заметки. | |
| custom_id строка | Пользовательский идентификатор ресурса. Разрешено только для администраторов Root. | |
| device_id целое число | ID устройства на виртуальной машине, к которому прикреплён том. Учитывается только если state равен attached. | |
| disk_offering строка | Имя предлагаемого диска. Требуется один из disk_offering, snapshot, если состояние тома не state=present. | |
| display_volume логическое значение |
| Отображать ли том конечному пользователю. Разрешено только для администраторов Root. |
| domain строка | Имя домена, в котором должен быть развернут том. | |
| force логическое значение |
| Принудительно удалить том, даже если он прикреплён к виртуальной машине. Учитывается только при state=absent. |
| format строка добавлен в 2.8 |
| Формат тома. Учитывается только если state=uploaded. |
| max_iops целое число | Максимальное количество операций ввода-вывода в секунду. | |
| min_iops целое число | Минимальное количество операций ввода-вывода в секунду. | |
| mode строка добавлен в 2.8 |
| Режим извлечения тома. Учитывается только если state=extracted. |
| name строка / обязательно | Имя тома.
name может содержать только ASCII буквы. | |
| poll_async логическое значение |
| Ожидать завершения асинхронной задачи. |
| project строка | Имя проекта, в котором должен быть развернут том. | |
| shrink_ok логическое значение |
| Разрешить уменьшение размера тома. |
| size целое число | Размер диска в ГБ | |
| snapshot строка | Имя снимков для диска. Требуется один из disk_offering, snapshot, если состояние тома не state=present. | |
| state строка |
| Состояние тома. Варианты extracted и uploaded были добавлены в версии 2.8. |
| tags список добавлен в 2.4 | Список тегов. Теги — это список словарей, имеющих ключи key и value. Для удаления всех тегов установите пустой список, например, tags: []. псевдонимы: tag | |
| url строка добавлен в 2.8 | URL, на который будет извлечён том при state=extracted
или URL для загрузки тома при state=uploaded. Учитывается только если state равен extracted или uploaded. | |
| vm строка | Имя виртуальной машины, к которой необходимо прикрепить том. | |
| 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: create volume within project and zone with specified storage options
cs_volume:
name: web-vm-1-volume
project: Integration
zone: ch-zrh-ix-01
disk_offering: PerfPlus Storage
size: 20
delegate_to: localhost
- name: create/attach volume to instance
cs_volume:
name: web-vm-1-volume
disk_offering: PerfPlus Storage
size: 20
vm: web-vm-1
state: attached
delegate_to: localhost
- name: detach volume
cs_volume:
name: web-vm-1-volume
state: detached
delegate_to: localhost
- name: remove volume
cs_volume:
name: web-vm-1-volume
state: absent
delegate_to: localhost
# New in version 2.8
- name: Extract DATA volume to make it downloadable
cs_volume:
state: extracted
name: web-vm-1-volume
register: data_vol_out
delegate_to: localhost
- name: Create new volume by downloading source volume
cs_volume:
state: uploaded
name: web-vm-1-volume-2
format: VHD
url: "{{ data_vol_out.url }}"
delegate_to: localhost
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| attached строка | успех | Дата подключения тома. Пример: 2014-12-01T14:57:57+0100 |
| created строка | успех | Дата создания тома. Пример: 2014-12-01T14:57:57+0100 |
| device_id целое число | успех | Идентификатор устройства на виртуальной машине пользователя, к которому подключен том (не возвращается при отключении). Пример: 1 |
| display_name строка | успех | Отображаемое имя тома. Пример: web-volume-01 |
| domain строка | успех | Домен, к которому принадлежит том. Пример: example domain |
| group строка | успех | Группа, к которой принадлежит том. Пример: web |
| id строка | успех | Идентификатор тома. |
| name строка | успех | Имя тома. Пример: web-volume-01 |
| project строка | успех | Проект, к которому принадлежит том. Пример: Production |
| size целое число | успех | Размер диска тома. Пример: 20 |
| state строка | успех | Состояние тома Пример: Подключен |
| type строка | успех | Тип диска тома. Пример: DATADISK |
| url строка добавлен в 2.8 | успех, когда state=extracted | URL загруженного тома или URL для скачивания, в зависимости от режима извлечения. Пример: http://1.12.3.4/userdata/387e2c7c-7c42-4ecc-b4ed-84e8367a1965.vhd |
| vm строка | успех | Имя виртуальной машины, к которой подключен том (не возвращается при отключении). Пример: web-01 |
| zone строка | успех | Имя зоны, в которой находится том. Пример: ch-gva-2 |
Статус
- Изменения интерфейса этого модуля гарантированно будут совместимы со старыми версиями. [stableinterface]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Jefferson Girão (@jeffersongirao)
- 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.9/modules/cs_volume_module.html