On this page
gcp_healthcheck - Create, Update or Destroy a Healthcheck.
New in version 2.4.
Synopsis
- Create, Update or Destroy a Healthcheck. Currently only HTTP and HTTPS Healthchecks are supported. Healthchecks are used to monitor individual instances, managed instance groups and/or backend services. Healtchecks are reusable.
- Visit https://cloud.google.com/compute/docs/load-balancing/health-checks for an overview of Healthchecks on GCP.
- See https://cloud.google.com/compute/docs/reference/latest/httpHealthChecks for API details on HTTP Healthchecks.
- See https://cloud.google.com/compute/docs/reference/latest/httpsHealthChecks for more details on the HTTPS Healtcheck API.
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
|
|
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)
|
|
service account permissions (see https://cloud.google.com/sdk/gcloud/reference/compute/instances/create, --scopes section for detailed information)
|
state
required
|
|
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
dict
|
Always. Refer to GCP documentation for detailed field descriptions. |
GCP Healthcheck dictionary
Sample:
{'name': 'my-hc', 'port': 443, 'requestPath': '/foo'}
|
healthcheck_name
str
|
Always |
Name of the Healthcheck
Sample:
my-url-map
|
healthcheck_type
str
|
Always |
Type of the Healthcheck
Sample:
HTTP
|
state
str
|
Always. |
state of the Healthcheck
Sample:
present
|
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
Maintenance
This module is flagged as community which means that it is maintained by the Ansible Community. See Module Maintenance & Support for more info.
For a list of other modules that are also maintained by the Ansible Community, see here.
Author
- Tom Melendez (@supertom) <tom@supertom.com>
Hint
If you notice any issues in this documentation you can edit this document to improve it.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/gcp_healthcheck_module.html