Spec-Zone.ru › Ansible 2.11

google.cloud.gcp_compute_target_https_proxy – Создаёт GCP TargetHttpsProxy

Примечание

Этот плагин входит в коллекцию google.cloud (версия 1.0.2).

Для его установки используйте: ansible-galaxy collection install google.cloud.

Для использования в книге задач укажите: google.cloud.gcp_compute_target_https_proxy.

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Описание

  • Представляет ресурс TargetHttpsProxy, который используется одним или несколькими глобальными правилами переадресации для маршрутизации входящих HTTPS-запросов к карте URL.

Требования

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

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
строка / обязательно
    Варианты:
  • application
  • machineaccount
  • serviceaccount
Тип используемых учетных данных.
description
строка
Дополнительное описание этого ресурса.
env_type
строка
Указывает, в какой среде Ansible вы запускаете этот модуль. Это не следует устанавливать, если вы не знаете, что делаете. Это изменяет только строку User Agent для всех запросов к API.
name
строка / обязательно
Имя ресурса. Предоставляется клиентом при создании ресурса. Имя должно иметь длину от 1 до 63 символов и соответствовать RFC1035. В частности, имя должно иметь длину от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы должны быть дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом.
project
строка
Проект Google Cloud Platform для использования.
quic_override
строка
Указывает политику переопределения QUIC для этого ресурса. Это определяет, будет ли балансировщик нагрузки пытаться договориться о QUIC с клиентами или нет. Можно указать одно из значений NONE, ENABLE или DISABLE. Если указано NONE, используется политика QUIC без пользовательских переопределений, что эквивалентно DISABLE. Некоторые допустимые значения: "NONE", "ENABLE", "DISABLE"
scopes
список / элементы=строка
Массив областей для использования.
service_account_contents
jsonarg
Содержимое JSON-файла учетной записи службы, либо в виде словаря, либо как JSON-строка, которая его представляет.
service_account_email
строка
Дополнительный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес электронной почты по умолчанию.
service_account_file
путь
Путь к файлу JSON учетной записи службы, если тип serviceaccount выбран.
ssl_certificates
список / элементы=словарь / обязательно
Список ресурсов SslCertificate, используемых для проверки подлинности соединений между пользователями и балансировщиком нагрузки. Необходимо указать как минимум один сертификат SSL.
ssl_policy
словарь
Ссылка на ресурс SslPolicy, который будет связан с ресурсом TargetHttpsProxy. Если не задано, у ресурса TargetHttpsProxy не будет настроек политики SSL. Это поле представляет ссылку на ресурс SslPolicy в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя-ресурса` к задаче gcp_compute_ssl_policy и затем установить это поле ssl_policy в "{{ имя-ресурса }}"`.
state
строка
    Варианты:
  • present ←
  • absent
Существует ли данный объект в GCP.
url_map
словарь / обязательно
Ссылка на ресурс UrlMap, который определяет отображение URL на BackendService. Это поле представляет ссылку на ресурс UrlMap в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя-ресурса` к задаче gcp_compute_url_map и затем установить это поле url_map в "{{ имя-ресурса }}"`.

Примечания

Примечание

  • Ссылка на API: https://cloud.google.com/compute/docs/reference/v1/targetHttpsProxies
  • Официальная документация: https://cloud.google.com/compute/docs/load-balancing/http/target-proxies
  • для аутентификации можно установить 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.
  • Значения переменных среды будут использоваться только в том случае, если значения в книге задач не заданы.
  • Параметры service_account_email и service_account_file взаимоисключают друг друга.

Примеры

- name: create a instance group
  google.cloud.gcp_compute_instance_group:
    name: instancegroup-targethttpsproxy
    zone: us-central1-a
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: instancegroup

- name: create a HTTP health check
  google.cloud.gcp_compute_http_health_check:
    name: httphealthcheck-targethttpsproxy
    healthy_threshold: 10
    port: 8080
    timeout_sec: 2
    unhealthy_threshold: 5
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: healthcheck

- name: create a backend service
  google.cloud.gcp_compute_backend_service:
    name: backendservice-targethttpsproxy
    backends:
    - group: "{{ instancegroup.selfLink }}"
    health_checks:
    - "{{ healthcheck.selfLink }}"
    enable_cdn: 'true'
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: backendservice

- name: create a URL map
  google.cloud.gcp_compute_url_map:
    name: urlmap-targethttpsproxy
    default_service: "{{ backendservice }}"
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: urlmap

