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 строка | Необязательное описание этого ресурса. | |
| 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 строка добавлено в 2.7 | Указывает политику переопределения QUIC для этого ресурса. Это определяет, будет ли балансировщик нагрузки пытаться договориться о QUIC с клиентами или нет. Можно указать одно из NONE, ENABLE или DISABLE. Если указано NONE, используется политика QUIC без переопределения пользователем, что эквивалентно DISABLE. Если этот параметр не указан, он эквивалентен NONE. Некоторые допустимые значения: "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 словарь добавлено в 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, используя переменную среды c(gcp_service_account_file).
- для аутентификации можно установить service_account_contents, используя переменную среды c(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
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.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
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. |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [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.9/modules/gcp_compute_target_https_proxy_module.html