oracle.oci.oci_compute_management_instance_pool_actions (5.0.0) — module

Perform actions on an InstancePool resource in Oracle Cloud Infrastructure

| "added in version" 2.9.0 of oracle.oci"

Authors: Oracle (@oracle)

preview | supported by community

Install collection

Install with ansible-galaxy collection install oracle.oci:==5.0.0


Add to requirements.yml

  collections:
    - name: oracle.oci
      version: 5.0.0

Description

Perform actions on an InstancePool resource in Oracle Cloud Infrastructure

For I(action=attach_load_balancer), attach a load balancer to the instance pool.

For I(action=change_compartment), moves an instance pool into a different compartment within the same tenancy. For information about moving resources between compartments, see L(Moving Resources to a Different Compartment,https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes). When you move an instance pool to a different compartment, associated resources such as the instances in the pool, boot volumes, VNICs, and autoscaling configurations are not moved.

For I(action=detach_load_balancer), detach a load balancer from the instance pool.

For I(action=reset), performs the reset (immediate power off and power on) action on the specified instance pool, which performs the action on all the instances in the pool.

For I(action=softreset), performs the softreset (ACPI shutdown and power on) action on the specified instance pool, which performs the action on all the instances in the pool. Softreset gracefully reboots the instances by sending a shutdown command to the operating systems. After waiting 15 minutes for the OS to shut down, the instances are powered off and then powered back on.

For I(action=softstop), performs the softstop (ACPI shutdown and power on) action on the specified instance pool, which performs the action on all the instances in the pool. Softstop gracefully reboots the instances by sending a shutdown command to the operating systems. After waiting 15 minutes for the OS to shutdown, the instances are powered off and then powered back on.

For I(action=start), performs the start (power on) action on the specified instance pool, which performs the action on all the instances in the pool.

For I(action=stop), performs the stop (immediate power off) action on the specified instance pool, which performs the action on all the instances in the pool.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action attach_load_balancer on instance_pool
  oci_compute_management_instance_pool_actions:
    # required
    port: 56
    vnic_selection: vnic_selection_example
    load_balancer_id: "ocid1.loadbalancer.oc1..xxxxxxEXAMPLExxxxxx"
    backend_set_name: backend_set_name_example
    instance_pool_id: "ocid1.instancepool.oc1..xxxxxxEXAMPLExxxxxx"
    action: attach_load_balancer
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action change_compartment on instance_pool
  oci_compute_management_instance_pool_actions:
    # required
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    instance_pool_id: "ocid1.instancepool.oc1..xxxxxxEXAMPLExxxxxx"
    action: change_compartment
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action detach_load_balancer on instance_pool
  oci_compute_management_instance_pool_actions:
    # required
    load_balancer_id: "ocid1.loadbalancer.oc1..xxxxxxEXAMPLExxxxxx"
    backend_set_name: backend_set_name_example
    instance_pool_id: "ocid1.instancepool.oc1..xxxxxxEXAMPLExxxxxx"
    action: detach_load_balancer
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action reset on instance_pool
  oci_compute_management_instance_pool_actions:
    # required
    instance_pool_id: "ocid1.instancepool.oc1..xxxxxxEXAMPLExxxxxx"
    action: reset
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action softreset on instance_pool
  oci_compute_management_instance_pool_actions:
    # required
    instance_pool_id: "ocid1.instancepool.oc1..xxxxxxEXAMPLExxxxxx"
    action: softreset
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action softstop on instance_pool
  oci_compute_management_instance_pool_actions:
    # required
    instance_pool_id: "ocid1.instancepool.oc1..xxxxxxEXAMPLExxxxxx"
    action: softstop
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action start on instance_pool
  oci_compute_management_instance_pool_actions:
    # required
    instance_pool_id: "ocid1.instancepool.oc1..xxxxxxEXAMPLExxxxxx"
    action: start
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action stop on instance_pool
  oci_compute_management_instance_pool_actions:
    # required
    instance_pool_id: "ocid1.instancepool.oc1..xxxxxxEXAMPLExxxxxx"
    action: stop

