Spec-Zone.ru › Ansible 2.8

gcp_compute_health_check – Создаёт проверку состояния GCP

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

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

Описание

  • Проверки состояния определяют, доступны ли экземпляры и могут ли они выполнять работу.
  • Они являются важной частью комплексной конфигурации балансировки нагрузки, так как позволяют отслеживать экземпляры за балансировщиками нагрузки.
  • Проверки состояния опрашивают экземпляры с заданным интервалом. Экземпляры, которые не отвечают успешно на определённое количество запросов подряд, отмечаются как неисправные. Новые подключения к неисправным экземплярам не отправляются, хотя существующие подключения будут продолжены. Проверка состояния продолжит опрашивать неисправные экземпляры. Если экземпляр впоследствии ответит успешно на определённое количество последовательных запросов, он снова отмечается как исправный и может принимать новые подключения.

Требования

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

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
строка / обязательно
    Варианты:
  • application
  • machineaccount
  • serviceaccount
Тип используемых учетных данных.
check_interval_sec
-
Значение по умолчанию:
"5"
Как часто (в секундах) отправлять проверку состояния. Значение по умолчанию — 5 секунд.
description
-
Необязательное описание этого ресурса. Укажите это свойство при создании ресурса.
healthy_threshold
-
Значение по умолчанию:
"2"
Нездоровый экземпляр будет помечен как здоровый после этого количества последовательных успехов. Значение по умолчанию — 2.
http_health_check
-
Вложенный ресурс-объект.
host
-
Значение заголовка хоста в запросе проверки состояния HTTP.
Если оставлено пустым (значение по умолчанию), будет использоваться общедоступный IP-адрес, от имени которого выполняется проверка состояния.
port
-
Номер TCP-порта для запроса проверки состояния HTTP.
Значение по умолчанию — 80.
port_name
-
Имя порта, определенное в InstanceGroup#NamedPort#name. Если определены и порт, и имя порта, приоритет имеет порт.
proxy_header
-
    Варианты:
  • NONE ←
  • PROXY_V1
Указывает тип заголовка прокси, добавляемого перед отправкой данных в бэкенд, либо NONE, либо PROXY_V1. По умолчанию — NONE.
request_path
-
Значение по умолчанию:
"/"
Путь запроса для проверки состояния HTTP.
Значение по умолчанию — /.
response
-
Байты для сравнения с началом данных ответа. Если оставлено пустым (значение по умолчанию), любой ответ укажет на работоспособность. Данные ответа могут быть только ASCII.
https_health_check
-
Вложенный ресурс-объект.
host
-
Значение заголовка хоста в запросе проверки состояния HTTPS.
Если оставлено пустым (значение по умолчанию), будет использоваться общедоступный IP-адрес, от имени которого выполняется проверка состояния.
port
-
Номер TCP-порта для запроса проверки состояния HTTPS.
Значение по умолчанию — 443.
port_name
-
Имя порта, определенное в InstanceGroup#NamedPort#name. Если определены и порт, и имя порта, приоритет имеет порт.
proxy_header
-
    Варианты:
  • NONE ←
  • PROXY_V1
Указывает тип заголовка прокси, добавляемого перед отправкой данных в бэкенд, либо NONE, либо PROXY_V1. По умолчанию — NONE.
request_path
-
Значение по умолчанию:
"/"
Путь запроса для проверки состояния HTTPS.
Значение по умолчанию — /.
response
-
Байты для сравнения с началом данных ответа. Если оставлено пустым (значение по умолчанию), любой ответ укажет на работоспособность. Данные ответа могут быть только ASCII.
name
- / обязательно
Имя ресурса. Предоставляется клиентом при создании ресурса. Имя должно содержать 1-63 символа и соответствовать RFC1035. То есть, длина имени должна быть 1-63 символа, и оно должно соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы должны быть дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом.
project
строка
Используемый проект Google Cloud Platform.
scopes
список
Массив используемых областей.
service_account_contents
строка
Строка, представляющая содержимое файла JSON учетной записи сервиса.
Это не должно передаваться в виде словаря, а как строка с точным содержимым файла JSON учетной записи сервиса (корректный JSON).
service_account_email
строка
Необязательный адрес электронной почты учетной записи сервиса, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию.
service_account_file
путь
Путь к файлу JSON учетной записи сервиса, если в качестве типа выбран serviceaccount.
ssl_health_check
-
Вложенный ресурс-объект.
port
-
Номер TCP-порта для запроса проверки состояния SSL.
Значение по умолчанию — 443.
port_name
-
Имя порта, определенное в InstanceGroup#NamedPort#name. Если определены и порт, и имя порта, приоритет имеет порт.
proxy_header
-
    Варианты:
  • NONE ←
  • PROXY_V1
