os_quota - Управление квотами OpenStack
Новое в версии 2.3.
Обзор
- Управление квотами OpenStack. С помощью данного модуля можно создавать, обновлять или удалять квоты. Квота будет обновлена, если совпадает с существующим проектом и присутствует.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- openstacksdk
- openstacksdk >= 0.13.0
- python >= 2.7
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_timeout | Сколько времени (в секундах) уровень сокета должен ожидать перед истечением времени ожидания для вызовов API. Если этот параметр опущен, он не будет передан в библиотеку запросов. | |
| auth | Словарь, содержащий информацию об авторизации, необходимую для стратегии плагина авторизации облака. Для плагина по умолчанию (password), он должен содержать auth_url, username, password, project_name и любую информацию о доменах, если облако их поддерживает. Для других плагинов этот параметр должен содержать параметры, необходимые указанному плагину. Этот параметр не нужен, если указано имя облака или присутствуют переменные окружения OpenStack OS_*. | |
| auth_type | Имя используемого плагина авторизации. Если облако использует что-то другое, кроме аутентификации по паролю, здесь должно быть указано имя плагина, и содержимое параметра auth должно быть соответствующим образом обновлено. | |
| availability_zone | Игнорируется. Присутствует для обратной совместимости. | |
| backup_gigabytes | Максимальный размер резервных копий в ГБ. | |
| backups | Максимальное количество разрешённых резервных копий. | |
| cacert | Путь к пакету сертификатов CA, который может использоваться для проверки запросов API SSL. | |
| cert | Путь к клиенту сертификату для использования в рамках транзакции SSL. | |
| cloud | Имя облака или конфигурация облака для работы. Если cloud — строка, она ссылается на конфигурацию облака, определённую в файле OpenStack clouds.yaml. Предоставляет значения по умолчанию для auth и auth_type. Этот параметр не нужен, если задан auth или присутствуют переменные окружения OpenStack OS_*. Если cloud — словарь, он содержит полную конфигурацию облака, как в разделе clouds.yaml. | |
| cores | Максимальное количество процессоров на проект. | |
| fixed_ips | Количество статических IP-адресов для разрешения. | |
| floating_ips | Количество плавающих IP-адресов, разрешённых в Compute. Псевдонимы: compute_floating_ips | |
| floatingip | Количество плавающих IP-адресов для разрешения в сети. Псевдонимы: network_floating_ips | |
| gigabytes | Максимальный объём хранилища томов, разрешённый для проекта. | |
| gigabytes_lvm | Максимальный размер индивидуальных томов LVM в ГБ. | |
| injected_file_size | Максимальный размер файла в байтах. | |
| injected_files | Количество разрешенных файлов, которые можно ввести. | |
| injected_path_size | Максимальный размер пути. | |
| instances | Максимальное количество разрешённых виртуальных машин. | |
| interface (добавлено в 2.3) |
| Тип URL конечной точки для извлечения из каталога служб. Псевдонимы: endpoint_type |
| key | Путь к ключу клиента, который будет использоваться для транзакции SSL. | |
| key_pairs | Количество разрешенных пар ключей. | |
| loadbalancer (добавлено в 2.4) | Количество разрешенных балансировщиков нагрузки. | |
| name обязательно | Имя проекта OpenStack для управления. | |
| network | Количество разрешённых сетей. | |
| per_volume_gigabytes | Максимальный размер индивидуальных томов в ГБ. | |
| pool (добавлено в 2.4) | Количество разрешённых пулов балансировщиков нагрузки. | |
| port | Количество разрешенных сетевых портов, которое должно быть больше, чем лимит виртуальных машин. | |
| properties | Количество разрешённых свойств. | |
| ram | Максимальный объём оперативной памяти в МБ, разрешенный для выделения. | |
| rbac_policy | Количество разрешённых политик. | |
| region_name | Имя региона. | |
| router | Количество разрешённых маршрутизаторов. | |
| security_group | Количество разрешённых групп безопасности. | |
| security_group_rule | Количество правил на группу безопасности для разрешения. | |
| server_group_members | Количество разрешённых членов группы серверов. | |
| server_groups | Количество разрешённых групп серверов. | |
| snapshots | Количество разрешённых снимков. | |
| snapshots_lvm | Количество разрешённых снимков LVM. | |
| state | По умолчанию: "present" | Значение «present» устанавливает квоту, а значение «absent» сбрасывает квоту до значений по умолчанию. |
| subnet | Количество разрешенных подсетей. | |
| subnetpool | Количество разрешенных пулов подсетей. | |
| timeout | По умолчанию: 180 | Сколько времени Ansible будет ждать запрашиваемого ресурса. |
| verify bool |
| Должны ли запросы API SSL проверяться. До версии 2.3 по умолчанию было True. Псевдонимы: validate_certs |
| volumes | Количество разрешенных томов. | |
| volumes_lvm | Количество разрешенных томов LVM. | |
| wait bool |
| Должен ли Ansible ждать завершения запрашиваемого ресурса. |
Примечания
Примечание
- Можно использовать стандартные переменные окружения OpenStack, такие как
OS_USERNAME, вместо явного указания значений. - Информация об авторизации управляется os-client-config, что означает, что значения могут быть взяты из файла конфигурации yaml в /etc/ansible/openstack.yaml, /etc/openstack/clouds.yaml или ~/.config/openstack/clouds.yaml, затем из стандартных переменных окружения, а затем из явных параметров в задачах. Дополнительную информацию можно найти по адресу http://docs.openstack.org/developer/os-client-config
Примеры
# List a Project Quota
- os_quota:
cloud: mycloud
name: demoproject
# Set a Project back to the defaults
- os_quota:
cloud: mycloud
name: demoproject
state: absent
# Update a Project Quota for cores
- os_quota:
cloud: mycloud
name: demoproject
cores: 100
# Update a Project Quota
- os_quota:
name: demoproject
cores: 1000
volumes: 20
volumes_type:
- volume_lvm: 10
# Complete example based on list of projects
- name: Update quotas
os_quota:
name: "{{ item.name }}"
backup_gigabytes: "{{ item.backup_gigabytes }}"
backups: "{{ item.backups }}"
cores: "{{ item.cores }}"
fixed_ips: "{{ item.fixed_ips }}"
floating_ips: "{{ item.floating_ips }}"
floatingip: "{{ item.floatingip }}"
gigabytes: "{{ item.gigabytes }}"
injected_file_size: "{{ item.injected_file_size }}"
injected_files: "{{ item.injected_files }}"
injected_path_size: "{{ item.injected_path_size }}"
instances: "{{ item.instances }}"
key_pairs: "{{ item.key_pairs }}"
loadbalancer: "{{ item.loadbalancer }}"
per_volume_gigabytes: "{{ item.per_volume_gigabytes }}"
pool: "{{ item.pool }}"
port: "{{ item.port }}"
properties: "{{ item.properties }}"
ram: "{{ item.ram }}"
security_group_rule: "{{ item.security_group_rule }}"
security_group: "{{ item.security_group }}"
server_group_members: "{{ item.server_group_members }}"
server_groups: "{{ item.server_groups }}"
snapshots: "{{ item.snapshots }}"
volumes: "{{ item.volumes }}"
volumes_types:
volumes_lvm: "{{ item.volumes_lvm }}"
snapshots_types:
snapshots_lvm: "{{ item.snapshots_lvm }}"
gigabytes_types:
gigabytes_lvm: "{{ item.gigabytes_lvm }}"
with_items:
- "{{ projects }}"
when: item.state == "present"
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие являются полями, уникальными для этого модуля:
| Ключ | Возвращаемое значение | Описание | |
|---|---|---|---|
| openstack_quotas сложный | Независимо от того, были ли внесены изменения или нет | Словарь, описывающий квоту проекта. | |
| openstack_quotas | | ||
Статус
Этот модуль помечен как preview, что означает, что он не гарантирует обратную совместимость.
Техническое обслуживание
Этот модуль помечен как community, что означает, что его поддерживает сообщество Ansible. Более подробная информация см. в разделе Техническое обслуживание и поддержка модулей.
Для списка других модулей, также поддерживаемых сообществом Ansible, см. здесь.
Автор
- Майкл Гейл (gale.michael@gmail.com)
Подсказка
Если вы обнаружите какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/os_quota_module.html