Inputs

    
port:
    description:
    - The port value to use when creating the backend set.
    - Required for I(action=attach_load_balancer).
    type: int

wait:
    default: true
    description: Whether to wait for create or delete operation to complete.
    type: bool

action:
    choices:
    - attach_load_balancer
    - change_compartment
    - detach_load_balancer
    - reset
    - softreset
    - softstop
    - start
    - stop
    description:
    - The action to perform on the InstancePool.
    required: true
    type: str

region:
    description:
    - The Oracle Cloud Infrastructure region to use for all OCI API requests. If not set,
      then the value of the OCI_REGION variable, if any, is used. This option is required
      if the region is not specified through a configuration file (See C(config_file_location)).
      Please refer to U(https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/regions.htm)
      for more information on OCI regions.
    type: str

tenancy:
    description:
    - OCID of your tenancy. If not set, then the value of the OCI_TENANCY variable, if
      any, is used. This option is required if the tenancy OCID is not specified through
      a configuration file (See C(config_file_location)). To get the tenancy OCID, please
      refer U(https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm)
    type: str

api_user:
    description:
    - The OCID of the user, on whose behalf, OCI APIs are invoked. If not set, then the
      value of the OCI_USER_ID environment variable, if any, is used. This option is required
      if the user is not specified through a configuration file (See C(config_file_location)).
      To get the user's OCID, please refer U(https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm).
    type: str

auth_type:
    choices:
    - api_key
    - instance_principal
    - instance_obo_user
    - resource_principal
    - security_token
    default: api_key
    description:
    - The type of authentication to use for making API requests. By default C(auth_type="api_key")
      based authentication is performed and the API key (see I(api_user_key_file)) in
      your config file will be used. If this 'auth_type' module option is not specified,
      the value of the OCI_ANSIBLE_AUTH_TYPE, if any, is used. Use C(auth_type="instance_principal")
      to use instance principal based authentication when running ansible playbooks within
      an OCI compute instance.
    type: str

cert_bundle:
    description:
    - The full path to a CA certificate bundle to be used for SSL verification. This will
      override the default CA certificate bundle. If not set, then the value of the OCI_ANSIBLE_CERT_BUNDLE
      variable, if any, is used.
    type: str

auth_purpose:
    choices:
    - service_principal
    description:
    - The auth purpose which can be used in conjunction with 'auth_type=instance_principal'.
      The default auth_purpose for instance_principal is None.
    type: str

wait_timeout:
    description: Time, in seconds, to wait when I(wait=yes). Defaults to 1200 for most
      of the services but some services might have a longer wait timeout.
    type: int

compartment_id:
    description:
    - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)
      of the compartment to move the instance pool to.
    - Required for I(action=change_compartment).
    type: str

vnic_selection:
    description:
    - Indicates which VNIC on each instance in the pool should be used to associate with
      the load balancer. Possible values are "PrimaryVnic" or the displayName of one of
      the secondary VNICs on the instance configuration that is associated with the instance
      pool.
    - Required for I(action=attach_load_balancer).
    type: str

backend_set_name:
    description:
    - The name of the backend set on the load balancer to add instances to.
    - Required for I(action=attach_load_balancer), I(action=detach_load_balancer).
    type: str

instance_pool_id:
    aliases:
    - id
    description:
    - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)
      of the instance pool.
    required: true
    type: str

load_balancer_id:
    description:
    - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)
      of the load balancer to attach to the instance pool.
    - Required for I(action=attach_load_balancer), I(action=detach_load_balancer).
    type: str

api_user_key_file:
    description:
    - Full path and filename of the private key (in PEM format). If not set, then the
      value of the OCI_USER_KEY_FILE variable, if any, is used. This option is required
      if the private key is not specified through a configuration file (See C(config_file_location)).
      If the key is encrypted with a pass-phrase, the C(api_user_key_pass_phrase) option
      must also be provided.
    type: str

config_profile_name:
    description:
    - The profile to load from the config file referenced by C(config_file_location).
      If not set, then the value of the OCI_CONFIG_PROFILE environment variable, if any,
      is used. Otherwise, defaults to the "DEFAULT" profile in C(config_file_location).
    type: str