Указывает тип заголовка прокси, добавляемого перед отправкой данных в бэкенд, либо NONE, либо PROXY_V1. По умолчанию — NONE.
request
-
Прикладные данные для отправки после установления SSL-соединения (значение по умолчанию — пустое). Если и запрос, и ответ пусты, установление соединения само по себе укажет на работоспособность. Данные запроса могут быть только ASCII.
response
-
Байты для сравнения с началом данных ответа. Если оставлено пустым (значение по умолчанию), любой ответ укажет на работоспособность. Данные ответа могут быть только ASCII.
state
-
    Варианты:
  • present ←
  • absent
Указывает, должен ли данный объект существовать в GCP.
tcp_health_check
-
Вложенный ресурс-объект.
port
-
Номер TCP-порта для запроса проверки состояния TCP.
Значение по умолчанию — 443.
port_name
-
Имя порта, определенное в InstanceGroup#NamedPort#name. Если определены и порт, и имя порта, приоритет имеет порт.
proxy_header
-
    Варианты:
  • NONE ←
  • PROXY_V1
Указывает тип заголовка прокси, добавляемого перед отправкой данных в бэкенд, либо NONE, либо PROXY_V1. По умолчанию — NONE.
request
-
Данные приложения для отправки после установления TCP-соединения (значение по умолчанию — пустое). Если и request, и response пустые, установление соединения само по себе будет указывать на работоспособность. Данные запроса могут быть только ASCII.
response
-
Байты для сопоставления с началом данных ответа. Если оставлено пустым (значение по умолчанию), любой ответ укажет на работоспособность. Данные ответа могут быть только ASCII.
timeout_sec
-
Значение по умолчанию:
"5"
Время ожидания в секундах до объявления отказа.
Значение по умолчанию составляет 5 секунд. Для timeoutSec не должно быть значения больше, чем checkIntervalSec.

Псевдонимы: timeout_seconds
type
-
    Варианты:
  • TCP
  • SSL
  • HTTP
  • HTTPS
Указывает тип healthCheck: TCP, SSL, HTTP или HTTPS. Если не указан, по умолчанию используется TCP. Должен быть указан ровно один из полей, специфичных для протокола, который должен соответствовать полю type.
unhealthy_threshold
-
Значение по умолчанию:
"2"
Здоровый до этого момента экземпляр будет помечен как нездоровый после такого количества последовательных сбоев. Значение по умолчанию равно 2.

Примечания

Примечание

  • Ссылка на API: https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks
  • Официальная документация: https://cloud.google.com/load-balancing/docs/health-checks
  • Для аутентификации можно установить 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 health check
  gcp_compute_health_check:
    name: test_object
    type: TCP
    tcp_health_check:
      port_name: service-health
      request: ping
      response: pong
    healthy_threshold: 10
    timeout_sec: 2
    unhealthy_threshold: 5
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

Значения возврата

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

Ключ Возвращаемое значение Описание
checkIntervalSec
целое число
success
Как часто (в секундах) отправлять проверку работоспособности. Значение по умолчанию — 5 секунд.

creationTimestamp
строка
success
Маркер времени создания в формате RFC3339.

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

healthyThreshold
целое число
success
Неустойчивый экземпляр будет помечен как устойчивый после этого количества последовательных успехов. Значение по умолчанию — 2.

httpHealthCheck
сложный
success
Вложенный ресурс-объект.

host
строка
success
Значение заголовка host в запросе проверки работоспособности HTTP.
Если поле оставлено пустым (значение по умолчанию), будет использоваться публичный IP-адрес, от имени которого выполняется проверка работоспособности.

port
целое число
success
Номер TCP-порта для запроса проверки работоспособности HTTP.
Значение по умолчанию — 80.

portName
строка
success
Имя порта, определенное в InstanceGroup#NamedPort#name. Если заданы как порт, так и port_name, приоритет имеет порт.

