On this page
gce_lb - create/destroy GCE load-balancer resources
New in version 1.5.
Synopsis
- This module can create and destroy Google Compute Engine 
loadbalancerandhttphealthcheckresources. The primary LB resource is theload_balancerresource 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  
        (added in 1.6)
         | 
      
        
        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  
        (added in 1.6)
         | 
      
        
        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  
        (added in 1.6)
         | 
      
        
        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 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
- 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.6/modules/gce_lb_module.html