Spec-Zone.ru › Ansible

Модуль google.cloud.gcp_compute_disk — Создание диска GCP

Примечание

Этот модуль является частью коллекции google.cloud (версия 1.4.1).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install google.cloud. Для использования этого модуля необходимы дополнительные требования. Подробности см. в разделе Требования.

Для использования в плейбуке укажите: google.cloud.gcp_compute_disk.

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата

Обзор

  • Диски постоянного хранения — это долговременные устройства хранения данных, которые работают аналогично физическим дискам в настольном компьютере или сервере. Compute Engine управляет аппаратным обеспечением этих устройств, чтобы обеспечить избыточность данных и оптимизировать производительность. Диски постоянного хранения доступны как стандартные жесткие диски (HDD) или твердотельные накопители (SSD).
  • Диски постоянного хранения расположены независимо от ваших виртуальных машин, поэтому вы можете отсоединить или переместить диски постоянного хранения, чтобы сохранить данные даже после удаления ваших виртуальных машин. Производительность дисков постоянного хранения автоматически масштабируется по размеру, поэтому вы можете изменить размер существующих дисков постоянного хранения или добавить больше дисков постоянного хранения к виртуальной машине, чтобы удовлетворить требования к производительности и объёму хранилища.
  • Добавьте диск постоянного хранения к вашей виртуальной машине, когда вам нужно надежное и доступное хранилище с постоянными характеристиками производительности.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • python >= 2.6
  • requests >= 2.18.4
  • google-auth >= 1.3.0
END_OF_DOCUMENT_MARKER

Параметры

Параметр

Комментарии

access_token

строка

Токен доступа OAuth2, если тип учетных данных — accesstoken.

auth_kind

строка / обязательно

Тип используемых учетных данных.

Варианты:

  • "application"
  • "machineaccount"
  • "serviceaccount"
  • "accesstoken"

description

строка

Необязательное описание этого ресурса. Укажите это свойство при создании ресурса.

disk_encryption_key

словарь

Шифрует диск с помощью предоставленного пользователем ключа шифрования.

После шифрования диска с помощью предоставленного пользователем ключа, вам необходимо предоставить тот же ключ, если вы используете диск позже (например, для создания снимка диска или образа, или для подключения диска к виртуальной машине).

Ключи шифрования, предоставленные пользователем, не защищают доступ к метаданным диска.

Если вы не предоставляете ключ шифрования при создании диска, диск будет зашифрован с помощью автоматически сгенерированного ключа, и вам не нужно предоставлять ключ для последующего использования диска.

kms_key_name

строка

Имя ключа шифрования, хранящегося в Google Cloud KMS.

Учетная запись сервиса Compute Engine вашего проекта (`service-{{PROJECT_NUMBER}}@compute-system.iam.gserviceaccount.com`) должна иметь роль `roles/cloudkms.cryptoKeyEncrypterDecrypter` для использования этой функции.

kms_key_service_account

строка

Учетная запись сервиса, используемая для запроса шифрования для данного ключа KMS.

Если отсутствует, используется учетная запись сервиса Compute Engine Service Agent.

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 для использования.

provisioned_iops

целое число

Указывает, сколько IOPS должно быть выделено для диска.

scopes

список / элементы=строка

Массив используемых областей

service_account_contents

jsonarg

Содержимое файла JSON учетной записи сервиса, либо в виде словаря, либо в виде JSON-строки, его представляющей.

service_account_email

строка

Необязательный адрес электронной почты учетной записи сервиса, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию.

service_account_file

путь

Путь к файлу JSON учетной записи сервиса, если тип выбран как serviceaccount.

size_gb

целое число

Размер постоянного диска в ГБ. Вы можете указать это поле при создании постоянного диска, используя параметр sourceImage или sourceSnapshot, или указать его отдельно для создания пустого постоянного диска.

Если вы указываете это поле вместе с sourceImage или sourceSnapshot, значение sizeGb не должно быть меньше размера sourceImage или размера снимка.

END_OF_DOCUMENT_MARKER

source_image

string

Используемый в качестве исходного образа для создания диска. Если исходный образ удален, это поле не будет установлено.

Для создания диска с одним из публичных образов операционной системы укажите имя семейства образа. Например, укажите family/debian-9 для использования последнего образа Debian 9: projects/debian-cloud/global/images/family/debian-9 В качестве альтернативы используйте определённую версию публичного образа операционной системы: projects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD Для создания диска с частным образом, созданным вами, укажите имя образа в следующем формате: global/images/my-private-image Вы также можете указать частный образ по его семейству образов, что вернёт последнюю версию образа в этом семействе. Замените имя образа на family/family-name: global/images/family/my-private-family .

source_image_encryption_key

dictionary

