gcp_compute_instance_facts – Сбор фактов о виртуальной машине GCP
Новая в версии 2.7.
Обзор
- Сбор фактов о виртуальной машине GCP
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| auth_kind строка / обязательно |
| Тип используемых учетных данных. |
| filters - | Список пар значений фильтров. Доступные фильтры перечислены здесь https://cloud.google.com/sdk/gcloud/reference/topic/filters. Каждый дополнительный фильтр в списке будет добавлен как условие И (filter1 и filter2). | |
| project строка | Проект Google Cloud Platform, который использовать. | |
| scopes список | Массив используемых областей. | |
| service_account_contents строка | Строка, представляющая содержимое файла JSON учетной записи службы. Это не должно передаваться как словарь, а как строка с точным содержимым файла json учетной записи службы (валидный JSON). | |
| service_account_email строка | Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию. | |
| service_account_file путь | Путь к файлу JSON учетной записи службы, если в качестве типа выбран serviceaccount. | |
| zone - / обязательно | Ссылка на зону, где находится виртуальная машина. |
Примечания
Примечание
- Для аутентификации можно установить service_account_file с помощью переменной среды
GCP_SERVICE_ACCOUNT_FILE. - Для аутентификации можно установить service_account_email с помощью переменной среды
GCP_SERVICE_ACCOUNT_EMAIL. - Для аутентификации можно установить service_account_contents с помощью переменной среды
GCP_SERVICE_ACCOUNT_CONTENTS. - Для аутентификации можно установить auth_kind с помощью переменной среды
GCP_AUTH_KIND. - Для аутентификации можно установить scopes с помощью переменной среды
GCP_SCOPES. - Значения переменных среды будут использоваться только в том случае, если значения в плейбуке не заданы.
- Параметры service_account_email и service_account_file взаимоисключают друг друга.
Примеры
- name: " a instance facts"
gcp_compute_instance_facts:
zone: us-central1-a
filters:
- name = test_object
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: facts
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключевые данные | Возвращаемое значение | Описание | ||||
|---|---|---|---|---|---|---|
| items сложный | всегда | Список элементов | ||||
| canIpForward boolean | успех | Разрешает этому экземпляру отправлять и получать пакеты с несовпадающими IP-адресами назначения или источника. Это необходимо, если вы планируете использовать этот экземпляр для перенаправления маршрутов. | ||||
| cpuPlatform строка | успех | Платформа процессора, используемая этим экземпляром. | ||||
| creationTimestamp строка | успех | Дата и время создания в формате RFC3339. | ||||
| disks сложный | успех | Массив дисков, связанных с экземплярами, созданными по этому шаблону. | ||||
| autoDelete boolean | успех | Указывает, будет ли диск автоматически удалён при удалении экземпляра (но не при отсоединении диска от экземпляра). Подсказка: Диски следует устанавливать autoDelete=true, чтобы не оставлять ненужные диски после удаления машины. | ||||
| boot boolean | успех | Указывает, что это системный диск. Виртуальная машина будет использовать первый раздел диска для корневой файловой системы. | ||||
| deviceName строка | успех | Указывает уникальное имя устройства по вашему выбору, которое отображается в дереве /dev/disk/by-id/google-* операционной системы Linux, работающей внутри экземпляра. Это имя можно использовать для ссылки на устройство для монтирования, изменения размера и т. д. внутри экземпляра. | ||||
| diskEncryptionKey сложный | успех | Шифрует или расшифровывает диск с помощью предоставленного пользователем ключа шифрования. | ||||
| rawKey строка | успех | Указывает 256-битный ключ шифрования, предоставленный пользователем, закодированный в формате RFC 4648 base64 для шифрования или расшифровки этого ресурса. | ||||
| rsaEncryptedKey строка | успех | Указывает закодированный в RFC 4648 base64, RSA-завернутый 2048-битный ключ шифрования, предоставленный пользователем, для шифрования или расшифровки этого ресурса. | ||||
| sha256 строка | успех | RFC 4648 base64-кодированный SHA-256 хэш ключа шифрования, предоставленного пользователем, который защищает этот ресурс. | ||||
| index целое число | успех | Назначает индекс, начиная с нуля, этому диску, где 0 зарезервирован для системного диска. Например, если к экземпляру подключено много дисков, каждый диск будет иметь уникальный индекс. Если не указано, сервер выберет подходящее значение. | ||||
| initializeParams сложный | успех | Указывает параметры для нового диска, который будет создан вместе с новым экземпляром. Используйте параметры инициализации для создания системных дисков или локальных SSD, подключённых к новому экземпляру. | ||||
| diskName строка | успех | Указывает имя диска. Если не указано, по умолчанию используется имя экземпляра. | ||||
| diskSizeGb целое число | успех | Указывает размер диска в гигабайтах. | ||||
| diskType строка | успех | Ссылка на тип диска. Указывает тип диска для создания экземпляра. Если не указано, по умолчанию используется pd-standard. | ||||
| sourceImage строка | успех | Исходный образ для создания этого диска. При создании нового экземпляра требуется либо initializeParams.sourceImage, либо disks.source. Для создания диска с помощью одного из общедоступных образов операционных систем укажите имя семейства образа. | ||||
| sourceImageEncryptionKey сложный | успех | Ключ шифрования, предоставленный пользователем, для исходного образа. Требуется, если исходный образ защищён ключом, предоставленным пользователем. Шаблоны экземпляров не хранят ключи шифрования, предоставленные пользователем, поэтому вы не можете создавать диски для экземпляров в управляемой группе экземпляров, если исходные образы зашифрованы вашими собственными ключами. | ||||
| rawKey строка | успех | Указывает 256-битный ключ шифрования, предоставленный пользователем, закодированный в формате RFC 4648 base64 для шифрования или расшифровки этого ресурса. | ||||
| sha256 строка | успех | RFC 4648 base64-кодированный SHA-256 хэш ключа шифрования, предоставленного пользователем, который защищает этот ресурс. | ||||
| interface строка | успех | Указывает интерфейс диска для подключения, который может быть SCSI или NVME. По умолчанию — SCSI. Постоянные диски всегда должны использовать SCSI, и запрос завершится ошибкой, если вы попытаетесь подключить постоянный диск в другом формате, кроме SCSI. | ||||
| mode строка | успех | Режим подключения диска: READ_WRITE или READ_ONLY. Если не указано, по умолчанию используется режим READ_WRITE. | ||||
| source словарь | успех | Ссылка на диск. При создании нового экземпляра требуется либо initializeParams.sourceImage, либо disks.source. По желанию, вы также можете подключить существующие постоянные диски, не являющиеся системными, используя это свойство. Это поле применимо только для постоянных дисков. | ||||
| type строка | успех | Указывает тип диска: SCRATCH или PERSISTENT. Если не указано, по умолчанию используется PERSISTENT. | ||||
| guestAccelerators сложный | успех | Список типов и количества ускорителей, подключённых к экземпляру. | ||||
| acceleratorCount целое число | успех | Количество ускорителей гостевой виртуальной машины, доступных этому экземпляру. | ||||
| acceleratorType строка | успех | Полный или частичный URL ресурса типа ускорителя, доступного этому экземпляру. | ||||
| id целое число | успех | Уникальный идентификатор ресурса. Этот идентификатор определён сервером. | ||||
| labelFingerprint строка | успех | Отпечаток метки для этого запроса, который представляет собой хэш содержимого метаданных и используется для оптимистического блокирования. Отпечаток изначально генерируется Compute Engine и меняется после каждого запроса на изменение или обновление метаданных. Вы всегда должны предоставлять обновлённый хэш отпечатка, чтобы обновить или изменить метаданные. | ||||
| machineType строка | успех | Ссылка на тип машины, определяющий тип ВМ. | ||||
| метаданные словарь | success | Пары ключ/значение метаданных, которые должны быть назначены экземплярам, созданным из этой шаблона. Эти пары могут содержать пользовательские метаданные или предопределённые ключи. | ||||
| minCpuPlatform строка | success | Указывает минимальную платформу процессора для виртуальной машины. Допустимые значения — удобочитаемые имена платформ процессоров. | ||||
| имя строка | success | Имя ресурса, предоставленное клиентом при первоначальном создании ресурса. Имя ресурса должно содержать от 1 до 63 символов и соответствовать RFC1035. То есть, длина имени должна составлять от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы — тире, строчной буквой или цифрой, за исключением последнего символа, который не может быть тире. | ||||
| networkInterfaces сложный | success | Массив конфигураций для этого интерфейса. Он определяет, как этот интерфейс взаимодействует с другими сетевыми службами, например, как подключаться к интернету. На один экземпляр поддерживается только один сетевой интерфейс. | ||||
| accessConfigs сложный | success | Массив конфигураций для этого интерфейса. В настоящее время поддерживается только одна конфигурация доступа ONE_TO_ONE_NAT. Если доступ к конфигурациям не указан, у этого экземпляра не будет внешнего доступа к интернету. | ||||
| имя строка | success | Имя этой конфигурации доступа. По умолчанию и рекомендуется — External NAT, но вы можете использовать любое произвольное строковое значение. Например, My external IP или Network Access. | ||||
| natIP словарь | success | Ссылка на адрес. Внешний IP-адрес, связанный с этим экземпляром. Укажите неиспользуемый статический внешний IP-адрес, доступный проекту, или оставьте это поле неопределённым, чтобы использовать IP-адрес из общего пула временных IP-адресов. Если вы укажете статический внешний IP-адрес, он должен находиться в той же области, что и зона экземпляра. | ||||
| тип строка | success | Тип конфигурации. По умолчанию и единственный вариант — ONE_TO_ONE_NAT. | ||||
| aliasIpRanges сложный | success | Массив диапазонов IP-адресов псевдонимов для этого сетевого интерфейса. Может быть указан только для сетевых интерфейсов в сетях в режиме подсети. | ||||
| ipCidrRange строка | success | Диапазон IP CIDR, представленный этим диапазоном IP-адресов псевдонимов. Этот диапазон IP CIDR должен принадлежать указанной подсети и не должен содержать IP-адреса, зарезервированные системой или используемые другими сетевыми интерфейсами. Этот диапазон может представлять собой один IP-адрес (например, 10.2.3.4), маску (например, /24) или строку в формате CIDR (например, 10.1.2.0/24). | ||||
| subnetworkRangeName строка | success | Необязательное имя вторичного диапазона подсети, указывающее вторичный диапазон, из которого нужно выделить диапазон IP CIDR для этого диапазона IP-адресов псевдонимов. Если не указано, используется первичный диапазон подсети. | ||||
| имя строка | success | Имя сетевого интерфейса, сгенерированное сервером. Для сетевых устройств это eth0, eth1 и т. д. | ||||
| сеть словарь | success | Указывает заголовок существующей сети. При создании экземпляра, если не указана ни сеть, ни подсеть, используется сеть по умолчанию global/networks/default; если сеть не указана, а подсеть указана, сеть определяется. | ||||
| networkIP строка | success | Внутренний IPv4-адрес сети, который нужно назначить экземпляру для этого сетевого интерфейса. Если пользователь не указывает, система назначает неиспользуемый внутренний IP. | ||||
| подсеть словарь | success | Ссылка на сеть VPC. Если ресурс сети находится в режиме устаревшего режима, не указывайте это свойство. Если сеть находится в режиме автоматической подсети, указание подсети необязательно. Если сеть находится в режиме подсети по умолчанию, то это поле должно быть указано. | ||||
| планирование сложный | success | Устанавливает параметры планирования для этого экземпляра. | ||||
| автоматическийЗапуск булево | success | Указывает, должен ли экземпляр автоматически перезапускаться, если он был завершен Compute Engine (а не пользователем). Вы можете установить параметр автоматического перезапуска только для стандартных экземпляров. Для экземпляров с предварительной загрузкой автоматический перезапуск невозможен. | ||||
| приТехническомОбслуживании строка | success | Определяет поведение при техническом обслуживании для этого экземпляра. Для стандартных экземпляров, поведение по умолчанию — MIGRATE. Для экземпляров с предварительной загрузкой, поведение по умолчанию и единственно возможное — TERMINATE. Подробнее см. в разделе Настройка параметров планирования экземпляра. | ||||
| предопределенный булево | success | Определяет, является ли экземпляр предварительно загруженным. Это можно задать только при создании экземпляра; после создания экземпляра изменить значение нельзя. | ||||
| serviceAccounts сложный | success | Список учетных записей сервиса с их указанными областями, авторизованных для этого экземпляра. На один экземпляр виртуальной машины поддерживается только одна учетная запись сервиса. | ||||
| email строка | success | Электронный адрес учетной записи сервиса. | ||||
| области список | success | Список областей, которые будут доступны для этой учетной записи сервиса. | ||||
| статус строка | success | Статус экземпляра. Одно из следующих значений: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED и TERMINATED. В качестве пользователя, используйте RUNNING, чтобы сохранить машину «включённой», и TERMINATED, чтобы выключить её. | ||||
| сообщениеОСтатусе строка | success | Необязательное, удобочитаемое объяснение статуса. | ||||
| метки сложный | success | Список меток, которые нужно применить к этому экземпляру. Метки используются для определения допустимых источников или целей для сетевых брандмауэров и указываются клиентом при создании экземпляра. Метки можно позже изменить с помощью метода setTags. Каждая метка в списке должна соответствовать RFC1035. | ||||
| отпечаток строка | success | Указывает отпечаток для этого запроса, который представляет собой хэш содержимого метаданных и используется для оптимистической блокировки. Отпечаток первоначально генерируется Compute Engine и изменяется после каждого запроса для изменения или обновления метаданных. Для обновления или изменения метаданных всегда необходимо предоставить обновлённый хэш отпечатка. | ||||
| элементы список | success | Массив меток. Каждая метка должна содержать от 1 до 63 символов и соответствовать RFC1035. | ||||
| зона строка | success | Ссылка на зону, в которой расположена машина. | ||||
Статус
- Данный модуль не гарантирует обратной совместимости интерфейса. [preview]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- 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.8/modules/gcp_compute_instance_facts_module.html