openstack.cloud.os_quota – Управление квотами OpenStack
Примечание
Этот плагин входит в коллекцию openstack.cloud (версия 1.2.1).
Для его установки используйте: ansible-galaxy collection install openstack.cloud.
Для использования в книге задач укажите: openstack.cloud.os_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_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–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/openstack/cloud/os_quota_module.html