Documentation

cs_staticnat - Manages static NATs on Apache CloudStack based clouds.

New in version 2.0.

Synopsis

Create, update and remove static NATs.

Requirements (on host that executes module)

  • python >= 2.6
  • cs >= 0.6.10

Options

parameter required default choices comments
account
no
    Account the static NAT is related to.
    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.
              domain
              no
                Domain the static NAT is related to.
                ip_address
                yes
                  Public IP address the static NAT is assigned to.
                  poll_async
                  no True
                    Poll async jobs until job has finished.
                    project
                    no
                      Name of the project the static NAT is related to.
                      state
                      no present
                      • present
                      • absent
                      State of the static NAT.
                      vm
                      no
                        Name of virtual machine which we make the static NAT for.
                        Required if state=present.
                        vm_guest_ip
                        no
                          VM guest NIC secondary IP address for the static NAT.
                          zone
                          no
                            Name of the zone in which the virtual machine is in.
                            If not set, default zone is used.

                            Examples

                            # create a static NAT: 1.2.3.4 -> web01
                            - local_action:
                                module: cs_staticnat
                                ip_address: 1.2.3.4
                                vm: web01
                            
                            # remove a static NAT
                            - local_action:
                                module: cs_staticnat
                                ip_address: 1.2.3.4
                                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
                            vm_name Name of the virtual machine. success string web-01
                            vm_display_name Display name of the virtual machine. success string web-01
                            account Account the static NAT is related to. success string example account
                            zone Name of zone the static NAT is related to. success string ch-gva-2
                            vm_guest_ip IP of the virtual machine. success string 10.101.65.152
                            domain Domain the static NAT is related to. success string example domain
                            project Name of project the static NAT is related to. success string Production
                            ip_address Public IP address. success string 1.2.3.4
                            id UUID of the ip_address. success string a6f7a5fc-43f8-11e5-a151-feff819cdc9f


                            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.