gce_instance_template - создание или уничтожение шаблонов виртуальных машин Compute Engine в GCP.
Новая версия с 2.3.
Обзор
- Создает или уничтожает шаблоны виртуальных машин Google Compute Engine в Google Cloud Platform.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- apache-libcloud >= 0.13.3, >= 0.17.0 при использовании JSON-кредитов, >= 0.20.0 при использовании предварительной опции
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| automatic_restart | Определяет, должен ли экземпляр автоматически перезапускаться при его завершении Compute Engine. | |
| can_ip_forward bool |
| Установите в yes , чтобы разрешить экземпляру отправлять/получать пакеты с несоответствующими значениями src/dst. |
| credentials_file | путь к JSON-файлу, связанному с электронным адресом учетной записи службы | |
| description | описание шаблона виртуальной машины | |
| disk_auto_delete | Значение по умолчанию: "да" | Указывает, что загрузочный диск должен быть удален при удалении узла. |
| disk_type | Значение по умолчанию: "pd-standard" | Укажите диск pd-standard или pd-ssd для SSD-диска. |
| disks | список постоянных дисков для подключения к экземпляру; строковое значение задает имя диска; альтернативно, значение словаря может определить 'name' и 'mode' ('READ_ONLY' или 'READ_WRITE'). Первый элемент будет загрузочным диском (который должен быть READ_WRITE). | |
| disks_gce_struct (добавлено в 2.4) | Поддержка передачи структуры дисков[] в формате, специфичном для GCE. Регистрозависимый. См. https://cloud.google.com/compute/docs/reference/latest/instanceTemplates#resource для получения подробной информации. | |
| external_ip | Значение по умолчанию: "ephemeral" | Внешний IP-адрес для использования. Если ephemeral, будет использоваться новый нестатический адрес. Если None, внешний адрес не будет использоваться. Для использования существующего статического IP-адреса укажите имя адреса. |
| image | Образ для создания экземпляра. Нельзя указывать и image, и source. | |
| image_family | Семейство образов для создания экземпляра. Если используется image, image_family игнорируется. Нельзя указывать и image, и source. | |
| metadata | словарь пользовательских данных для экземпляра; '{"key":"value", ...}' | |
| name | Имя шаблона виртуальной машины GCE. | |
| network | Значение по умолчанию: "default" | Сеть, которая должна быть ассоциирована с экземпляром. |
| nic_gce_struct | Поддержка передачи структуры networkInterfaces[] в формате, специфичном для GCE. | |
| pem_file | путь к файлу pem, связанному с электронным адресом учетной записи службы. Этот параметр устарел. Используйте 'credentials_file'. | |
| preemptible | Определяет, является ли экземпляр предварительно определяемым. | |
| project_id | ваш идентификатор проекта GCE | |
| service_account_email | электронный адрес учетной записи службы | |
| service_account_permissions |
| разрешения учетной записи службы (см. https://cloud.google.com/sdk/gcloud/reference/compute/instances/create, раздел --scopes для получения подробной информации) |
| size | Значение по умолчанию: "f1-micro" | Желаемый тип виртуальной машины для шаблона виртуальной машины. |
| source | Исходный диск для подключения к экземпляру. Нельзя указывать и image, и source. | |
| state |
| Желаемое состояние для шаблона виртуальной машины. |
| subnetwork | Имя ресурса подсети для этого экземпляра. | |
| subnetwork_region (добавлено в 2.4) | Регион, в котором находится подсеть. (Требуется для успешного завершения подсети) | |
| tags | список тегов, разделенных запятыми, для ассоциации с экземпляром |
Примечания
Примечание
- JSON-кредиты предпочтительнее.
Примеры
# Usage
- name: create instance template named foo
gce_instance_template:
name: foo
size: n1-standard-1
image_family: ubuntu-1604-lts
state: present
project_id: "your-project-name"
credentials_file: "/path/to/your-key.json"
service_account_email: "your-sa@your-project-name.iam.gserviceaccount.com"
# Example Playbook
- name: Compute Engine Instance Template Examples
hosts: localhost
vars:
service_account_email: "your-sa@your-project-name.iam.gserviceaccount.com"
credentials_file: "/path/to/your-key.json"
project_id: "your-project-name"
tasks:
- name: create instance template
gce_instance_template:
name: my-test-instance-template
size: n1-standard-1
image_family: ubuntu-1604-lts
state: present
project_id: "{{ project_id }}"
credentials_file: "{{ credentials_file }}"
service_account_email: "{{ service_account_email }}"
- name: delete instance template
gce_instance_template:
name: my-test-instance-template
size: n1-standard-1
image_family: ubuntu-1604-lts
state: absent
project_id: "{{ project_id }}"
credentials_file: "{{ credentials_file }}"
service_account_email: "{{ service_account_email }}"
# Example playbook using disks_gce_struct
- name: Compute Engine Instance Template Examples
hosts: localhost
vars:
service_account_email: "your-sa@your-project-name.iam.gserviceaccount.com"
credentials_file: "/path/to/your-key.json"
project_id: "your-project-name"
tasks:
- name: create instance template
gce_instance_template:
name: foo
size: n1-standard-1
state: present
project_id: "{{ project_id }}"
credentials_file: "{{ credentials_file }}"
service_account_email: "{{ service_account_email }}"
disks_gce_struct:
- device_name: /dev/sda
boot: true
autoDelete: true
initializeParams:
diskSizeGb: 30
diskType: pd-ssd
sourceImage: projects/debian-cloud/global/images/family/debian-8
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантируется обратной совместимостью.
Техническое обслуживание
Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. См. Техническое обслуживание и поддержка модулей для получения дополнительной информации.
Список других модулей, поддерживаемых сообществом Ansible, см. здесь.
Автор
- Gwenael Pellen (@GwenaelPellenArkeup) <gwenael.pellen@arkeup.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.6/modules/gce_instance_template_module.html