gce_lb – create/destroy GCE load-balancer resources
Synopsis
- This module can create and destroy Google Compute Engine
loadbalancer
andhttphealthcheck
resources. The primary LB resource is theload_balancer
resource and the health check parameters are all prefixed with httphealthcheck. The full documentation for Google Compute Engine load balancing is at https://developers.google.com/compute/docs/load-balancing/. However, the ansible module simplifies the configuration by following the libcloud model. Full install/configuration instructions for the gce* modules can be found in the comments of ansible/test/gce_tests.py.
Requirements
The below requirements are needed on the host that executes this module.
- python >= 2.6
- apache-libcloud >= 0.13.3, >= 0.17.0 if using JSON credentials
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
credentials_file - added in 2.1.0 | path to the JSON file associated with the service account email | |
external_ip - | the external static IPv4 (or auto-assigned) address for the LB | |
httphealthcheck_healthy_count - | Default: 2 | number of consecutive successful checks before marking a node healthy |
httphealthcheck_host - | host header to pass through on HTTP check requests | |
httphealthcheck_interval - | Default: 5 | the duration in seconds between each health check request |
httphealthcheck_name - | the name identifier for the HTTP health check | |
httphealthcheck_path - | Default: "/" | the url path to use for HTTP health checking |
httphealthcheck_port - | Default: 80 | the TCP port to use for HTTP health checking |
httphealthcheck_timeout - | Default: 5 | the timeout in seconds before a request is considered a failed check |
httphealthcheck_unhealthy_count - | Default: 2 | number of consecutive failed checks before marking a node unhealthy |
members - | a list of zone/nodename pairs, e.g ['us-central1-a/www-a', ...] aliases: nodes | |
name - | name of the load-balancer resource | |
pem_file - | path to the pem file associated with the service account email This option is deprecated. Use 'credentials_file'. | |
port_range - | the port (range) to forward, e.g. 80 or 8000-8888 defaults to all ports | |
project_id - | your GCE project ID | |
protocol - |
| the protocol used for the load-balancer packet forwarding, tcp or udp |
region - | the GCE region where the load-balancer is defined | |
service_account_email - | service account email | |
state - |
| desired state of the LB |
Examples
# Simple example of creating a new LB, adding members, and a health check - local_action: module: gce_lb name: testlb region: us-central1 members: ["us-central1-a/www-a", "us-central1-b/www-b"] httphealthcheck_name: hc httphealthcheck_port: 80 httphealthcheck_path: "/up"
Status
- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]
Authors
- Eric Johnson (@erjohnso) <erjohnso@google.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.8/modules/gce_lb_module.html