Ключ шифрования, предоставленный клиентом, для исходного образа. Требуется, если исходный образ защищён ключом шифрования, предоставленным клиентом.

kms_key_name

string

Имя ключа шифрования, хранящегося в Google Cloud KMS.

kms_key_service_account

string

Учётная запись сервиса, используемая для запроса шифрования для данного ключа KMS.

Если отсутствует, используется учётная запись сервиса агента Compute Engine.

raw_key

string

Указывает 256-битный ключ шифрования, предоставленный клиентом, закодированный в RFC 4648 base64 для шифрования или дешифрования данного ресурса.

source_snapshot

dictionary

Исходный снимок, используемый для создания диска. Вы можете предоставить его как частичный, так и полный URL-адрес ресурса.

Это поле представляет ссылку на ресурс Snapshot в GCP. Его можно указать двумя способами. Во-первых, вы можете разместить словарь с ключом «selfLink» и значением selfLink вашего ресурса. В качестве альтернативы вы можете добавить `register: имя-ресурса` к задаче gcp_compute_snapshot, а затем установить это поле source_snapshot в «{{ имя-ресурса }}»

source_snapshot_encryption_key

dictionary

Ключ шифрования, предоставленный клиентом, для исходного снимка. Требуется, если исходный снимок защищён ключом шифрования, предоставленным клиентом.

kms_key_name

string

Имя ключа шифрования, хранящегося в Google Cloud KMS.

kms_key_service_account

string

Учётная запись сервиса, используемая для запроса шифрования для данного ключа KMS.

Если отсутствует, используется учётная запись сервиса агента Compute Engine.

raw_key

string

Указывает 256-битный ключ шифрования, предоставленный клиентом, закодированный в RFC 4648 base64 для шифрования или дешифрования данного ресурса.

state

string

Необходимо ли наличие данного объекта в GCP

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

type

string

URL ресурса типа диска, описывающего тип диска, который нужно использовать для создания диска. Укажите его при создании диска.

zone

string / обязательно

Ссылка на зону, в которой находится диск.

Примечания

Примечание

  • Ссылка на API: https://cloud.google.com/compute/docs/reference/v1/disks
  • Добавление постоянного диска: https://cloud.google.com/compute/docs/disks/add-persistent-disk
  • для аутентификации можно установить service_account_file с помощью переменной среды GCP_SERVICE_ACCOUNT_FILE.
  • для аутентификации можно установить service_account_contents с помощью переменной среды GCP_SERVICE_ACCOUNT_CONTENTS.
  • для аутентификации можно установить service_account_email с помощью переменной среды GCP_SERVICE_ACCOUNT_EMAIL.
  • для аутентификации можно установить access_token с помощью переменной среды GCP_ACCESS_TOKEN.
  • для аутентификации можно установить auth_kind с помощью переменной среды GCP_AUTH_KIND.
  • для аутентификации можно установить scopes с помощью переменной среды GCP_SCOPES.
  • Значения переменных среды будут использоваться только в том случае, если значения в плейбуке не заданы.
  • Параметры service_account_email и service_account_file взаимоисключающие.

Примеры

- name: create a disk
  google.cloud.gcp_compute_disk:
    name: test_object
    size_gb: 50
    disk_encryption_key:
      raw_key: SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0=
    zone: us-central1-a
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

Значения возврата

Общие значения возврата документированы здесь, следующие — поля, уникальные для данного модуля:

Ключ

Описание

creationTimestamp

строка

Маркер создания в формате RFC3339.

Возвращается: успех

description

строка

Необязательное описание этого ресурса. Укажите это свойство при создании ресурса.

Возвращается: успех

diskEncryptionKey

сложный

Шифрует диск с помощью предоставленного пользователем ключа шифрования.

После шифрования диска с помощью предоставленного пользователем ключа, вам необходимо предоставить тот же ключ, если вы в дальнейшем используете диск (например, для создания снимка диска или образа, или для подключения диска к виртуальной машине).

Ключи шифрования, предоставленные пользователем, не защищают доступ к метаданным диска.

Если вы не предоставите ключ шифрования при создании диска, то диск будет зашифрован с помощью автоматически сгенерированного ключа, и вам не нужно будет предоставлять ключ для дальнейшего использования диска.

Возвращается: успех

kmsKeyName

строка

Имя ключа шифрования, хранящегося в Google Cloud KMS.

Учетная запись службы Compute Engine вашего проекта (`service-{{PROJECT_NUMBER}}@compute-system.iam.gserviceaccount.com`) должна обладать ролью `roles/cloudkms.cryptoKeyEncrypterDecrypter`, чтобы использовать эту функцию.

Возвращается: успех

kmsKeyServiceAccount

строка

Учетная запись службы, используемая для запроса шифрования для данного ключа KMS.

Если отсутствует, используется учетная запись агента службы Compute Engine.

