openstack.cloud.quota – Управление квотами OpenStack
Примечание
Этот плагин входит в состав коллекции openstack.cloud (версия 1.2.1).
Для его установки используйте: ansible-galaxy collection install openstack.cloud.
Чтобы использовать его в книге задач, укажите: openstack.cloud.quota.
Обзор
- Управление квотами OpenStack. С помощью этого модуля можно создавать, обновлять или удалять квоты. Квота будет обновлена, если соответствует существующему проекту и присутствует.
Требования
Ниже приведены требования, необходимые на хосте, на котором выполняется этот модуль.
- keystoneauth1 >= 3.4.0
- openstacksdk >= 0.12.0
- openstacksdk >= 0.13.0
- python >= 3.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_timeout целое число | Сколько времени (в секундах) должно ждать сокетное подключение перед таймаутом для API-запросов. Если это значение опущено, в библиотеку запросов ничего не будет передано. | |
| auth словарь | Словарь, содержащий информацию об авторизации, необходимую стратегии подключаемого модуля авторизации облака. Для стандартного подключаемого модуля password, он должен содержать auth_url, username, password, project_name и любую информацию о доменных именах (например, user_domain_name или project_domain_name), если облако их поддерживает. Для других подключаемых модулей, этот параметр должен содержать необходимые параметры соответствующего подключаемого модуля авторизации. Этот параметр не нужен, если указано имя облака или присутствуют переменные окружения OpenStack OS_*. | |
| auth_type строка | Имя подключаемого модуля авторизации для использования. Если облако использует что-то кроме аутентификации по паролю, здесь следует указать имя подключаемого модуля, и содержимое параметра auth должно быть соответствующим образом обновлено. | |
| availability_zone строка | Игнорируется. Присутствует для обратной совместимости. | |
| backup_gigabytes целое число | Максимальный размер резервных копий в ГБ. | |
| backups целое число | Максимальное количество разрешенных резервных копий. | |
| ca_cert строка | Путь к сертификату CA, который может использоваться для проверки SSL API-запросов. псевдонимы: cacert | |
| client_cert строка | Путь к клиенту сертификату для использования в рамках SSL транзакции. псевдонимы: cert | |
| client_key строка | Путь к ключу клиента для использования в рамках SSL транзакции. псевдонимы: key | |
| 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_types словарь | Квоты хранилища объёмов на драйвер. Ключи должны начинаться со значения gigabytes_, значения должны быть целыми числами. | |
| injected_file_size целое число | Максимальный размер файла в байтах. | |
| injected_files целое число | Количество разрешённых файлов, которые могут быть внедрены. | |
| injected_path_size целое число | Максимальный размер пути. | |
| instances целое число | Максимальное количество разрешенных экземпляров. | |
| interface строка |
| Тип URL конечной точки для извлечения из каталога сервисов. псевдонимы: endpoint_type |
| key_pairs целое число | Количество разрешённых пар ключей. | |
| loadbalancer целое число | Количество разрешённых балансировщиков нагрузки. | |
| name строка / обязательно | Имя OpenStack проекта для управления. | |
| network целое число | Количество разрешенных сетей. | |
| per_volume_gigabytes целое число | Максимальный размер отдельных томов в ГБ. | |
| pool целое число | Количество пулов балансировщиков нагрузки для разрешения. | |
| port целое число | Количество разрешённых сетевых портов, которое должно быть больше, чем ограничение для экземпляров. | |
| project целое число | Не используется, сохраняется для совместимости. | |
| properties целое число | Количество разрешённых свойств. | |
| ram целое число | Максимальный объём оперативной памяти в МБ для разрешения. | |
| rbac_policy целое число | Количество разрешённых политик. | |
| region_name строка | Имя региона. | |
| router целое число | Количество разрешённых маршрутизаторов. | |
| security_group целое число | Количество разрешённых групп безопасности. | |
| security_group_rule целое число | Количество правил на группу безопасности для разрешения. | |
| server_group_members целое число | Количество разрешённых членов группы серверов. | |
| server_groups целое число | Количество разрешённых групп серверов. | |
| snapshots целое число | Количество разрешённых снимков. | |
| snapshots_types словарь | Квоты снимков томов на драйвер. Ключи должны начинаться со значения snapshots_, значения должны быть целыми числами. | |
| state строка |
| Значение present устанавливает квоту, а значение absent сбрасывает квоту до системных значений по умолчанию. |
| subnet целое число | Количество разрешённых подсетей. | |
| subnetpool целое число | Количество разрешённых пулов подсетей. | |
| timeout целое число | Значение по умолчанию: 180 | Сколько времени Ansible должно ждать запрашиваемого ресурса. |
| validate_certs булево |
| Нужно ли проверять SSL API-запросы. До Ansible 2.3 это имело значение по умолчанию yes.псевдонимы: verify |
| volumes целое число | Количество разрешённых томов. | |
| volumes_types словарь | Квоты количества томов на драйвер. Ключи должны начинаться со значения gigabytes_, значения должны быть целыми числами. | |
| wait булево |
| Должен ли Ansible ждать завершения запрашиваемого ресурса. |
Примечания
Примечание
- Стандартные переменные окружения OpenStack, такие как
OS_USERNAME, могут использоваться вместо явных значений. - Информация об авторизации управляется openstacksdk, что означает, что значения могут поступать из файла конфигурации yaml в /etc/ansible/openstack.yaml, /etc/openstack/clouds.yaml или ~/.config/openstack/clouds.yaml, затем из стандартных переменных окружения, а затем, наконец, из явных параметров в задачах. Более подробную информацию можно найти по адресу https://docs.openstack.org/openstacksdk/
Примеры
# List a Project Quota
- openstack.cloud.quota:
cloud: mycloud
name: demoproject
# Set a Project back to the defaults
- openstack.cloud.quota:
cloud: mycloud
name: demoproject
state: absent
# Update a Project Quota for cores
- openstack.cloud.quota:
cloud: mycloud
name: demoproject
cores: 100
# Update a Project Quota
- openstack.cloud.quota:
name: demoproject
cores: 1000
volumes: 20
volumes_type:
- volume_lvm: 10
# Complete example based on list of projects
- name: Update quotas
openstack.cloud.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': {'compute': {'cores': 150, 'fixed_ips': -1, 'floating_ips': 10, 'injected_file_content_bytes': 10240, 'injected_file_path_bytes': 255, 'injected_files': 5, 'instances': 100, 'key_pairs': 100, 'metadata_items': 128, 'ram': 153600, 'security_group_rules': 20, 'security_groups': 10, 'server_group_members': 10, 'server_groups': 10}, 'network': {'floatingip': 50, 'loadbalancer': 10, 'network': 10, 'pool': 10, 'port': 160, 'rbac_policy': 10, 'router': 10, 'security_group': 10, 'security_group_rule': 100, 'subnet': 10, 'subnetpool': -1}, 'volume': {'backup_gigabytes': 1000, 'backups': 10, 'gigabytes': 1000, 'gigabytes_lvm': -1, 'per_volume_gigabytes': -1, 'snapshots': 10, 'snapshots_lvm': -1, 'volumes': 10, 'volumes_lvm': -1}}} |
Авторы
- OpenStack Ansible SIG
© 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/openstack/cloud/quota_module.html