Documentation

cs_cluster - Manages host clusters on Apache CloudStack based clouds.

New in version 2.1.

Synopsis

Create, update and remove clusters.

Requirements (on host that executes module)

  • python >= 2.6
  • cs >= 0.6.10

Options

parameter required default choices comments
api_http_method
no get
  • get
  • post
HTTP method used.
api_key
no
    API key of the CloudStack API.
    api_region
    no cloudstack
      Name of the ini section in the cloustack.ini file.
      api_secret
      no
        Secret key of the CloudStack API.
        api_timeout
        no 10
          HTTP timeout.
          api_url
          no
            URL of the CloudStack API e.g. https://cloud.example.com/client/api.
            cluster_type
            no
            • CloudManaged
            • ExternalManaged
            Type of the cluster.
            Required if state=present
            guest_vswitch_name
            no
              Name of virtual switch used for guest traffic in the cluster.
              This would override zone wide traffic label setting.
              guest_vswitch_type
              no
              • vmwaresvs
              • vmwaredvs
              Type of virtual switch used for guest traffic in the cluster.
              Allowed values are, vmwaresvs (for VMware standard vSwitch) and vmwaredvs (for VMware distributed vSwitch)
              hypervisor
              no none
              • KVM
              • VMware
              • BareMetal
              • XenServer
              • LXC
              • HyperV
              • UCS
              • OVM
              Name the hypervisor to be used.
              Required if state=present.
              name
              yes
                name of the cluster.
                ovm3_cluster
                no
                  Ovm3 native OCFS2 clustering enabled for cluster.
                  ovm3_pool
                  no
                    Ovm3 native pooling enabled for cluster.
                    ovm3_vip
                    no
                      Ovm3 vip to use for pool (and cluster).
                      password
                      no
                        Password for the cluster.
                        pod
                        no
                          Name of the pod in which the cluster belongs to.
                          public_vswitch_name
                          no
                            Name of virtual switch used for public traffic in the cluster.
                            This would override zone wide traffic label setting.
                            public_vswitch_type
                            no
                            • vmwaresvs
                            • vmwaredvs
                            Type of virtual switch used for public traffic in the cluster.
                            Allowed values are, vmwaresvs (for VMware standard vSwitch) and vmwaredvs (for VMware distributed vSwitch)
                            state
                            no present
                            • present
                            • absent
                            • disabled
                            • enabled
                            State of the cluster.
                            url
                            no
                              URL for the cluster
                              username
                              no
                                Username for the cluster.
                                vms_ip_address
                                no
                                  IP address of the VSM associated with this cluster.
                                  vms_password
                                  no
                                    Password for the VSM associated with this cluster.
                                    vms_username
                                    no
                                      Username for the VSM associated with this cluster.
                                      zone
                                      no
                                        Name of the zone in which the cluster belongs to.
                                        If not set, default zone is used.

                                        Examples

                                        # Ensure a cluster is present
                                        - local_action:
                                            module: cs_cluster
                                            name: kvm-cluster-01
                                            zone: ch-zrh-ix-01
                                            hypervisor: KVM
                                            cluster_type: CloudManaged
                                        
                                        # Ensure a cluster is disabled
                                        - local_action:
                                            module: cs_cluster
                                            name: kvm-cluster-01
                                            zone: ch-zrh-ix-01
                                            state: disabled
                                        
                                        # Ensure a cluster is enabled
                                        - local_action:
                                            module: cs_cluster
                                            name: kvm-cluster-01
                                            zone: ch-zrh-ix-01
                                            state: enabled
                                        
                                        # Ensure a cluster is absent
                                        - local_action:
                                            module: cs_cluster
                                            name: kvm-cluster-01
                                            zone: ch-zrh-ix-01
                                            state: absent
                                        

                                        Return Values

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

                                        name description returned type sample
                                        cpu_overcommit_ratio The CPU overcommit ratio of the cluster. success string 1.0
                                        name Name of the cluster. success string cluster01
                                        zone Name of zone the cluster is in. success string ch-gva-2
                                        cluster_type Type of the cluster. success string ExternalManaged
                                        ovm3_vip Ovm3 VIP to use for pooling and/or clustering success string 10.10.10.101
                                        managed_state Whether this cluster is managed by CloudStack. success string Managed
                                        memory_overcommit_ratio The memory overcommit ratio of the cluster. success string 1.0
                                        hypervisor Hypervisor of the cluster success string VMware
                                        pod Name of pod the cluster is in. success string pod01
                                        allocation_state State of the cluster. success string Enabled
                                        id UUID of the cluster. success string 04589590-ac63-4ffc-93f5-b698b8ac38b6


                                        Notes

                                        Note

                                        Ansible uses the cs library’s configuration method if credentials are not provided by the arguments api_url, api_key, api_secret. Configuration is read from several locations, in the following order. - The CLOUDSTACK_ENDPOINT, CLOUDSTACK_KEY, CLOUDSTACK_SECRET and CLOUDSTACK_METHOD. CLOUDSTACK_TIMEOUT environment variables. - A CLOUDSTACK_CONFIG environment variable pointing to an .ini file, - A cloudstack.ini file in the current working directory. - A .cloudstack.ini file in the users home directory. Optionally multiple credentials and endpoints can be specified using ini sections in cloudstack.ini. Use the argument api_region to select the section name, default section is cloudstack. See https://github.com/exoscale/cs for more information.

                                        Note

                                        This module supports check mode.

                                        This is an Extras Module

                                        For more information on what this means please read Extras Modules

                                        For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Helping Testing PRs and Developing Modules.