api_user_fingerprint:
    description:
    - Fingerprint for the key pair being used. If not set, then the value of the OCI_USER_FINGERPRINT
      environment variable, if any, is used. This option is required if the key fingerprint
      is not specified through a configuration file (See C(config_file_location)). To
      get the key pair's fingerprint value please refer U(https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm).
    type: str

config_file_location:
    description:
    - Path to configuration file. If not set then the value of the OCI_CONFIG_FILE environment
      variable, if any, is used. Otherwise, defaults to ~/.oci/config.
    type: str

api_user_key_pass_phrase:
    description:
    - Passphrase used by the key referenced in C(api_user_key_file), if it is encrypted.
      If not set, then the value of the OCI_USER_KEY_PASS_PHRASE variable, if any, is
      used. This option is required if the key passphrase is not specified through a configuration
      file (See C(config_file_location)).
    type: str

realm_specific_endpoint_template_enabled:
    description:
    - Enable/Disable realm specific endpoint template for service client. By Default,
      realm specific endpoint template is disabled. If not set, then the value of the
      OCI_REALM_SPECIFIC_SERVICE_ENDPOINT_TEMPLATE_ENABLED variable, if any, is used.
    type: bool

Outputs

instance_pool:
  contains:
    compartment_id:
      description:
      - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)
        of the compartment containing the instance pool.
      returned: on success
      sample: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    defined_tags:
      description:
      - Defined tags for this resource. Each key is predefined and scoped to a namespace.
        For more information, see L(Resource Tags,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
      - 'Example: `{"Operations": {"CostCenter": "42"}}`'
      returned: on success
      sample:
        Operations:
          CostCenter: US
      type: dict
    display_name:
      description:
      - A user-friendly name. Does not have to be unique, and it's changeable. Avoid
        entering confidential information.
      returned: on success
      sample: display_name_example
      type: str
    freeform_tags:
      description:
      - Free-form tags for this resource. Each tag is a simple key-value pair with
        no predefined name, type, or namespace. For more information, see L(Resource
        Tags,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
      - 'Example: `{"Department": "Finance"}`'
      returned: on success
      sample:
        Department: Finance
      type: dict
    id:
      description:
      - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)
        of the instance pool.
      returned: on success
      sample: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    instance_configuration_id:
      description:
      - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)
        of the instance configuration associated with the instance pool.
      returned: on success
      sample: ocid1.instanceconfiguration.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    instance_display_name_formatter:
      description:
      - A user-friendly formatter for the instance pool's instances. Instance displaynames
        follow the format. The formatter does not retroactively change instance's
        displaynames, only instance displaynames in the future follow the format
      returned: on success
      sample: instance_display_name_formatter_example
      type: str
    instance_hostname_formatter:
      description:
      - A user-friendly formatter for the instance pool's instances. Instance hostnames
        follow the format. The formatter does not retroactively change instance's
        hostnames, only instance hostnames in the future follow the format
      returned: on success
      sample: instance_hostname_formatter_example
      type: str
    lifecycle_state:
      description:
      - The current state of the instance pool.
      returned: on success
      sample: PROVISIONING
      type: str
    load_balancers:
      contains:
        backend_set_name:
          description:
          - The name of the backend set on the load balancer.
          returned: on success
          sample: backend_set_name_example
          type: str
        id:
          description:
          - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)
            of the load balancer attachment.
          returned: on success
          sample: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
          type: str
        instance_pool_id:
          description:
          - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)
            of the instance pool of the load balancer attachment.
          returned: on success
          sample: ocid1.instancepool.oc1..xxxxxxEXAMPLExxxxxx
          type: str
        lifecycle_state:
          description:
          - The status of the interaction between the instance pool and the load balancer.
          returned: on success
          sample: ATTACHING
          type: str
        load_balancer_id:
          description:
          - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)
            of the load balancer attached to the instance pool.
          returned: on success
          sample: ocid1.loadbalancer.oc1..xxxxxxEXAMPLExxxxxx
          type: str
        port:
          description:
          - The port value used for the backends.
          returned: on success
          sample: 56
          type: int
        vnic_selection:
          description:
          - Indicates which VNIC on each instance in the instance pool should be used
            to associate with the load balancer. Possible values are "PrimaryVnic"
            or the displayName of one of the secondary VNICs on the instance configuration
            that is associated with the instance pool.
          returned: on success
          sample: vnic_selection_example
          type: str
      description:
      - The load balancers attached to the instance pool.
      returned: on success
      type: complex
    placement_configurations:
      contains:
        availability_domain:
          description:
          - The availability domain to place instances.
          - 'Example: `Uocm:PHX-AD-1`'
          returned: on success
          sample: Uocm:PHX-AD-1
          type: str
        fault_domains:
          description:
          - The fault domains to place instances.
          - If you don't provide any values, the system makes a best effort to distribute
            instances across all fault domains based on capacity.
          - To distribute the instances evenly across selected fault domains, provide
            a set of fault domains. For example, you might want instances to be evenly
            distributed if your applications require high availability.
          - To get a list of fault domains, use the L(ListFaultDomains,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/identity/20160918/FaultDomain/ListFaultDomains)
            operation in the Identity and Access Management Service API.
          - 'Example: `[FAULT-DOMAIN-1, FAULT-DOMAIN-2, FAULT-DOMAIN-3]`'
          returned: on success
          sample: []
          type: list
        primary_subnet_id:
          description:
          - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)
            of the primary subnet in which to place instances.
          returned: on success
          sample: ocid1.primarysubnet.oc1..xxxxxxEXAMPLExxxxxx
          type: str
        secondary_vnic_subnets:
          contains:
            display_name:
              description:
              - The display name of the VNIC. This is also used to match against the
                instance configuration defined secondary VNIC.
              returned: on success
              sample: display_name_example
              type: str
            subnet_id:
              description:
              - The subnet L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)
                for the secondary VNIC.
              returned: on success
              sample: ocid1.subnet.oc1..xxxxxxEXAMPLExxxxxx
              type: str
          description:
          - The set of secondary VNIC data for instances in the pool.
          returned: on success
          type: complex
      description:
      - The placement configurations for the instance pool.
      returned: on success
      type: complex
    size:
      description:
      - The number of instances that should be in the instance pool.
      returned: on success
      sample: 56
      type: int
    time_created:
      description:
      - 'The date and time the instance pool was created, in the format defined by
        L(RFC3339,https://tools.ietf.org/html/rfc3339). Example: `2016-08-25T21:10:29.600Z`'
      returned: on success
      sample: '2013-10-20T19:20:30+01:00'
      type: str
  description:
  - Details of the InstancePool resource acted upon by the current operation
  returned: on success
  sample:
    compartment_id: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
    defined_tags:
      Operations:
        CostCenter: US
    display_name: display_name_example
    freeform_tags:
      Department: Finance
    id: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
    instance_configuration_id: ocid1.instanceconfiguration.oc1..xxxxxxEXAMPLExxxxxx
    instance_display_name_formatter: instance_display_name_formatter_example
    instance_hostname_formatter: instance_hostname_formatter_example
    lifecycle_state: PROVISIONING
    load_balancers:
    - backend_set_name: backend_set_name_example
      id: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
      instance_pool_id: ocid1.instancepool.oc1..xxxxxxEXAMPLExxxxxx
      lifecycle_state: ATTACHING
      load_balancer_id: ocid1.loadbalancer.oc1..xxxxxxEXAMPLExxxxxx
      port: 56
      vnic_selection: vnic_selection_example
    placement_configurations:
    - availability_domain: Uocm:PHX-AD-1
      fault_domains: []
      primary_subnet_id: ocid1.primarysubnet.oc1..xxxxxxEXAMPLExxxxxx
      secondary_vnic_subnets:
      - display_name: display_name_example
        subnet_id: ocid1.subnet.oc1..xxxxxxEXAMPLExxxxxx
    size: 56
    time_created: '2013-10-20T19:20:30+01:00'
  type: complex