Возвращается: успех

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, в будущем могут быть добавлены другие размеры.

Если запрашивается недопустимое значение, сообщение об ошибке будет содержать список поддерживаемых значений для проекта вызывающей стороны.

Возвращается: успех

provisionedIops

целое число

Указывает, сколько IOPS должно быть выделено для диска.

Возвращается: успех

sizeGb

целое число

Размер постоянного диска в ГБ. Это поле можно указать при создании постоянного диска с параметрами sourceImage или sourceSnapshot, или указать его отдельно, чтобы создать пустой постоянный диск.

Если вы указываете это поле вместе с sourceImage или sourceSnapshot, значение sizeGb не должно быть меньше размера sourceImage или размера снимка.

Возвращается: успех

END_OF_DOCUMENT_MARKER

sourceImage

string

Используемый исходный образ для создания этого диска. Если исходный образ удалён, это поле не будет установлено.

Для создания диска с одним из общедоступных образов операционной системы укажите образ по его семейному имени. Например, укажите family/debian-9 для использования последнего образа Debian 9: projects/debian-cloud/global/images/family/debian-9 В качестве альтернативы используйте определённую версию общедоступного образа операционной системы: projects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD Для создания диска с частным образом, созданным вами, укажите имя образа в следующем формате: global/images/my-private-image Вы также можете указать частный образ по его семейному имени, что вернёт последнюю версию образа в этом семействе. Замените имя образа на family/family-name: global/images/family/my-private-family .

Возвращено: success

sourceImageEncryptionKey

complex

Предоставленный клиентом ключ шифрования исходного образа. Требуется, если исходный образ защищён предоставленным клиентом ключом шифрования.

Возвращено: success

kmsKeyName

string

Имя ключа шифрования, хранящегося в Google Cloud KMS.

Возвращено: success

kmsKeyServiceAccount

string

Учётная запись сервиса, используемая для запроса шифрования для данного ключа KMS.

При отсутствии используется учётная запись сервиса агента Compute Engine.

Возвращено: success

rawKey

string

Указывает 256-битный ключ шифрования, предоставленный клиентом, закодированный в RFC 4648 base64 для шифрования или расшифровки этого ресурса.

Возвращено: success

sha256

string

Закодированный в RFC 4648 base64 хэш SHA-256 предоставленного клиентом ключа шифрования, который защищает этот ресурс.

Возвращено: success

sourceImageId

string

Значение ID образа, используемого для создания этого диска. Это значение идентифицирует точный образ, который использовался для создания этого постоянного диска. Например, если вы создали постоянный диск из образа, который позже был удалён и воссоздан под тем же именем, ID исходного образа будет идентифицировать точную версию образа, которая использовалась.

Возвращено: success

sourceSnapshot

dictionary

Исходный снимок, использованный для создания этого диска. Вы можете предоставить его как частичный или полный URL-адрес к ресурсу.

Возвращено: success

sourceSnapshotEncryptionKey

complex

Предоставленный клиентом ключ шифрования исходного снимка. Требуется, если исходный снимок защищён предоставленным клиентом ключом шифрования.

Возвращено: success

kmsKeyName

string

Имя ключа шифрования, хранящегося в Google Cloud KMS.

Возвращено: success

kmsKeyServiceAccount

string

Учётная запись сервиса, используемая для запроса шифрования для данного ключа KMS.

При отсутствии используется учётная запись сервиса агента Compute Engine.

Возвращено: success

rawKey

string

Указывает 256-битный ключ шифрования, предоставленный клиентом, закодированный в RFC 4648 base64 для шифрования или расшифровки этого ресурса.

Возвращено: success

sha256

string

Закодированный в RFC 4648 base64 хэш SHA-256 предоставленного клиентом ключа шифрования, который защищает этот ресурс.

Возвращено: success

sourceSnapshotId

string

Уникальный ID снимка, используемого для создания этого диска. Это значение идентифицирует точный снимок, который использовался для создания этого постоянного диска. Например, если вы создали постоянный диск из снимка, который позже был удалён и воссоздан под тем же именем, ID исходного снимка будет идентифицировать точную версию снимка, которая использовалась.

Возвращено: success

type

string

URL ресурса типа диска, описывающий, какой тип диска использовать для создания диска. Укажите это при создании диска.

Возвращено: success

users

list / elements=string

Ссылки на пользователей диска (присоединённые экземпляры) в формате: project/zones/zone/instances/instance .

Возвращено: success

zone

string

Ссылка на зону, где находится диск.

Возвращено: success

Авторы

  • Google Inc. (@googlecloudplatform)

Справочные ссылки

  • Отслеживание проблем
  • Главная страница
  • Репозиторий (источники)

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/google/cloud/gcp_compute_disk_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API