Documentation

gcp_healthcheck – Create, Update or Destroy a Healthcheck.

New in version 2.4.

Synopsis

Requirements

The below requirements are needed on the host that executes this module.

  • python >= 2.6
  • google-api-python-client >= 1.6.2
  • google-auth >= 0.9.0
  • google-auth-httplib2 >= 0.0.2

Parameters

Parameter Choices/Defaults Comments
check_interval
-
Default:
5
How often (in seconds) to send a health check.
credentials_file
-
Path to the JSON file associated with the service account email
healthcheck_name
- / required
Name of the Healthcheck.
healthcheck_type
- / required
    Choices:
  • HTTP
  • HTTPS
Type of Healthcheck.
healthy_threshold
-
Default:
2
A so-far unhealthy instance will be marked healthy after this many consecutive successes.
host_header
- / required
Default:
The value of the host header in the health check request. If left empty, the public IP on behalf of which this health check is performed will be used.
port
-
The TCP port number for the health check request. The default value is 443 for HTTPS and 80 for HTTP.
project_id
-
Your GCP project ID
request_path
-
Default:
/
The request path of the HTTPS health check request.
service_account_email
-
service account email
service_account_permissions
-
added in 2.0
    Choices:
  • bigquery
  • cloud-platform
  • compute-ro
  • compute-rw
  • useraccounts-ro
  • useraccounts-rw
  • datastore
  • logging-write
  • monitoring
  • sql-admin
  • storage-full
  • storage-ro
  • storage-rw
  • taskqueue
  • userinfo-email
service account permissions (see https://cloud.google.com/sdk/gcloud/reference/compute/instances/create, --scopes section for detailed information)
state
- / required
    Choices:
  • present
  • absent
State of the Healthcheck.
timeout
-
Default:
5
How long (in seconds) to wait for a response before claiming failure. It is invalid for timeout to have a greater value than check_interval.
unhealthy_threshold
-
Default:
2
A so-far healthy instance will be marked unhealthy after this many consecutive failures.

Notes

Note

  • Only supports HTTP and HTTPS Healthchecks currently.

Examples

- name: Create Minimum HealthCheck
  gcp_healthcheck:
    service_account_email: "{{ service_account_email }}"
    credentials_file: "{{ credentials_file }}"
    project_id: "{{ project_id }}"
    healthcheck_name: my-healthcheck
    healthcheck_type: HTTP
    state: present
- name: Create HTTP HealthCheck
  gcp_healthcheck:
    service_account_email: "{{ service_account_email }}"
    credentials_file: "{{ credentials_file }}"
    project_id: "{{ project_id }}"
    healthcheck_name: my-healthcheck
    healthcheck_type: HTTP
    host: my-host
    request_path: /hc
    check_interval: 10
    timeout: 30
    unhealthy_threshhold: 2
    healthy_threshhold: 1
    state: present
- name: Create HTTPS HealthCheck
  gcp_healthcheck:
    service_account_email: "{{ service_account_email }}"
    credentials_file: "{{ credentials_file }}"
    project_id: "{{ project_id }}"
    healthcheck_name: "{{ https_healthcheck }}"
    healthcheck_type: HTTPS
    host_header: my-host
    request_path: /hc
    check_interval: 5
    timeout: 5
    unhealthy_threshold: 2
    healthy_threshold: 1
    state: present

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
healthcheck
dictionary
Always. Refer to GCP documentation for detailed field descriptions.
GCP Healthcheck dictionary

Sample:
{'port': 443, 'requestPath': '/foo', 'name': 'my-hc'}
healthcheck_name
string
Always
Name of the Healthcheck

Sample:
my-url-map
healthcheck_type
string
Always
Type of the Healthcheck

Sample:
HTTP
state
string
Always.
state of the Healthcheck

Sample:
present


Status

Authors

Hint

If you notice any issues in this documentation you can edit this document to improve it.