google.cloud.gcp_compute_region_disk – Создаёт GCP RegionDisk
Примечание
Этот плагин входит в коллекцию google.cloud (версия 1.0.1).
Для его установки используйте: ansible-galaxy collection install google.cloud.
Для использования в playbook укажите: google.cloud.gcp_compute_region_disk.
Описание
- Постоянные диски — это долговременные устройства хранения данных, работающие аналогично физическим дискам в настольном компьютере или сервере. Compute Engine управляет оборудованием этих устройств для обеспечения избыточности данных и оптимизации производительности. Постоянные диски доступны в виде стандартных жёстких дисков (HDD) или твердотельных накопителей (SSD).
- Постоянные диски расположены независимо от ваших виртуальных машин, поэтому вы можете отсоединить или перенести постоянные диски, чтобы сохранить данные даже после удаления ваших виртуальных машин. Производительность постоянных дисков масштабируется автоматически с размером, поэтому вы можете изменить размер существующих постоянных дисков или добавить больше постоянных дисков в виртуальную машину, чтобы удовлетворить требования к производительности и объёму хранилища.
- Добавьте постоянный диск в вашу виртуальную машину, когда вам нужно надёжное и доступное хранилище с постоянными характеристиками производительности.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| auth_kind строка / обязательно |
| Тип используемых учетных данных. | |
| description строка | Необязательное описание этого ресурса. Укажите эту собственность при создании ресурса. | ||
| disk_encryption_key словарь | Шифрует диск с помощью предоставленного пользователем ключа шифрования. После шифрования диска с помощью предоставленного пользователем ключа, вы должны предоставить тот же ключ, если позже используете диск (например, для создания снимка диска или образа или для подключения диска к виртуальной машине). Ключи шифрования, предоставленные пользователем, не защищают доступ к метаданным диска. Если вы не предоставите ключ шифрования при создании диска, тогда диск будет зашифрован с помощью автоматически сгенерированного ключа, и вам не нужно предоставлять ключ для дальнейшего использования диска. | ||
| raw_key строка | Указывает 256-битный ключ шифрования, предоставленный пользователем, закодированный в RFC 4648 base64 для шифрования или расшифровки этого ресурса. | ||
| env_type строка | Указывает, в какой среде Ansible вы выполняете этот модуль. Это не должно устанавливаться, если вы не знаете, что делаете. Это изменяет только строку User Agent для всех запросов к API. | ||
| labels словарь | Метки, применяемые к этому диску. Список пар ключ-значение. | ||
| licenses список / элементы=строка | Любые соответствующие общедоступные лицензии. | ||
| name строка / обязательно | Имя ресурса. Предоставляется клиентом при создании ресурса. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. В частности, имя должно быть длиной от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы — дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом. | ||
| physical_block_size_bytes целое число | Физический размер блока постоянного диска в байтах. Если не указан в запросе, используется значение по умолчанию. В настоящее время поддерживаются размеры 4096 и 16384, в будущем могут быть добавлены другие размеры. Если запрашивается недопустимое значение, сообщение об ошибке укажет поддерживаемые значения для проекта вызывающего. | ||
| project строка | Проект Google Cloud Platform, который нужно использовать. | ||
| region строка / обязательно | Ссылка на регион, в котором находится диск. | ||
| replica_zones список / элементы=строка / обязательно | URL-адреса зон, в которые должен быть дублирован диск. | ||
| scopes список / элементы=строка | Массив используемых областей. | ||
| service_account_contents jsonarg | Содержание JSON-файла учетной записи службы, либо в словаре, либо в виде JSON-строки, представляющей его. | ||
| service_account_email строка | Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию. | ||
| service_account_file путь | Путь к файлу JSON учетной записи службы, если выбран тип serviceaccount. | ||
| size_gb целое число | Размер постоянного диска в ГБ. Вы можете указать это поле при создании постоянного диска, используя параметр sourceImage или sourceSnapshot, или указать его отдельно для создания пустого постоянного диска. Если вы указываете это поле вместе с sourceImage или sourceSnapshot, значение sizeGb должно быть не меньше размера sourceImage или размера снимка. | ||
| source_snapshot словарь | Исходный снимок, используемый для создания диска. Вы можете указать его как частичный или полный URL-адрес ресурса. Это поле представляет ссылку на ресурс снимка в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя-ресурса` к задаче gcp_compute_snapshot, а затем установить это поле source_snapshot в "{{ имя-ресурса }}" | ||
| source_snapshot_encryption_key словарь | Ключ шифрования, предоставленный пользователем, для исходного снимка. Требуется, если исходный снимок защищен ключом шифрования, предоставленным пользователем. | ||
| raw_key строка | Указывает 256-битный ключ шифрования, предоставленный пользователем, закодированный в RFC 4648 base64 для шифрования или расшифровки этого ресурса. | ||
| state строка |
| Нужно ли данному объекту существовать в GCP | |
| type строка | URL-адрес ресурса типа диска, описывающего тип диска, который следует использовать для создания диска. Укажите это при создании диска. | ||
Примечания
Примечание
- Ссылка на API: https://cloud.google.com/compute/docs/reference/rest/v1/regionDisks
- Добавление или изменение размера региональных постоянных дисков: https://cloud.google.com/compute/docs/disks/regional-persistent-disk
- для аутентификации можно установить service_account_file, используя переменную среды
gcp_service_account_file. - для аутентификации можно установить service_account_contents, используя переменную среды
GCP_SERVICE_ACCOUNT_CONTENTS. - для аутентификации можно установить service_account_email, используя переменную среды
GCP_SERVICE_ACCOUNT_EMAIL. - для аутентификации можно установить auth_kind, используя переменную среды
GCP_AUTH_KIND. - для аутентификации можно установить scopes, используя переменную среды
GCP_SCOPES. - Значения переменных среды будут использованы только в том случае, если значения в playbook не заданы.
- Параметры service_account_email и service_account_file взаимоисключающие.
Примеры
- name: create a region disk
google.cloud.gcp_compute_region_disk:
name: test_object
size_gb: 500
disk_encryption_key:
raw_key: SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0=
region: us-central1
replica_zones:
- https://www.googleapis.com/compute/v1/projects/google.com:graphite-playground/zones/us-central1-a
- https://www.googleapis.com/compute/v1/projects/google.com:graphite-playground/zones/us-central1-b
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие — поля, уникальные для этого модуля:
| Ключ | Возвращено | Описание | |
|---|---|---|---|
| creationTimestamp строка | успешно | Маркер создания в формате RFC3339. | |
| description строка | успешно | Необязательное описание этого ресурса. Укажите это свойство при создании ресурса. | |
| diskEncryptionKey сложное | успешно | Шифрует диск с помощью предоставленного клиентом ключа шифрования. После шифрования диска с использованием предоставленного клиентом ключа необходимо предоставить тот же ключ, если диск используется позже (например, для создания моментального снимка диска или образа, или для подключения диска к виртуальной машине). Ключи шифрования, предоставленные клиентом, не защищают доступ к метаданным диска. Если при создании диска ключ шифрования не предоставляется, диск будет зашифрован с помощью автоматически сгенерированного ключа, и предоставлять ключ для использования диска позже не нужно. | |
| rawKey строка | успешно | Указывает 256-битный ключ шифрования, предоставленный клиентом, закодированный в RFC 4648 base64 для шифрования или дешифрования этого ресурса. | |
| sha256 строка | успешно | RFC 4648 base64 закодированный хэш SHA-256 ключа шифрования, предоставленного клиентом, который защищает этот ресурс. | |
| id целое число | успешно | Уникальный идентификатор ресурса. | |
| labelFingerprint строка | успешно | Отпечаток, используемый для оптимистической блокировки этого ресурса. Используется во внутренних операциях обновления. | |
| labels словарь | успешно | Метки для применения к этому диску. Список пар ключ-значение. | |
| lastAttachTimestamp строка | успешно | Маркер последнего подключения в формате RFC3339. | |
| lastDetachTimestamp строка | успешно | Маркер последнего отсоединения в формате RFC3339. | |
| licenses список / элементы=строка | успешно | Любые применимые общедоступные лицензии. | |
| name строка | успешно | Имя ресурса. Предоставляется клиентом при создании ресурса. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. В частности, имя должно быть длиной от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы должны быть дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом. | |
| physicalBlockSizeBytes целое число | успешно | Физический размер блока постоянного диска в байтах. Если поле отсутствует в запросе, используется значение по умолчанию. В настоящее время поддерживаются размеры 4096 и 16384, в будущем могут быть добавлены и другие. Если запрашивается недопустимое значение, сообщение об ошибке будет содержать список поддерживаемых значений для проекта вызывающего. | |
| region строка | успешно | Ссылка на регион, в котором находится диск. | |
| replicaZones список / элементы=строка | успешно | URL-адреса зон, в которые должен быть реплицирован диск. | |
| sizeGb целое число | успешно | Размер постоянного диска в ГБ. Вы можете указать это поле при создании постоянного диска с использованием параметра sourceImage или sourceSnapshot, или указать его в отдельности для создания пустого постоянного диска. Если вы указываете это поле вместе с sourceImage или sourceSnapshot, значение sizeGb не должно быть меньше размера sourceImage или размера снимка. | |
| sourceSnapshot словарь | успешно | Исходный моментальный снимок, используемый для создания этого диска. Вы можете указать его как частичный или полный URL-адрес ресурса. | |
| sourceSnapshotEncryptionKey сложное | успешно | Ключ шифрования, предоставленный клиентом, для исходного моментального снимка. Требуется, если исходный моментальный снимок защищен ключом шифрования, предоставленным клиентом. | |
| rawKey строка | успешно | Указывает 256-битный ключ шифрования, предоставленный клиентом, закодированный в RFC 4648 base64 для шифрования или дешифрования этого ресурса. | |
| sha256 строка | успешно | RFC 4648 base64 закодированный хэш SHA-256 ключа шифрования, предоставленного клиентом, который защищает этот ресурс. | |
| sourceSnapshotId строка | успешно | Уникальный идентификатор моментального снимка, используемого для создания этого диска. Это значение идентифицирует точный моментальный снимок, который использовался для создания этого постоянного диска. Например, если постоянный диск был создан из моментального снимка, который был позже удален и воссоздан под тем же именем, идентификатор исходного моментального снимка определит точную версию моментального снимка, которая использовалась. | |
| type строка | успешно | URL-адрес ресурса типа диска, описывающий тип диска, который нужно использовать для создания диска. Укажите его при создании диска. | |
| users список / элементы=строка | успешно | Ссылки на пользователей диска (присоединенные экземпляры) в формате: project/zones/zone/instances/instance. | |
Авторы
- Google Inc. (@googlecloudplatform)
© 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/google/cloud/gcp_compute_region_disk_module.html