os_quota – Управление квотами OpenStack
Описание
- Управление квотами OpenStack. С помощью данного модуля можно создавать, обновлять или удалять квоты. Квота будет обновлена, если соответствует существующему проекту и присутствует.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- keystoneauth1 >= 3.4.0
- openstacksdk >= 0.12.0
- openstacksdk >= 0.13.0
- python >= 2.7
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_timeout целое число | Сколько времени должно ждать уровень сокета перед истечением времени ожидания для API-вызовов. Если это опущено, ничего не будет передано в библиотеку запросов. | |
| auth словарь | Словарь, содержащий информацию об авторизации, необходимую стратегии подключаемого модуля авторизации облака. Для плагина по умолчанию password, он будет содержать auth_url, username, password, project_name и любую информацию о доменах (например, os_user_domain_name или os_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. псевдонимы: network_floating_ips | |
| gigabytes - | Максимальный объем хранилища, разрешенный для проекта. | |
| gigabytes_lvm - | Максимальный размер отдельных LVM-томов в ГБ. | |
| injected_file_size - | Максимальный размер файла в байтах. | |
| injected_files - | Количество разрешенных файлов, введенных в систему. | |
| injected_path_size - | Максимальный размер пути. | |
| instances - | Максимальное количество разрешенных экземпляров. | |
| interface строка |
| Тип URL конечной точки для извлечения из каталога служб. псевдонимы: endpoint_type |
| 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 должно ждать запрашиваемый ресурс. |
| validate_certs логическое значение |
| Должны ли проверяться API-запросы SSL. В Ansible до версии 2.3 значение по умолчанию было yes.псевдонимы: verify |
| volumes - | Количество разрешенных томов. | |
| volumes_lvm - | Количество разрешенных LVM томов. |
| ожидание логическое |
| Должен ли 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
- 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': {'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}}} |
Статус
- Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Michael Gale (@mgale) <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.9/modules/os_quota_module.html