proxyHeader
строка
success
Указывает тип заголовка прокси, добавляемого перед отправкой данных в бэкенд, либо NONE, либо PROXY_V1. Значение по умолчанию — NONE.

requestPath
строка
success
Путь запроса проверки работоспособности HTTP.
Значение по умолчанию — /.

response
строка
success
Байты, которые нужно сопоставить с началом данных ответа. Если поле оставлено пустым (значение по умолчанию), любой ответ укажет на работоспособность. Данные ответа могут быть только ASCII.

httpsHealthCheck
сложный
success
Вложенный ресурс-объект.

host
строка
success
Значение заголовка host в запросе проверки работоспособности HTTPS.
Если поле оставлено пустым (значение по умолчанию), будет использоваться публичный IP-адрес, от имени которого выполняется проверка работоспособности.

port
целое число
success
Номер TCP-порта для запроса проверки работоспособности HTTPS.
Значение по умолчанию — 443.

portName
строка
success
Имя порта, определенное в InstanceGroup#NamedPort#name. Если заданы как порт, так и port_name, приоритет имеет порт.

proxyHeader
строка
success
Указывает тип заголовка прокси, добавляемого перед отправкой данных в бэкенд, либо NONE, либо PROXY_V1. Значение по умолчанию — NONE.

requestPath
строка
success
Путь запроса проверки работоспособности HTTPS.
Значение по умолчанию — /.

response
строка
success
Байты, которые нужно сопоставить с началом данных ответа. Если поле оставлено пустым (значение по умолчанию), любой ответ укажет на работоспособность. Данные ответа могут быть только ASCII.

id
целое число
success
Уникальный идентификатор ресурса. Этот идентификатор задается сервером.

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

sslHealthCheck
сложный
success
Вложенный ресурс-объект.

port
целое число
success
Номер TCP-порта для запроса проверки работоспособности SSL.
Значение по умолчанию — 443.

portName
строка
success
Имя порта, определенное в InstanceGroup#NamedPort#name. Если заданы как порт, так и port_name, приоритет имеет порт.

proxyHeader
строка
success
Указывает тип заголовка прокси, добавляемого перед отправкой данных в бэкенд, либо NONE, либо PROXY_V1. Значение по умолчанию — NONE.

request
строка
success
Прикладные данные, отправляемые после установления соединения SSL (значение по умолчанию — пустое). Если и request, и response пусты, установление соединения само по себе укажет на работоспособность. Данные запроса могут быть только ASCII.

response
строка
success
Байты, которые нужно сопоставить с началом данных ответа. Если поле оставлено пустым (значение по умолчанию), любой ответ укажет на работоспособность. Данные ответа могут быть только ASCII.

tcpHealthCheck
сложный
success
Вложенный ресурс-объект.

port
целое число
success
Номер TCP-порта для запроса проверки работоспособности TCP.
Значение по умолчанию — 443.

portName
строка
success
Имя порта, определенное в InstanceGroup#NamedPort#name. Если заданы как порт, так и port_name, приоритет имеет порт.

proxyHeader
строка
success
Указывает тип заголовка прокси, добавляемого перед отправкой данных в бэкенд, либо NONE, либо PROXY_V1. Значение по умолчанию — NONE.

request
строка
success
Прикладные данные, отправляемые после установления TCP-соединения (значение по умолчанию — пустое). Если и request, и response пусты, установление соединения само по себе укажет на работоспособность. Данные запроса могут быть только ASCII.

response
строка
success
Байты, которые нужно сопоставить с началом данных ответа. Если поле оставлено пустым (значение по умолчанию), любой ответ укажет на работоспособность. Данные ответа могут быть только ASCII.

timeoutSec
целое число
success
Время ожидания (в секундах) перед признанием ошибки.
Значение по умолчанию — 5 секунд. Значение timeoutSec не может быть больше, чем checkIntervalSec.

type
строка
success
Указывает тип проверки работоспособности: TCP, SSL, HTTP или HTTPS. Если не указано, значение по умолчанию — TCP. Должен быть указан ровно один из полей проверки работоспособности, соответствующий типу.

unhealthyThreshold
целое число
success
Устойчивый экземпляр будет помечен как неустойчивый после этого количества последовательных неудач. Значение по умолчанию — 2.



Статус

  • Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
  • Этот модуль поддерживается сообществом 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_health_check_module.html

Spec-Zone.ru

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