- name: create a SSL certificate
  google.cloud.gcp_compute_ssl_certificate:
    name: sslcert-targethttpsproxy
    description: A certificate for testing. Do not use this certificate in production
    certificate: |-
      -----BEGIN CERTIFICATE-----
      MIICqjCCAk+gAwIBAgIJAIuJ+0352Kq4MAoGCCqGSM49BAMCMIGwMQswCQYDVQQG
      EwJVUzETMBEGA1UECAwKV2FzaGluZ3RvbjERMA8GA1UEBwwIS2lya2xhbmQxFTAT
      BgNVBAoMDEdvb2dsZSwgSW5jLjEeMBwGA1UECwwVR29vZ2xlIENsb3VkIFBsYXRm
      b3JtMR8wHQYDVQQDDBZ3d3cubXktc2VjdXJlLXNpdGUuY29tMSEwHwYJKoZIhvcN
      AQkBFhJuZWxzb25hQGdvb2dsZS5jb20wHhcNMTcwNjI4MDQ1NjI2WhcNMjcwNjI2
      MDQ1NjI2WjCBsDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCldhc2hpbmd0b24xETAP
      BgNVBAcMCEtpcmtsYW5kMRUwEwYDVQQKDAxHb29nbGUsIEluYy4xHjAcBgNVBAsM
      FUdvb2dsZSBDbG91ZCBQbGF0Zm9ybTEfMB0GA1UEAwwWd3d3Lm15LXNlY3VyZS1z
      aXRlLmNvbTEhMB8GCSqGSIb3DQEJARYSbmVsc29uYUBnb29nbGUuY29tMFkwEwYH
      KoZIzj0CAQYIKoZIzj0DAQcDQgAEHGzpcRJ4XzfBJCCPMQeXQpTXwlblimODQCuQ
      4mzkzTv0dXyB750fOGN02HtkpBOZzzvUARTR10JQoSe2/5PIwaNQME4wHQYDVR0O
      BBYEFKIQC3A2SDpxcdfn0YLKineDNq/BMB8GA1UdIwQYMBaAFKIQC3A2SDpxcdfn
      0YLKineDNq/BMAwGA1UdEwQFMAMBAf8wCgYIKoZIzj0EAwIDSQAwRgIhALs4vy+O
      M3jcqgA4fSW/oKw6UJxp+M6a+nGMX+UJR3YgAiEAvvl39QRVAiv84hdoCuyON0lJ
      zqGNhIPGq2ULqXKK8BY=
      -----END CERTIFICATE-----
    private_key: |-
      -----BEGIN EC PRIVATE KEY-----
      MHcCAQEEIObtRo8tkUqoMjeHhsOh2ouPpXCgBcP+EDxZCB/tws15oAoGCCqGSM49
      AwEHoUQDQgAEHGzpcRJ4XzfBJCCPMQeXQpTXwlblimODQCuQ4mzkzTv0dXyB750f
      OGN02HtkpBOZzzvUARTR10JQoSe2/5PIwQ==
      -----END EC PRIVATE KEY-----
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: sslcert

- name: create a target HTTPS proxy
  google.cloud.gcp_compute_target_https_proxy:
    name: test_object
    ssl_certificates:
    - "{{ sslcert }}"
    url_map: "{{ urlmap }}"
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

Возвращаемые значения

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

Ключ Возвращаемое значение Описание
creationTimestamp
строка
успех Дата и время создания в формате RFC3339.
description
строка
успех Дополнительное описание этого ресурса.
id
целое число
успех Уникальный идентификатор ресурса.
name
строка
успех Имя ресурса. Предоставляется клиентом при создании ресурса. Имя должно иметь длину от 1 до 63 символов и соответствовать RFC1035. В частности, имя должно иметь длину от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы должны быть дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом.
quicOverride
строка
успех Указывает политику переопределения QUIC для этого ресурса. Это определяет, будет ли балансировщик нагрузки пытаться договориться о QUIC с клиентами или нет. Можно указать одно из значений NONE, ENABLE или DISABLE. Если указано NONE, используется политика QUIC без пользовательских переопределений, что эквивалентно DISABLE.
sslCertificates
список / элементы=строка
успех Список ресурсов SslCertificate, используемых для проверки подлинности соединений между пользователями и балансировщиком нагрузки. Необходимо указать как минимум один сертификат SSL.
sslPolicy
словарь
успех Ссылка на ресурс SslPolicy, который будет связан с ресурсом TargetHttpsProxy. Если не задано, у ресурса TargetHttpsProxy не будет настроек политики SSL.
urlMap
словарь
успех Ссылка на ресурс UrlMap, который определяет отображение URL на BackendService.


Авторы

  • Google Inc. (@googlecloudplatform)

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

Spec-Zone.ru

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