Spec-Zone.ru › Ansible 2.8

gcp_compute_url_map – Создаёт GCP UrlMap

Новая версия с 2.6.

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

Описание

  • UrlMaps используются для перенаправления запросов на службу обратного вызова на основе правил, которые вы определяете для хоста и пути входящего URL.

Требования

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

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
строка / обязательно
    Варианты:
  • application
  • machineaccount
  • serviceaccount
Тип используемых учетных данных.
default_service
- / обязательно
Ссылка на ресурс BackendService, если ни одно из правил хоста не соответствует.
Это поле представляет ссылку на ресурс BackendService в GCP. Оно может быть указано двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя_ресурса` в задачу gcp_compute_backend_service, а затем установить это поле default_service в "{{ имя_ресурса }}"
description
-
Необязательное описание этого ресурса. Укажите это свойство при создании ресурса.
host_rules
-
Список HostRules для использования с URL.
description
-
Необязательное описание этого HostRule. Укажите это свойство при создании ресурса.
hosts
- / обязательно
Список шаблонов хостов для сопоставления. Они должны быть допустимыми именами хостов, за исключением *, которое будет соответствовать любой строке ([a-z0-9-.]*). В этом случае * должен быть первым символом и должен быть после него либо - или .
path_matcher
- / обязательно
Имя PathMatcher, которое нужно использовать для сопоставления пути URL, если hostRule соответствует хосту URL.
name
- / обязательно
Имя ресурса. Предоставляется клиентом при создании ресурса. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. Точнее, длина имени должна быть от 1 до 63 символов, и оно должно соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы должны быть тире, строчной буквой или цифрой, за исключением последнего символа, который не может быть тире.
path_matchers
-
Список именованных PathMatchers для использования с URL.
default_service
- / обязательно
Ссылка на ресурс BackendService. Будет использоваться, если ни одно из правил путей, определённых этим PathMatcher, не соответствует пути URL.
Это поле представляет ссылку на ресурс BackendService в GCP. Оно может быть указано двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя_ресурса` в задачу gcp_compute_backend_service, а затем установить это поле default_service в "{{ имя_ресурса }}"
description
-
Необязательное описание этого ресурса.
name
- / обязательно
Имя, по которому этот PathMatcher ссылается HostRule.
path_rules
-
Список правил пути.
paths
- / обязательно
Список шаблонов путей для сопоставления. Каждый должен начинаться с /, и единственное место, где допускается *, находится в конце после /. Строка, переданная path matcher, не включает текст после первого ? или #, и эти символы здесь недопустимы.
service
- / обязательно
Ссылка на ресурс BackendService, если это правило совпало.
Это поле представляет ссылку на ресурс BackendService в GCP. Оно может быть указано двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя_ресурса` в задачу gcp_compute_backend_service, а затем установить это поле service в "{{ имя_ресурса }}"
project
строка
Проект Google Cloud Platform, который нужно использовать.
scopes
список
Массив используемых областей.
service_account_contents
строка
Строка, представляющая содержимое файла JSON учетной записи службы.
Это не должно передаваться в виде словаря, а как строка, содержащая точное содержимое файла json учетной записи службы (действительный JSON).
service_account_email
строка
Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес электронной почты по умолчанию.
service_account_file
путь
Путь к файлу JSON учетной записи службы, если тип serviceaccount выбран как тип.
state
-
    Варианты:
  • present ←
  • absent
Нужно ли, чтобы данный объект существовал в GCP
tests
-
Список ожидаемых сопоставлений URL. Запросы на обновление этого UrlMap будут успешны только в том случае, если пройдут все тестовые сценарии.
description
-
Описание этого тестового сценария.
host
- / обязательно
Часть хоста URL.
path
- / обязательно
Часть пути URL.
service
- / обязательно
Ссылка на ожидаемый ресурс BackendService, к которому данный URL должен быть сопоставлен.
Это поле представляет ссылку на ресурс BackendService в GCP. Оно может быть указано двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя_ресурса` в задачу gcp_compute_backend_service, а затем установить это поле service в "{{ имя_ресурса }}"

Примечания

Примечание

  • Для аутентификации вы можете установить 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.
  • Значения переменных окружения будут использованы только в том случае, если значения в playbook не заданы.
  • Параметры service_account_email и service_account_file взаимоисключающие.

Примеры

- name: create a instance group
  gcp_compute_instance_group:
    name: instancegroup-urlmap
    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-urlmap
    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-urlmap
    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: test_object
    default_service: "{{ backendservice }}"
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

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

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

Ключ Возвращаемое Описание
creationTimestamp
строка
успех
Маркер создания в формате RFC3339.

defaultService
словарь
успех
Ссылка на ресурс BackendService, если ни одно из правил hostRules не соответствует.

description
строка
успех
Необязательное описание данного ресурса. Укажите это свойство при создании ресурса.

fingerprint
строка
успех
Отпечаток данного ресурса. Это поле используется во время обновлений ресурса.

hostRules
сложное
успех
Список правил hostRules для применения к URL.

description
строка
успех
Необязательное описание данного правила hostRule. Укажите это свойство при создании ресурса.

hosts
список
успех
Список шаблонов хостов для сопоставления. Они должны быть валидными именами хостов, за исключением *, которое соответствует любой строке ([a-z0-9-.]*). В этом случае * должен быть первым символом и должен быть после него либо - либо .

pathMatcher
строка
успех
Имя PathMatcher для сопоставления части пути URL, если правило hostRule соответствует хосту URL.

id
целое число
успех
Уникальный идентификатор ресурса.

name
строка
успех
Имя ресурса. Предоставляется клиентом при создании ресурса. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. То есть, имя должно быть длиной от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы - тире, строчной буквой или цифрой, за исключением последнего символа, который не может быть тире.

pathMatchers
сложное
успех
Список именованных PathMatchers для применения к URL.

defaultService
словарь
успех
Ссылка на ресурс BackendService. Будет использоваться, если ни одно из правил pathRules, определённых этим PathMatcher, не соответствует части пути URL.

description
строка
успех
Необязательное описание данного ресурса.

name
строка
успех
Имя, к которому данному PathMatcher ссылается HostRule.

pathRules
сложное
успех
Список правил путей.

paths
список
успех
Список шаблонов путей для сопоставления. Каждый должен начинаться с /, и символ * разрешён только в конце после /. Строка, подаваемая в path matcher, не включает текст после первого ? или #, и эти символы здесь не допускаются.

service
словарь
успех
Ссылка на ресурс BackendService, если это правило соответствует.

tests
сложное
успех
Список ожидаемых сопоставлений URL. Запросы на обновление этого UrlMap будут успешны только в том случае, если пройдут все тестовые случаи.

description
строка
успех
Описание данного тестового случая.

host
строка
успех
Часть хоста URL.

path
строка
успех
Часть пути URL.

service
словарь
успех
Ссылка на ожидаемый ресурс BackendService, к которому должен быть сопоставлен данный URL.



Состояние

  • Этот модуль не гарантирует обратной совместимости. [превью]
  • Этот модуль поддерживается сообществом Ansible. [сообщество]

Авторы

  • 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_url_map_module.html

Spec-Zone.ru

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