google.cloud.gcp_compute_image модуль — Создаёт GCP Image
Примечание
Этот модуль является частью коллекции google.cloud (версия 1.4.1).
У вас, возможно, уже установлена эта коллекция, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install google.cloud. Для использования этого модуля необходимы дополнительные требования. Подробности см. в разделе Требования.
Чтобы использовать его в playbook, укажите: google.cloud.gcp_compute_image.
Обзор
- Представляет ресурс Image.
- Google Compute Engine использует образы операционных систем для создания корневых постоянных дисков для ваших виртуальных машин. Вы указываете образ при создании виртуальной машины. Образы содержат загрузчик, операционную систему и корневую файловую систему. Образы операционных систем Linux также могут выполнять контейнеры в Compute Engine.
- Образы могут быть общедоступными или пользовательскими.
- Общедоступные образы предоставляются и поддерживаются Google, сообществами с открытым исходным кодом и сторонними поставщиками. По умолчанию все проекты имеют доступ к этим образам и могут использовать их для создания виртуальных машин. Пользовательские образы доступны только вашему проекту. Вы можете создать пользовательский образ из корневых постоянных дисков и других образов. Затем используйте пользовательский образ для создания виртуальной машины.
Требования
Ниже перечислены требования, необходимые на хосте, который выполняет этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
Параметр | Комментарии |
|---|---|
access_token строка | Токен доступа OAuth2, если тип аутентификации — accesstoken. |
auth_kind строка / обязательно | Тип используемых учетных данных. Варианты:
|
description строка | Необязательное описание этого ресурса. Укажите это свойство при создании ресурса. |
disk_size_gb целое число | Размер образа при восстановлении на постоянный диск (в ГБ). |
env_type строка | Указывает, в какой среде Ansible вы выполняете этот модуль. Это значение не следует устанавливать, если вы не знаете, что делаете. Это значение изменяет только строку User Agent для всех запросов к API. |
family строка | Имя семейства образов, к которому принадлежит этот образ. Диски можно создавать, указав семейство образов вместо имени конкретного образа. Семейство образов всегда возвращает свой последний, не устаревший образ. Имя семейства образов должно соответствовать RFC1035. |
guest_os_features список / элементы=словарь | Список функций для включения в гостевой операционной системе. Применимо только для загружаемых образов. |
|
type строка / обязательно |
Тип поддерживаемой функции. Некоторые допустимые значения: «MULTI_IP_SUBNET», «SECURE_BOOT», «SEV_CAPABLE», «UEFI_COMPATIBLE», «VIRTIO_SCSI_MULTIQUEUE», «WINDOWS», «GVNIC» |
image_encryption_key словарь | Шифрует образ с использованием предоставленного пользователем ключа шифрования. После шифрования образа с помощью предоставленного пользователем ключа необходимо предоставить тот же ключ, если позже используется образ (например, для создания диска из образа). |
|
raw_key строка |
Указывает 256-битный предоставленный пользователем ключ шифрования, закодированный в RFC 4648 base64 для шифрования или дешифрования этого ресурса. |
labels словарь | Метки для применения к этому образу. |
licenses список / элементы=строка | Любой применимый URI лицензии. |
name строка / обязательно | Имя ресурса; предоставляется клиентом при создании ресурса. Имя должно иметь длину от 1 до 63 символов и соответствовать RFC1035. Точнее, имя должно иметь длину от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы должны быть тире, строчной буквой или цифрой, за исключением последнего символа, который не может быть тире. |
project строка | Проект Google Cloud Platform, который нужно использовать. |
raw_disk словарь | Параметры образа необработанного диска. |
|
container_type строка |
Формат кодирования и передачи блочного устройства, который должен быть TAR. Это всего лишь формат контейнера и передачи, а не формат выполнения. Предоставляется клиентом при создании образа диска. Некоторые допустимые значения: «TAR» |
|
sha1_checksum строка |
Необязательная контрольная сумма SHA1 образа диска перед распаковкой. Предоставляется клиентом при создании образа диска. |
|
source строка / обязательно |
Полный URL Google Cloud Storage, где хранится хранилище диска. Вы должны указать либо это свойство, либо свойство sourceDisk, но не оба. |
scopes список / элементы=строка | Массив используемых областей видимости |
service_account_contents jsonarg | Содержимое файла JSON учетной записи службы, представленное либо в виде словаря, либо в виде JSON-строки, его представляющей. |
service_account_email строка | Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию. |
service_account_file путь | Путь к файлу JSON учетной записи службы, если тип serviceaccount выбран в качестве типа. |
source_disk словарь | Диск-источник для создания образа. Для создания образа необходимо указать либо это свойство, либо свойство rawDisk.source, но не оба одновременно. Это поле представляет ссылку на ресурс Диск в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом ‘selfLink’ и значением selfLink вашего ресурса. Во-вторых, можно добавить `register: имя-ресурса` к задаче gcp_compute_disk и затем установить это поле source_disk в значение “{{ имя-ресурса }}” |
source_disk_encryption_key словарь | Ключ шифрования диска-источника, предоставленный клиентом. Требуется, если диск-источник защищен ключом шифрования, предоставленным клиентом. |
|
raw_key строка |
Указывает 256-битный ключ шифрования, предоставленный клиентом, закодированный в RFC 4648 base64 для шифрования или дешифрования этого ресурса. |
source_disk_id строка | Идентификатор диска, используемого для создания образа. Это значение может быть использовано для определения, был ли образ взят из текущего или предыдущего экземпляра с заданным именем диска. |
source_image словарь | URL исходного образа, используемого для создания этого образа. Для создания образа необходимо предоставить полный или частичный URL одного из следующих: * URL selfLink * Это свойство * URL rawDisk.source * URL sourceDisk. Это поле представляет ссылку на ресурс Образ в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом ‘selfLink’ и значением selfLink вашего ресурса. Во-вторых, можно добавить `register: имя-ресурса` к задаче gcp_compute_image и затем установить это поле source_image в значение “{{ имя-ресурса }}” |
source_snapshot словарь | URL исходного снимка, используемого для создания этого образа. Для создания образа необходимо предоставить полный или частичный URL одного из следующих: * URL selfLink * Это свойство * URL sourceImage * URL rawDisk.source * URL sourceDisk. Это поле представляет ссылку на ресурс Снимок в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом ‘selfLink’ и значением selfLink вашего ресурса. Во-вторых, можно добавить `register: имя-ресурса` к задаче gcp_compute_snapshot и затем установить это поле source_snapshot в значение “{{ имя-ресурса }}” |
source_type строка | Тип образа, используемого для создания этого диска. По умолчанию и единственное значение — RAW. Некоторые допустимые варианты включают: “RAW” |
state строка | Необходимо ли заданный объект должен существовать в GCP Варианты:
|
Примечания
Примечание
- Ссылка на API: https://cloud.google.com/compute/docs/reference/v1/images
- Официальная документация: https://cloud.google.com/compute/docs/images
- для аутентификации можно установить 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: disk-image
zone: us-central1-a
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
state: present
register: disk
- name: create a image
google.cloud.gcp_compute_image:
name: test_object
source_disk: "{{ disk }}"
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Значения возврата
Общие значения возврата задокументированы здесь, следующие — поля, уникальные для данного модуля:
Ключ | Описание |
|---|---|
archiveSizeBytes целое число | Размер архива образа tar.gz, хранящегося в Google Cloud Storage (в байтах). Возвращается: успех |
creationTimestamp строка | Маркер создания в формате RFC3339. Возвращается: успех |
deprecated сложное | Статус устаревания, связанный с этим образом. Возвращается: успех |
|
deleted строка |
Необязательная отметка времени RFC3339, после которой состояние этого ресурса планируется изменить на УДАЛЁННЫЙ. Эта информация носит только информативный характер, и статус не изменится, если клиент явно его не изменит. Возвращается: успех |
|
deprecated строка |
Необязательная отметка времени RFC3339, после которой состояние этого ресурса планируется изменить на УСТАРЕВШИЙ. Эта информация носит только информативный характер, и статус не изменится, если клиент явно его не изменит. Возвращается: успех |
|
obsolete строка |
Необязательная отметка времени RFC3339, после которой состояние этого ресурса планируется изменить на УСТАРЕВШИЙ. Эта информация носит только информативный характер, и статус не изменится, если клиент явно его не изменит. Возвращается: успех |
|
replacement строка |
URL рекомендуемого ресурса-замены для устаревшего ресурса. Рекомендуемый ресурс-замена должен быть того же типа, что и устаревший ресурс. Возвращается: успех |
|
state строка |
Состояние устаревания этого ресурса. Может быть УСТАРЕВШИЙ, УСТАРЕВШИЙ или УДАЛЁННЫЙ. Операции, создающие новый ресурс с использованием устаревшего ресурса, завершатся успешно, но с предупреждением об устаревшем ресурсе и рекомендацией по его замене. Операции с использованием устаревших или удалённых ресурсов будут отклонены и приведут к ошибке. Возвращается: успех |
description строка | Необязательное описание этого ресурса. Укажите это свойство при создании ресурса. Возвращается: успех |
diskSizeGb целое число | Размер образа при восстановлении на постоянный диск (в ГБ). Возвращается: успех |
family строка | Имя семейства образов, к которому принадлежит этот образ. Можно создавать диски, указав семейство образов вместо имени конкретного образа. Семейство образов всегда возвращает свой самый последний образ, который не устарел. Имя семейства образов должно соответствовать RFC1035. Возвращается: успех |
guestOsFeatures сложное | Список функций для включения в гостевой операционной системе. Применимо только для загружаемых образов. Возвращается: успех |
|
type строка |
Тип поддерживаемой функции. Возвращается: успех |
id целое число | Уникальный идентификатор ресурса. Этот идентификатор определяется сервером. Возвращается: успех |
imageEncryptionKey сложное | Шифрует образ с помощью предоставленного пользователем ключа шифрования. После шифрования образа с помощью ключа, предоставленного пользователем, необходимо предоставить тот же ключ, если образ используется позже (например, для создания диска из образа). Возвращается: успех |
|
rawKey строка |
Указывает 256-битный ключ шифрования, предоставленный пользователем, закодированный в RFC 4648 base64 для шифрования или дешифрования этого ресурса. Возвращается: успех |
|
sha256 строка |
RFC 4648 base64 закодированный SHA-256 хэш ключа шифрования, предоставленного пользователем, который защищает этот ресурс. Возвращается: успех |
labelFingerprint строка | Отпечаток, используемый для оптимистической блокировки этого ресурса. Используется во внутренних операциях обновления. Возвращается: успех |
labels словарь | Метки, которые нужно применить к этому образу. Возвращается: успех |
лицензии список / элементы=строка | Любой применимый URI лицензии. Возвращено: успешно |
имя строка | Имя ресурса; предоставляется клиентом при создании ресурса. Имя должно иметь длину от 1 до 63 символов и соответствовать RFC1035. В частности, имя должно иметь длину от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы должны быть дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом. Возвращено: успешно |
rawDisk сложный | Параметры изображения ссылочного диска. Возвращено: успешно |
|
типКонтейнера строка |
Формат, используемый для кодирования и передачи блочного устройства, который должен быть TAR. Это просто формат контейнера и передачи, а не формат выполнения. Предоставляется клиентом при создании изображения диска. Возвращено: успешно |
|
sha1Checksum строка |
Необязательная контрольная сумма SHA1 изображения диска перед распаковкой. Это предоставляется клиентом при создании изображения диска. Возвращено: успешно |
|
источник строка |
Полный URL Google Cloud Storage, где хранится хранилище диска. Вы должны предоставить либо это свойство, либо свойство sourceDisk, но не оба. Возвращено: успешно |
источникДиска словарь | Источник диска для создания этого изображения на основе. Вы должны предоставить либо это свойство, либо свойство rawDisk.source, но не оба, чтобы создать изображение. Возвращено: успешно |
ключШифрованияИсточникДиска сложный | Ключ шифрования, предоставленный клиентом, для исходного диска. Требуется, если исходный диск защищен ключом шифрования, предоставленным клиентом. Возвращено: успешно |
|
сыройКлюч строка |
Указывает 256-битный ключ шифрования, предоставленный клиентом, закодированный в RFC 4648 base64 для шифрования или дешифрования этого ресурса. Возвращено: успешно |
|
sha256 строка |
Закодированный в RFC 4648 base64 хэш SHA-256 ключа шифрования, предоставленного клиентом, который защищает этот ресурс. Возвращено: успешно |
идентификаторИсточникДиска строка | Значение идентификатора диска, используемого для создания этого изображения. Это значение может быть использовано для определения, было ли изображение взято из текущего или предыдущего экземпляра данного имени диска. Возвращено: успешно |
источникИзображения словарь | URL исходного изображения, используемого для создания этого изображения. Для создания изображения необходимо предоставить полный или частичный URL одного из следующих: * URL selfLink * Это свойство * URL rawDisk.source * URL sourceDisk. Возвращено: успешно |
источникСнимок словарь | URL исходного снимка, используемого для создания этого изображения. Для создания изображения необходимо предоставить полный или частичный URL одного из следующих: * URL selfLink * Это свойство * URL sourceImage * URL rawDisk.source * URL sourceDisk. Возвращено: успешно |
типИсточник строка | Тип изображения, используемого для создания этого диска. Значение по умолчанию и единственное значение — RAW. Возвращено: успешно |
Ссылки на коллекции
© 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_image_module.html