gcp_compute_target_https_proxy – Создаёт прокси GCP TargetHttpsProxy
Новая версия с 2.6.
Описание
- Представляет ресурс TargetHttpsProxy, который используется одной или несколькими глобальными правилами переадресации для маршрутизации входящих запросов HTTPS на карту URL.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| auth_kind строка / обязательно |
| Тип используемых учетных данных. |
| description - | Необязательное описание этого ресурса. | |
| name - / обязательно | Имя ресурса. Предоставляется клиентом при создании ресурса. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. Конкретно, имя должно быть длиной от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы — дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом. | |
| project строка | Проект Google Cloud Platform для использования. | |
| quic_override - добавлен в 2.7 |
| Указывает политику переопределения QUIC для этого ресурса. Это определяет, будет ли балансировщик нагрузки пытаться договориться о QUIC с клиентами или нет. Можно указать одно из NONE, ENABLE или DISABLE. Если указано NONE, используется политика QUIC без переопределений пользователем, что эквивалентно DISABLE. Отсутствие этого поля эквивалентно указанию NONE. |
| scopes список | Массив используемых областей. | |
| service_account_contents строка | Строка, представляющая содержимое файла JSON учетной записи службы. Это не должно передаваться в виде словаря, а в виде строки с точным содержимым файла json учетной записи службы (действительный JSON). | |
| service_account_email строка | Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию. | |
| service_account_file путь | Путь к файлу JSON учетной записи службы, если в качестве типа выбрана учетная запись службы. | |
| ssl_certificates - / обязательно | Список ресурсов SslCertificate, используемых для аутентификации соединений между пользователями и балансировщиком нагрузки. В настоящее время необходимо указать ровно один сертификат SSL. | |
| ssl_policy - добавлен в 2.8 | Ссылка на ресурс SslPolicy, который будет связан с ресурсом TargetHttpsProxy. Если не задано, ресурс TargetHttpsProxy не будет иметь какой-либо политики SSL. Это поле представляет ссылку на ресурс SslPolicy в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. В качестве альтернативы, можно добавить `register: имя_ресурса` к задаче gcp_compute_ssl_policy, а затем установить это поле ssl_policy в "{{ имя_ресурса }}" | |
| state - |
| Нужно ли данному объекту существовать в 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_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: create a instance group
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
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
gcp_compute_backend_service:
name: backendservice-targethttpsproxy
backends:
- group: "{{ instancegroup }}"
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
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
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
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. Отсутствие этого поля эквивалентно указанию NONE. |
| sslCertificates список | успех | Список ресурсов SslCertificate, используемых для аутентификации соединений между пользователями и балансировщиком нагрузки. В настоящее время необходимо указать ровно один сертификат SSL. |
| sslPolicy словарь | успех | Ссылка на ресурс SslPolicy, который будет связан с ресурсом TargetHttpsProxy. Если не задано, ресурс TargetHttpsProxy не будет иметь какой-либо политики SSL. |
| urlMap словарь | успех | Ссылка на ресурс UrlMap, который определяет сопоставление URL с BackendService. |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [предварительный просмотр]
- Этот модуль поддерживается сообществом 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_target_https_proxy_module.html