oracle / oracle.oci / 5.0.0 / module / oci_compute_instance Manage an Instance resource in Oracle Cloud Infrastructure | "added in version" 2.9.0 of oracle.oci" Authors: Oracle (@oracle) preview | supported by communityoracle.oci.oci_compute_instance (5.0.0) — module
Install with ansible-galaxy collection install oracle.oci:==5.0.0
collections: - name: oracle.oci version: 5.0.0
This module allows the user to create, update and delete an Instance resource in Oracle Cloud Infrastructure
For I(state=present), creates a new instance in the specified compartment and the specified availability domain. For general information about instances, see L(Overview of the Compute Service,https://docs.cloud.oracle.com/iaas/Content/Compute/Concepts/computeoverview.htm).
For information about access control and compartments, see L(Overview of the IAM Service,https://docs.cloud.oracle.com/iaas/Content/Identity/Concepts/overview.htm).
For information about availability domains, see L(Regions and Availability Domains,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/regions.htm). To get a list of availability domains, use the `ListAvailabilityDomains` operation in the Identity and Access Management Service API.
All Oracle Cloud Infrastructure resources, including instances, get an Oracle-assigned, unique ID called an Oracle Cloud Identifier (OCID). When you create a resource, you can find its OCID in the response. You can also retrieve a resource's OCID by using a List API operation on that resource type, or by viewing the resource in the Console.
To launch an instance using an image or a boot volume use the `sourceDetails` parameter in L(LaunchInstanceDetails,https://docs.cloud.oracle.com/en- us/iaas/api/#/en/iaas/latest/LaunchInstanceDetails).
When you launch an instance, it is automatically attached to a virtual network interface card (VNIC), called the *primary VNIC*. The VNIC has a private IP address from the subnet's CIDR. You can either assign a private IP address of your choice or let Oracle automatically assign one. You can choose whether the instance has a public IP address. To retrieve the addresses, use the L(ListVnicAttachments,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/VnicAttachment/ListVnicAttachments) operation to get the VNIC ID for the instance, and then call L(GetVnic,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Vnic/GetVnic) with the VNIC ID.
You can later add secondary VNICs to an instance. For more information, see L(Virtual Network Interface Cards (VNICs),https://docs.cloud.oracle.com/iaas/Content/Network/Tasks/managingVNICs.htm).
To launch an instance from a Marketplace image listing, you must provide the image ID of the listing resource version that you want, but you also must subscribe to the listing before you try to launch the instance. To subscribe to the listing, use the L(GetAppCatalogListingAgreements,https://docs.cloud.oracle.com/en- us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersionAgreements/GetAppCatalogListingAgreements) operation to get the signature for the terms of use agreement for the desired listing resource version. Then, call L(CreateAppCatalogSubscription,https://docs.cloud.oracle.com/en- us/iaas/api/#/en/iaas/latest/AppCatalogSubscription/CreateAppCatalogSubscription) with the signature. To get the image ID for the LaunchInstance operation, call L(GetAppCatalogListingResourceVersion,https://docs.cloud.oracle.com/en- us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersion/GetAppCatalogListingResourceVersion).
To determine whether capacity is available for a specific shape before you create an instance, use the L(CreateComputeCapacityReport,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/ComputeCapacityReport/CreateComputeCapacityReport) operation.
This resource has the following action operations in the M(oracle.oci.oci_compute_instance_actions) module: stop, start, softreset, reset, softstop, senddiagnosticinterrupt, diagnosticreboot, rebootmigrate.
- name: Create instance oci_compute_instance: # required availability_domain: Uocm:PHX-AD-1 compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx" # optional create_vnic_details: # optional assign_public_ip: true assign_private_dns_record: true defined_tags: {'Operations': {'CostCenter': 'US'}} display_name: display_name_example freeform_tags: {'Department': 'Finance'} hostname_label: hostname_label_example nsg_ids: [ "nsg_ids_example" ] private_ip: private_ip_example skip_source_dest_check: true subnet_id: "ocid1.subnet.oc1..xxxxxxEXAMPLExxxxxx" vlan_id: "ocid1.vlan.oc1..xxxxxxEXAMPLExxxxxx" dedicated_vm_host_id: "ocid1.dedicatedvmhost.oc1..xxxxxxEXAMPLExxxxxx" compute_cluster_id: "ocid1.computecluster.oc1..xxxxxxEXAMPLExxxxxx" hostname_label: hostname_label_example image_id: "ocid1.image.oc1..xxxxxxEXAMPLExxxxxx" ipxe_script: ipxe_script_example preemptible_instance_config: # required preemption_action: # required type: TERMINATE # optional preserve_boot_volume: true source_details: # required source_type: image # optional boot_volume_size_in_gbs: 56 image_id: "ocid1.image.oc1..xxxxxxEXAMPLExxxxxx" kms_key_id: "ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx" boot_volume_vpus_per_gb: 56 instance_source_image_filter_details: # required compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx" # optional defined_tags_filter: null operating_system: operating_system_example operating_system_version: operating_system_version_example subnet_id: "ocid1.subnet.oc1..xxxxxxEXAMPLExxxxxx" is_pv_encryption_in_transit_enabled: true platform_config: # required type: AMD_ROME_BM_GPU # optional is_secure_boot_enabled: true is_trusted_platform_module_enabled: true is_measured_boot_enabled: true is_memory_encryption_enabled: true numa_nodes_per_socket: NPS0 is_symmetric_multi_threading_enabled: true is_access_control_service_enabled: true are_virtual_instructions_enabled: true is_input_output_memory_management_unit_enabled: true instance_configuration_id: "ocid1.instanceconfiguration.oc1..xxxxxxEXAMPLExxxxxx" capacity_reservation_id: "ocid1.capacityreservation.oc1..xxxxxxEXAMPLExxxxxx" defined_tags: {'Operations': {'CostCenter': 'US'}} display_name: display_name_example freeform_tags: {'Department': 'Finance'} agent_config: # optional is_monitoring_disabled: true is_management_disabled: true are_all_plugins_disabled: true plugins_config: - # required name: name_example desired_state: ENABLED metadata: null extended_metadata: null shape: shape_example shape_config: # optional ocpus: 3.4 vcpus: 56 memory_in_gbs: 3.4 baseline_ocpu_utilization: BASELINE_1_8 nvmes: 56 instance_options: # optional are_legacy_imds_endpoints_disabled: true fault_domain: FAULT-DOMAIN-1 launch_options: # optional firmware: BIOS remote_data_volume_type: ISCSI is_consistent_volume_naming_enabled: true boot_volume_type: ISCSI network_type: E1000 is_pv_encryption_in_transit_enabled: true availability_config: # optional is_live_migration_preferred: true recovery_action: RESTORE_INSTANCE
- name: Update instance oci_compute_instance: # required instance_id: "ocid1.instance.oc1..xxxxxxEXAMPLExxxxxx" # optional capacity_reservation_id: "ocid1.capacityreservation.oc1..xxxxxxEXAMPLExxxxxx" defined_tags: {'Operations': {'CostCenter': 'US'}} display_name: display_name_example freeform_tags: {'Department': 'Finance'} agent_config: # optional is_monitoring_disabled: true is_management_disabled: true are_all_plugins_disabled: true plugins_config: - # required name: name_example desired_state: ENABLED metadata: null extended_metadata: null shape: shape_example shape_config: # optional ocpus: 3.4 vcpus: 56 memory_in_gbs: 3.4 baseline_ocpu_utilization: BASELINE_1_8 nvmes: 56 update_operation_constraint: ALLOW_DOWNTIME instance_options: # optional are_legacy_imds_endpoints_disabled: true fault_domain: FAULT-DOMAIN-1 launch_options: # optional firmware: BIOS remote_data_volume_type: ISCSI is_consistent_volume_naming_enabled: true boot_volume_type: ISCSI network_type: E1000 is_pv_encryption_in_transit_enabled: true availability_config: # optional is_live_migration_preferred: true recovery_action: RESTORE_INSTANCE time_maintenance_reboot_due: time_maintenance_reboot_due_example
- name: Update instance using name (when environment variable OCI_USE_NAME_AS_IDENTIFIER is set) oci_compute_instance: # required compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx" display_name: display_name_example # optional capacity_reservation_id: "ocid1.capacityreservation.oc1..xxxxxxEXAMPLExxxxxx" defined_tags: {'Operations': {'CostCenter': 'US'}} freeform_tags: {'Department': 'Finance'} agent_config: # optional is_monitoring_disabled: true is_management_disabled: true are_all_plugins_disabled: true plugins_config: - # required name: name_example desired_state: ENABLED metadata: null extended_metadata: null shape: shape_example shape_config: # optional ocpus: 3.4 vcpus: 56 memory_in_gbs: 3.4 baseline_ocpu_utilization: BASELINE_1_8 nvmes: 56 update_operation_constraint: ALLOW_DOWNTIME instance_options: # optional are_legacy_imds_endpoints_disabled: true fault_domain: FAULT-DOMAIN-1 launch_options: # optional firmware: BIOS remote_data_volume_type: ISCSI is_consistent_volume_naming_enabled: true boot_volume_type: ISCSI network_type: E1000 is_pv_encryption_in_transit_enabled: true availability_config: # optional is_live_migration_preferred: true recovery_action: RESTORE_INSTANCE time_maintenance_reboot_due: time_maintenance_reboot_due_example
- name: Delete instance oci_compute_instance: # required instance_id: "ocid1.instance.oc1..xxxxxxEXAMPLExxxxxx" state: absent # optional preserve_boot_volume: true
- name: Delete instance using name (when environment variable OCI_USE_NAME_AS_IDENTIFIER is set) oci_compute_instance: # required compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx" display_name: display_name_example state: absent
wait: default: true description: Whether to wait for create or delete operation to complete. type: bool shape: description: - The shape of an instance. The shape determines the number of CPUs, amount of memory, and other resources allocated to the instance. - You can enumerate all available shapes by calling L(ListShapes,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Shape/ListShapes). - This parameter is updatable. type: str state: choices: - present - absent default: present description: - The state of the Instance. - Use I(state=present) to create or update an Instance. - Use I(state=absent) to delete an Instance. required: false type: str key_by: description: The list of attributes of this resource which should be used to uniquely identify an instance of the resource. By default, all the attributes of a resource are used to uniquely identify a resource. elements: str type: list 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 image_id: description: - Deprecated. Use `sourceDetails` with L(InstanceSourceViaImageDetails,https://docs.cloud.oracle.com/en- us/iaas/api/#/en/iaas/latest/requests/InstanceSourceViaImageDetails) source type instead. If you specify values for both, the values must match. type: str metadata: description: - Custom metadata key/value pairs that you provide, such as the SSH public key required to connect to the instance. - 'A metadata service runs on every launched instance. The service is an HTTP endpoint listening on 169.254.169.254. You can use the service to:' - '* Provide information to L(Cloud-Init,https://cloudinit.readthedocs.org/en/latest/) to be used for various system initialization tasks.' - '* Get information about the instance, including the custom metadata that you provide when you launch the instance.' - '**Providing Cloud-Init Metadata**' - 'You can use the following metadata key names to provide information to Cloud-Init:' - '**"ssh_authorized_keys"** - Provide one or more public SSH keys to be included in the `~/.ssh/authorized_keys` file for the default user on the instance. Use a newline character to separate multiple keys. The SSH keys must be in the format necessary for the `authorized_keys` file, as shown in the example below.' - '**"user_data"** - Provide your own base64-encoded data to be used by Cloud-Init to run custom scripts or provide custom Cloud-Init configuration. For information about how to take advantage of user data, see the L(Cloud-Init Documentation,http://cloudinit.readthedocs.org/en/latest/topics/format.html).' - '**Metadata Example**' - ' "metadata" : { "quake_bot_level" : "Severe", "ssh_authorized_keys" : "ssh-rsa <your_public_SSH_key>== rsa-key-20160227", "user_data" : "<your_public_SSH_key>==" } **Getting Metadata on the Instance**' - 'To get information about your instance, connect to the instance using SSH and issue any of the following GET requests:' - ' curl -H "Authorization: Bearer Oracle" http://169.254.169.254/opc/v2/instance/ curl -H "Authorization: Bearer Oracle" http://169.254.169.254/opc/v2/instance/metadata/ curl -H "Authorization: Bearer Oracle" http://169.254.169.254/opc/v2/instance/metadata/<any-key-name>' - You'll get back a response that includes all the instance information; only the metadata information; or the metadata information for the specified key name, respectively. - The combined size of the `metadata` and `extendedMetadata` objects can be a maximum of 32,000 bytes. - This parameter is updatable. type: dict 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 subnet_id: description: - Deprecated. Instead use `subnetId` in L(CreateVnicDetails,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/CreateVnicDetails/). At least one of them is required; if you provide both, the values must match. 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 instance_id: aliases: - id description: - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the instance. - Required for update using I(state=present) when environment variable C(OCI_USE_NAME_AS_IDENTIFIER) is not set. - Required for delete using I(state=absent) when environment variable C(OCI_USE_NAME_AS_IDENTIFIER) is not set. type: str ipxe_script: description: - This is an advanced option. - When a bare metal or virtual machine instance boots, the iPXE firmware that runs on the instance is configured to run an iPXE script to continue the boot process. - If you want more control over the boot process, you can provide your own custom iPXE script that will run when the instance boots. Be aware that the same iPXE script will run every time an instance boots, not only after the initial LaunchInstance call. - 'The default iPXE script connects to the instance''s local boot volume over iSCSI and performs a network boot. If you use a custom iPXE script and want to network-boot from the instance''s local boot volume over iSCSI the same way as the default iPXE script, use the following iSCSI IP address: 169.254.0.2, and boot volume IQN: iqn.2015-02.oracle.boot.' - If your instance boot volume attachment type is paravirtualized, the boot volume is attached to the instance through virtio-scsi and no iPXE script is used. If your instance boot volume attachment type is paravirtualized and you use custom iPXE to network boot into your instance, the primary boot volume is attached as a data volume through virtio-scsi drive. - For more information about the Bring Your Own Image feature of Oracle Cloud Infrastructure, see L(Bring Your Own Image,https://docs.cloud.oracle.com/iaas/Content/Compute/References/bringyourownimage.htm). - For more information about iPXE, see http://ipxe.org. type: str agent_config: description: - '' - This parameter is updatable. suboptions: are_all_plugins_disabled: description: - Whether Oracle Cloud Agent can run all the available plugins. This includes the management and monitoring plugins. - To get a list of available plugins, use the L(ListInstanceagentAvailablePlugins,https://docs.cloud.oracle.com/en- us/iaas/api/#/en/instanceagent/20180530/Plugin/ListInstanceagentAvailablePlugins) operation in the Oracle Cloud Agent API. For more information about the available plugins, see L(Managing Plugins with Oracle Cloud Agent,https://docs.cloud.oracle.com/iaas/Content/Compute/Tasks/manage-plugins.htm). - This parameter is updatable. type: bool is_management_disabled: description: - Whether Oracle Cloud Agent can run all the available management plugins. Default value is false (management plugins are enabled). - 'These are the management plugins: OS Management Service Agent and Compute Instance Run Command.' - The management plugins are controlled by this parameter and by the per-plugin configuration in the `pluginsConfig` object. - '- If `isManagementDisabled` is true, all of the management plugins are disabled, regardless of the per-plugin configuration. - If `isManagementDisabled` is false, all of the management plugins are enabled. You can optionally disable individual management plugins by providing a value in the `pluginsConfig` object.' - This parameter is updatable. type: bool is_monitoring_disabled: description: - Whether Oracle Cloud Agent can gather performance metrics and monitor the instance using the monitoring plugins. Default value is false (monitoring plugins are enabled). - 'These are the monitoring plugins: Compute Instance Monitoring and Custom Logs Monitoring.' - The monitoring plugins are controlled by this parameter and by the per-plugin configuration in the `pluginsConfig` object. - '- If `isMonitoringDisabled` is true, all of the monitoring plugins are disabled, regardless of the per-plugin configuration. - If `isMonitoringDisabled` is false, all of the monitoring plugins are enabled. You can optionally disable individual monitoring plugins by providing a value in the `pluginsConfig` object.' - This parameter is updatable. type: bool plugins_config: description: - The configuration of plugins associated with this instance. elements: dict suboptions: desired_state: choices: - ENABLED - DISABLED description: - Whether the plugin should be enabled or disabled. - To enable the monitoring and management plugins, the `isMonitoringDisabled` and `isManagementDisabled` attributes must also be set to false. required: true type: str name: description: - The plugin name. To get a list of available plugins, use the L(ListInstanceagentAvailablePlugins,https://docs.cloud.oracle.com/en- us/iaas/api/#/en/instanceagent/20180530/Plugin/ListInstanceagentAvailablePlugins) operation in the Oracle Cloud Agent API. For more information about the available plugins, see L(Managing Plugins with Oracle Cloud Agent,https://docs.cloud.oracle.com/iaas/Content/Compute/Tasks/manage-plugins.htm). required: true type: str type: list type: dict 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 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"}}`' - This parameter is updatable. type: dict display_name: aliases: - name description: - A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. - Required for create, update, delete when environment variable C(OCI_USE_NAME_AS_IDENTIFIER) is set. - This parameter is updatable when C(OCI_USE_NAME_AS_IDENTIFIER) is not set. type: str fault_domain: description: - A fault domain is a grouping of hardware and infrastructure within an availability domain. Each availability domain contains three fault domains. Fault domains let you distribute your instances so that they are not on the same physical hardware within a single availability domain. A hardware failure or Compute hardware maintenance that affects one fault domain does not affect instances in other fault domains. - If you do not specify the fault domain, the system selects one for you. - 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`' - This parameter is updatable. type: str force_create: default: false description: Whether to attempt non-idempotent creation of a resource. By default, create resource is an idempotent operation, and doesn't create the resource if it already exists. Setting this option to true, forcefully creates a copy of the resource, even if it already exists.This option is mutually exclusive with I(key_by). type: bool shape_config: description: - '' - This parameter is updatable. suboptions: baseline_ocpu_utilization: choices: - BASELINE_1_8 - BASELINE_1_2 - BASELINE_1_1 description: - The baseline OCPU utilization for a subcore burstable VM instance. Leave this attribute blank for a non-burstable instance, or explicitly specify non-burstable with `BASELINE_1_1`. - 'The following values are supported: - `BASELINE_1_8` - baseline usage is 1/8 of an OCPU. - `BASELINE_1_2` - baseline usage is 1/2 of an OCPU. - `BASELINE_1_1` - baseline usage is an entire OCPU. This represents a non-burstable instance.' - This parameter is updatable. type: str memory_in_gbs: description: - The total amount of memory available to the instance, in gigabytes. - This parameter is updatable. type: float nvmes: description: - The number of NVMe drives to be used for storage. A single drive has 6.8 TB available. - This parameter is updatable. type: int ocpus: description: - The total number of OCPUs available to the instance. - This parameter is updatable. type: float vcpus: description: - The total number of VCPUs available to the instance. This can be used instead of OCPUs, in which case the actual number of OCPUs will be calculated based on this value and the actual hardware. This must be a multiple of 2. - This parameter is updatable. type: int type: dict 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 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"}`' - This parameter is updatable. type: dict compartment_id: description: - The OCID of the compartment. - Required for create using I(state=present). - Required for update when environment variable C(OCI_USE_NAME_AS_IDENTIFIER) is set. - Required for delete when environment variable C(OCI_USE_NAME_AS_IDENTIFIER) is set. type: str hostname_label: description: - Deprecated. Instead use `hostnameLabel` in L(CreateVnicDetails,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/CreateVnicDetails/). If you provide both, the values must match. type: str launch_options: description: - '' - This parameter is updatable. suboptions: boot_volume_type: choices: - ISCSI - SCSI - IDE - VFIO - PARAVIRTUALIZED description: - Emulation type for the boot volume. * `ISCSI` - ISCSI attached block storage device. * `SCSI` - Emulated SCSI disk. * `IDE` - Emulated IDE disk. * `VFIO` - Direct attached Virtual Function storage. This is the default option for local data volumes on platform images. * `PARAVIRTUALIZED` - Paravirtualized disk. This is the default for boot volumes and remote block storage volumes on platform images. - This parameter is updatable. type: str firmware: choices: - BIOS - UEFI_64 description: - Firmware used to boot VM. Select the option that matches your operating system. * `BIOS` - Boot VM using BIOS style firmware. This is compatible with both 32 bit and 64 bit operating systems that boot using MBR style bootloaders. * `UEFI_64` - Boot VM using UEFI style firmware compatible with 64 bit operating systems. This is the default for platform images. type: str is_consistent_volume_naming_enabled: description: - Whether to enable consistent volume naming feature. Defaults to false. type: bool is_pv_encryption_in_transit_enabled: description: - Deprecated. Instead use `isPvEncryptionInTransitEnabled` in L(LaunchInstanceDetails,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/datatypes/LaunchInstanceDetails). - This parameter is updatable. type: bool network_type: choices: - E1000 - VFIO - PARAVIRTUALIZED description: - Emulation type for the physical network interface card (NIC). * `E1000` - Emulated Gigabit ethernet controller. Compatible with Linux e1000 network driver. * `VFIO` - Direct attached Virtual Function network controller. This is the networking type when you launch an instance using hardware-assisted (SR-IOV) networking. * `PARAVIRTUALIZED` - VM instances launch with paravirtualized devices using VirtIO drivers. - This parameter is updatable. type: str remote_data_volume_type: choices: - ISCSI - SCSI - IDE - VFIO - PARAVIRTUALIZED description: - Emulation type for volume. * `ISCSI` - ISCSI attached block storage device. * `SCSI` - Emulated SCSI disk. * `IDE` - Emulated IDE disk. * `VFIO` - Direct attached Virtual Function storage. This is the default option for local data volumes on platform images. * `PARAVIRTUALIZED` - Paravirtualized disk. This is the default for boot volumes and remote block storage volumes on platform images. type: str type: dict source_details: description: - '' suboptions: boot_volume_id: description: - The OCID of the boot volume used to boot the instance. - Required when source_type is 'bootVolume' type: str boot_volume_size_in_gbs: description: - The size of the boot volume in GBs. Minimum value is 50 GB and maximum value is 32,768 GB (32 TB). - Applicable when source_type is 'image' type: int boot_volume_vpus_per_gb: description: - The number of volume performance units (VPUs) that will be applied to this volume per GB, representing the Block Volume service's elastic performance options. See L(Block Volume Performance Levels,https://docs.cloud.oracle.com/iaas/Content/Block/Concepts/blockvolumeperformance.htm#perf_levels) for more information. - 'Allowed values:' - ' * `10`: Represents Balanced option.' - ' * `20`: Represents Higher Performance option.' - ' * `30`-`120`: Represents the Ultra High Performance option.' - For volumes with the auto-tuned performance feature enabled, this is set to the default (minimum) VPUs/GB. - Applicable when source_type is 'image' type: int image_id: description: - The OCID of the image used to boot the instance. - Applicable when source_type is 'image' type: str instance_source_image_filter_details: description: - '' - Applicable when source_type is 'image' suboptions: compartment_id: description: - The OCID of the compartment containing images to search - Required when source_type is 'image' required: true type: str defined_tags_filter: description: - Filter based on these defined tags. 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). - Applicable when source_type is 'image' type: dict operating_system: description: - The image's operating system. - 'Example: `Oracle Linux`' - Applicable when source_type is 'image' type: str operating_system_version: description: - The image's operating system version. - 'Example: `7.2`' - Applicable when source_type is 'image' type: str type: dict kms_key_id: description: - The OCID of the Vault service key to assign as the master encryption key for the boot volume. - Applicable when source_type is 'image' type: str source_type: choices: - image - bootVolume description: - The source type for the instance. Use `image` when specifying the image OCID. Use `bootVolume` when specifying the boot volume OCID. required: true type: str type: dict platform_config: description: - '' suboptions: are_virtual_instructions_enabled: description: - Whether virtualization instructions are available. For example, Secure Virtual Machine for AMD shapes or VT-x for Intel shapes. - Applicable when type is one of ['AMD_MILAN_BM', 'AMD_MILAN_BM_GPU', 'AMD_ROME_BM_GPU', 'AMD_ROME_BM'] type: bool is_access_control_service_enabled: description: - Whether the Access Control Service is enabled on the instance. When enabled, the platform can enforce PCIe device isolation, required for VFIO device pass-through. - Applicable when type is one of ['AMD_MILAN_BM', 'AMD_MILAN_BM_GPU', 'AMD_ROME_BM_GPU', 'AMD_ROME_BM'] type: bool is_input_output_memory_management_unit_enabled: description: - Whether the input-output memory management unit is enabled. - Applicable when type is one of ['AMD_MILAN_BM', 'AMD_MILAN_BM_GPU', 'AMD_ROME_BM_GPU', 'AMD_ROME_BM', 'INTEL_ICELAKE_BM'] type: bool is_measured_boot_enabled: description: - Whether the Measured Boot feature is enabled on the instance. type: bool is_memory_encryption_enabled: description: - Whether the instance is a confidential instance. If this value is `true`, the instance is a confidential instance. The default value is `false`. type: bool is_secure_boot_enabled: description: - Whether Secure Boot is enabled on the instance. type: bool is_symmetric_multi_threading_enabled: description: - Whether symmetric multithreading is enabled on the instance. Symmetric multithreading is also called simultaneous multithreading (SMT) or Intel Hyper-Threading. - Intel and AMD processors have two hardware execution threads per core (OCPU). SMT permits multiple independent threads of execution, to better use the resources and increase the efficiency of the CPU. When multithreading is disabled, only one thread is permitted to run on each core, which can provide higher or more predictable performance for some workloads. - Applicable when type is one of ['AMD_MILAN_BM', 'AMD_MILAN_BM_GPU', 'AMD_ROME_BM_GPU', 'AMD_ROME_BM', 'INTEL_ICELAKE_BM'] type: bool is_trusted_platform_module_enabled: description: - Whether the Trusted Platform Module (TPM) is enabled on the instance. type: bool numa_nodes_per_socket: choices: - NPS0 - NPS1 - NPS2 - NPS4 description: - The number of NUMA nodes per socket (NPS). - Applicable when type is one of ['AMD_MILAN_BM', 'AMD_MILAN_BM_GPU', 'AMD_ROME_BM_GPU', 'AMD_ROME_BM', 'INTEL_ICELAKE_BM'] type: str percentage_of_cores_enabled: description: - The percentage of cores enabled. Value must be a multiple of 25%. If the requested percentage results in a fractional number of cores, the system rounds up the number of cores across processors and provisions an instance with a whole number of cores. - If the applications that you run on the instance use a core-based licensing model and need fewer cores than the full size of the shape, you can disable cores to reduce your licensing costs. The instance itself is billed for the full shape, regardless of whether all cores are enabled. - Applicable when type is one of ['AMD_MILAN_BM', 'AMD_ROME_BM', 'INTEL_ICELAKE_BM'] type: int type: choices: - AMD_ROME_BM_GPU - AMD_ROME_BM - INTEL_ICELAKE_BM - AMD_VM - INTEL_VM - INTEL_SKYLAKE_BM - AMD_MILAN_BM - AMD_MILAN_BM_GPU description: - The type of platform being configured. required: true type: str type: dict instance_options: description: - '' - This parameter is updatable. suboptions: are_legacy_imds_endpoints_disabled: description: - Whether to disable the legacy (/v1) instance metadata service endpoints. Customers who have migrated to /v2 should set this to true for added security. Default is false. type: bool type: dict 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 extended_metadata: description: - Additional metadata key/value pairs that you provide. They serve the same purpose and functionality as fields in the `metadata` object. - They are distinguished from `metadata` fields in that these can be nested JSON objects (whereas `metadata` fields are string/string maps only). - The combined size of the `metadata` and `extendedMetadata` objects can be a maximum of 32,000 bytes. - This parameter is updatable. type: dict compute_cluster_id: description: - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the L(compute cluster,https://docs.cloud.oracle.com/iaas/Content/Compute/Tasks/compute-clusters.htm) that the instance will be created in. type: str availability_config: description: - '' - This parameter is updatable. suboptions: is_live_migration_preferred: description: - Whether to live migrate supported VM instances to a healthy physical VM host without disrupting running instances during infrastructure maintenance events. If null, Oracle chooses the best option for migrating the VM during infrastructure maintenance events. - This parameter is updatable. type: bool recovery_action: choices: - RESTORE_INSTANCE - STOP_INSTANCE description: - The lifecycle state for an instance when it is recovered after infrastructure maintenance. * `RESTORE_INSTANCE` - The instance is restored to the lifecycle state it was in before the maintenance event. If the instance was running, it is automatically rebooted. This is the default action when a value is not set. * `STOP_INSTANCE` - The instance is recovered in the stopped state. - This parameter is updatable. type: str type: dict availability_domain: description: - The availability domain of the instance. - 'Example: `Uocm:PHX-AD-1`' - Required for create using I(state=present). 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 create_vnic_details: description: - '' suboptions: assign_private_dns_record: description: - Whether the VNIC should be assigned a DNS record. If set to false, there will be no DNS record registration for the VNIC. If set to true, the DNS record will be registered. The default value is true. - If you specify a `hostnameLabel`, then `assignPrivateDnsRecord` must be set to true. type: bool assign_public_ip: description: - Whether the VNIC should be assigned a public IP address. Defaults to whether the subnet is public or private. If not set and the VNIC is being created in a private subnet (that is, where `prohibitPublicIpOnVnic` = true in the L(Subnet,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Subnet/)), then no public IP address is assigned. If not set and the subnet is public (`prohibitPublicIpOnVnic` = false), then a public IP address is assigned. If set to true and `prohibitPublicIpOnVnic` = true, an error is returned. - '**Note:** This public IP address is associated with the primary private IP on the VNIC. For more information, see L(IP Addresses,https://docs.cloud.oracle.com/iaas/Content/Network/Tasks/managingIPaddresses.htm).' - '**Note:** There''s a limit to the number of L(public IPs,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/PublicIp/) a VNIC or instance can have. If you try to create a secondary VNIC with an assigned public IP for an instance that has already reached its public IP limit, an error is returned. For information about the public IP limits, see L(Public IP Addresses,https://docs.cloud.oracle.com/iaas/Content/Network/Tasks/managingpublicIPs.htm).' - 'Example: `false`' - If you specify a `vlanId`, then `assignPublicIp` must be set to false. See L(Vlan,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Vlan). type: bool 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"}}`' type: dict display_name: aliases: - name description: - A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. 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"}`' type: dict hostname_label: description: - The hostname for the VNIC's primary private IP. Used for DNS. The value is the hostname portion of the primary private IP's fully qualified domain name (FQDN) (for example, `bminstance1` in FQDN `bminstance1.subnet123.vcn1.oraclevcn.com`). Must be unique across all VNICs in the subnet and comply with L(RFC 952,https://tools.ietf.org/html/rfc952) and L(RFC 1123,https://tools.ietf.org/html/rfc1123). The value appears in the L(Vnic,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Vnic/) object and also the L(PrivateIp,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/PrivateIp/) object returned by L(ListPrivateIps,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/PrivateIp/ListPrivateIps) and L(GetPrivateIp,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/PrivateIp/GetPrivateIp). - For more information, see L(DNS in Your Virtual Cloud Network,https://docs.cloud.oracle.com/iaas/Content/Network/Concepts/dns.htm). - When launching an instance, use this `hostnameLabel` instead of the deprecated `hostnameLabel` in L(LaunchInstanceDetails,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/requests/LaunchInstanceDetails). If you provide both, the values must match. - 'Example: `bminstance1`' - If you specify a `vlanId`, the `hostnameLabel` cannot be specified. VNICs on a VLAN can not be assigned a hostname. See L(Vlan,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Vlan). type: str nsg_ids: description: - A list of the OCIDs of the network security groups (NSGs) to add the VNIC to. For more information about NSGs, see L(NetworkSecurityGroup,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/NetworkSecurityGroup/). - If a `vlanId` is specified, the `nsgIds` cannot be specified. The `vlanId` indicates that the VNIC will belong to a VLAN instead of a subnet. With VLANs, all VNICs in the VLAN belong to the NSGs that are associated with the VLAN. See L(Vlan,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Vlan). elements: str type: list private_ip: description: - A private IP address of your choice to assign to the VNIC. Must be an available IP address within the subnet's CIDR. If you don't specify a value, Oracle automatically assigns a private IP address from the subnet. This is the VNIC's *primary* private IP address. The value appears in the L(Vnic,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Vnic/) object and also the L(PrivateIp,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/PrivateIp/) object returned by L(ListPrivateIps,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/PrivateIp/ListPrivateIps) and L(GetPrivateIp,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/PrivateIp/GetPrivateIp). - If you specify a `vlanId`, the `privateIp` cannot be specified. See L(Vlan,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Vlan). - 'Example: `10.0.3.3`' type: str skip_source_dest_check: description: - Whether the source/destination check is disabled on the VNIC. Defaults to `false`, which means the check is performed. For information about why you would skip the source/destination check, see L(Using a Private IP as a Route Target,https://docs.cloud.oracle.com/iaas/Content/Network/Tasks/managingroutetables.htm#privateip). - If you specify a `vlanId`, the `skipSourceDestCheck` cannot be specified because the source/destination check is always disabled for VNICs in a VLAN. See L(Vlan,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Vlan). - 'Example: `true`' type: bool subnet_id: description: - The L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the subnet to create the VNIC in. When launching an instance, use this `subnetId` instead of the deprecated `subnetId` in L(LaunchInstanceDetails,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/requests/LaunchInstanceDetails). At least one of them is required; if you provide both, the values must match. - If you are an Oracle Cloud VMware Solution customer and creating a secondary VNIC in a VLAN instead of a subnet, provide a `vlanId` instead of a `subnetId`. If you provide both a `vlanId` and `subnetId`, the request fails. type: str vlan_id: description: - Provide this attribute only if you are an Oracle Cloud VMware Solution customer and creating a secondary VNIC in a VLAN. The value is the L(OCID,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VLAN. See L(Vlan,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Vlan). - Provide a `vlanId` instead of a `subnetId`. If you provide both a `vlanId` and `subnetId`, the request fails. type: str type: dict 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 dedicated_vm_host_id: description: - The OCID of the dedicated virtual machine host to place the instance on. type: str preserve_boot_volume: description: - Specifies whether to delete or preserve the boot volume when terminating an instance. When set to `true`, the boot volume is preserved. The default value is `false`. type: bool capacity_reservation_id: description: - The OCID of the compute capacity reservation this instance is launched under. You can opt out of all default reservations by specifying an empty string as input for this field. For more information, see L(Capacity Reservations,https://docs.cloud.oracle.com/iaas/Content/Compute/Tasks/reserve-capacity.htm#default). - This parameter is updatable. 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 instance_configuration_id: description: - The OCID of the Instance Configuration containing instance launch details. Any other fields supplied in this instance launch request will override the details stored in the Instance Configuration for this instance launch. type: str preemptible_instance_config: description: - '' suboptions: preemption_action: description: - '' required: true suboptions: preserve_boot_volume: description: - Whether to preserve the boot volume that was used to launch the preemptible instance when the instance is terminated. Defaults to false if not specified. type: bool type: choices: - TERMINATE description: - The type of action to run when the instance is interrupted for eviction. required: true type: str type: dict type: dict time_maintenance_reboot_due: description: - For a VM instance, resets the scheduled time that the instance will be reboot migrated for infrastructure maintenance, in the format defined by L(RFC3339,https://tools.ietf.org/html/rfc3339). If the instance hasn't been rebooted after this date, Oracle reboots the instance within 24 hours of the time and date that maintenance is due. - To get the maximum possible date that a maintenance reboot can be extended, use L(GetInstanceMaintenanceReboot,https://docs.cloud.oracle.com/en- us/iaas/api/#/en/iaas/latest/InstanceMaintenanceReboot/GetInstanceMaintenanceReboot). - Regardless of how the instance is stopped, this flag is reset to empty as soon as the instance reaches the Stopped state. - To reboot migrate a bare metal instance, use the L(InstanceAction,https://docs.cloud.oracle.com/en- us/iaas/api/#/en/iaas/latest/Instance/InstanceAction) operation. - For more information, see L(Infrastructure Maintenance,https://docs.cloud.oracle.com/iaas/Content/Compute/References/infrastructure-maintenance.htm). - 'Example: `2018-05-25T21:10:29.600Z`' - This parameter is updatable. type: str update_operation_constraint: choices: - ALLOW_DOWNTIME - AVOID_DOWNTIME description: - The parameter acts as a fail-safe to prevent unwanted downtime when updating a running instance. The default is ALLOW_DOWNTIME. * `ALLOW_DOWNTIME` - Compute might reboot the instance while updating the instance if a reboot is required. * `AVOID_DOWNTIME` - If the instance is in running state, Compute tries to update the instance without rebooting it. If the instance requires a reboot to be updated, an error is returned and the instance is not updated. If the instance is stopped, it is updated and remains in the stopped state. - This parameter is updatable. type: str is_pv_encryption_in_transit_enabled: description: - Whether to enable in-transit encryption for the data volume's paravirtualized attachment. This field applies to both block volumes and boot volumes. The default value is false. type: bool 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
instance: contains: agent_config: contains: are_all_plugins_disabled: description: - Whether Oracle Cloud Agent can run all of the available plugins. This includes the management and monitoring plugins. - For more information about the available plugins, see L(Managing Plugins with Oracle Cloud Agent,https://docs.cloud.oracle.com/iaas/Content/Compute/Tasks/manage-plugins.htm). returned: on success sample: true type: bool is_management_disabled: description: - Whether Oracle Cloud Agent can run all the available management plugins. - 'These are the management plugins: OS Management Service Agent and Compute Instance Run Command.' - The management plugins are controlled by this parameter and by the per-plugin configuration in the `pluginsConfig` object. - '- If `isManagementDisabled` is true, all of the management plugins are disabled, regardless of the per-plugin configuration. - If `isManagementDisabled` is false, all of the management plugins are enabled. You can optionally disable individual management plugins by providing a value in the `pluginsConfig` object.' returned: on success sample: true type: bool is_monitoring_disabled: description: - Whether Oracle Cloud Agent can gather performance metrics and monitor the instance using the monitoring plugins. - 'These are the monitoring plugins: Compute Instance Monitoring and Custom Logs Monitoring.' - The monitoring plugins are controlled by this parameter and by the per-plugin configuration in the `pluginsConfig` object. - '- If `isMonitoringDisabled` is true, all of the monitoring plugins are disabled, regardless of the per-plugin configuration. - If `isMonitoringDisabled` is false, all of the monitoring plugins are enabled. You can optionally disable individual monitoring plugins by providing a value in the `pluginsConfig` object.' returned: on success sample: true type: bool plugins_config: contains: desired_state: description: - Whether the plugin should be enabled or disabled. - To enable the monitoring and management plugins, the `isMonitoringDisabled` and `isManagementDisabled` attributes must also be set to false. returned: on success sample: ENABLED type: str name: description: - The plugin name. To get a list of available plugins, use the L(ListInstanceagentAvailablePlugins,https://docs.cloud.oracle.com/en- us/iaas/api/#/en/instanceagent/20180530/Plugin/ListInstanceagentAvailablePlugins) operation in the Oracle Cloud Agent API. For more information about the available plugins, see L(Managing Plugins with Oracle Cloud Agent,https://docs.cloud.oracle.com/iaas/Content/Compute/Tasks/manage-plugins.htm). returned: on success sample: name_example type: str description: - The configuration of plugins associated with this instance. returned: on success type: complex description: - '' returned: on success type: complex availability_config: contains: is_live_migration_preferred: description: - Whether to live migrate supported VM instances to a healthy physical VM host without disrupting running instances during infrastructure maintenance events. If null, Oracle chooses the best option for migrating the VM during infrastructure maintenance events. returned: on success sample: true type: bool recovery_action: description: - The lifecycle state for an instance when it is recovered after infrastructure maintenance. * `RESTORE_INSTANCE` - The instance is restored to the lifecycle state it was in before the maintenance event. If the instance was running, it is automatically rebooted. This is the default action when a value is not set. * `STOP_INSTANCE` - The instance is recovered in the stopped state. returned: on success sample: RESTORE_INSTANCE type: str description: - '' returned: on success type: complex availability_domain: description: - The availability domain the instance is running in. - 'Example: `Uocm:PHX-AD-1`' returned: on success sample: Uocm:PHX-AD-1 type: str capacity_reservation_id: description: - The OCID of the compute capacity reservation this instance is launched under. When this field contains an empty string or is null, the instance is not currently in a capacity reservation. For more information, see L(Capacity Reservations,https://docs.cloud.oracle.com/iaas/Content/Compute/Tasks/reserve-capacity.htm#default). returned: on success sample: ocid1.capacityreservation.oc1..xxxxxxEXAMPLExxxxxx type: str compartment_id: description: - The OCID of the compartment that contains the instance. returned: on success sample: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx type: str dedicated_vm_host_id: description: - The OCID of the dedicated virtual machine host that the instance is placed on. returned: on success sample: ocid1.dedicatedvmhost.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 extended_metadata: description: - Additional metadata key/value pairs that you provide. They serve the same purpose and functionality as fields in the `metadata` object. - They are distinguished from `metadata` fields in that these can be nested JSON objects (whereas `metadata` fields are string/string maps only). returned: on success sample: {} type: dict fault_domain: description: - The name of the fault domain the instance is running in. - A fault domain is a grouping of hardware and infrastructure within an availability domain. Each availability domain contains three fault domains. Fault domains let you distribute your instances so that they are not on the same physical hardware within a single availability domain. A hardware failure or Compute hardware maintenance that affects one fault domain does not affect instances in other fault domains. - If you do not specify the fault domain, the system selects one for you. - 'Example: `FAULT-DOMAIN-1`' returned: on success sample: FAULT-DOMAIN-1 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 OCID of the instance. returned: on success sample: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx type: str image_id: description: - Deprecated. Use `sourceDetails` instead. returned: on success sample: ocid1.image.oc1..xxxxxxEXAMPLExxxxxx type: str instance_configuration_id: description: - The OCID of the Instance Configuration used to source launch details for this instance. Any other fields supplied in the instance launch request override the details stored in the Instance Configuration for this instance launch. returned: on success sample: ocid1.instanceconfiguration.oc1..xxxxxxEXAMPLExxxxxx type: str instance_options: contains: are_legacy_imds_endpoints_disabled: description: - Whether to disable the legacy (/v1) instance metadata service endpoints. Customers who have migrated to /v2 should set this to true for added security. Default is false. returned: on success sample: true type: bool description: - '' returned: on success type: complex ipxe_script: description: - When a bare metal or virtual machine instance boots, the iPXE firmware that runs on the instance is configured to run an iPXE script to continue the boot process. - If you want more control over the boot process, you can provide your own custom iPXE script that will run when the instance boots. Be aware that the same iPXE script will run every time an instance boots, not only after the initial LaunchInstance call. - 'The default iPXE script connects to the instance''s local boot volume over iSCSI and performs a network boot. If you use a custom iPXE script and want to network-boot from the instance''s local boot volume over iSCSI the same way as the default iPXE script, use the following iSCSI IP address: 169.254.0.2, and boot volume IQN: iqn.2015-02.oracle.boot.' - If your instance boot volume attachment type is paravirtualized, the boot volume is attached to the instance through virtio-scsi and no iPXE script is used. If your instance boot volume attachment type is paravirtualized and you use custom iPXE to network boot into your instance, the primary boot volume is attached as a data volume through virtio-scsi drive. - For more information about the Bring Your Own Image feature of Oracle Cloud Infrastructure, see L(Bring Your Own Image,https://docs.cloud.oracle.com/iaas/Content/Compute/References/bringyourownimage.htm). - For more information about iPXE, see http://ipxe.org. returned: on success sample: ipxe_script_example type: str is_cross_numa_node: description: - Whether the instance's OCPUs and memory are distributed across multiple NUMA nodes. returned: on success sample: true type: bool launch_mode: description: - 'Specifies the configuration mode for launching virtual machine (VM) instances. The configuration modes are: * `NATIVE` - VM instances launch with iSCSI boot and VFIO devices. The default value for platform images. * `EMULATED` - VM instances launch with emulated devices, such as the E1000 network driver and emulated SCSI disk controller. * `PARAVIRTUALIZED` - VM instances launch with paravirtualized devices using VirtIO drivers. * `CUSTOM` - VM instances launch with custom configuration settings specified in the `LaunchOptions` parameter.' returned: on success sample: NATIVE type: str launch_options: contains: boot_volume_type: description: - Emulation type for the boot volume. * `ISCSI` - ISCSI attached block storage device. * `SCSI` - Emulated SCSI disk. * `IDE` - Emulated IDE disk. * `VFIO` - Direct attached Virtual Function storage. This is the default option for local data volumes on platform images. * `PARAVIRTUALIZED` - Paravirtualized disk. This is the default for boot volumes and remote block storage volumes on platform images. returned: on success sample: ISCSI type: str firmware: description: - Firmware used to boot VM. Select the option that matches your operating system. * `BIOS` - Boot VM using BIOS style firmware. This is compatible with both 32 bit and 64 bit operating systems that boot using MBR style bootloaders. * `UEFI_64` - Boot VM using UEFI style firmware compatible with 64 bit operating systems. This is the default for platform images. returned: on success sample: BIOS type: str is_consistent_volume_naming_enabled: description: - Whether to enable consistent volume naming feature. Defaults to false. returned: on success sample: true type: bool is_pv_encryption_in_transit_enabled: description: - Deprecated. Instead use `isPvEncryptionInTransitEnabled` in L(LaunchInstanceDetails,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/datatypes/LaunchInstanceDetails). returned: on success sample: true type: bool network_type: description: - Emulation type for the physical network interface card (NIC). * `E1000` - Emulated Gigabit ethernet controller. Compatible with Linux e1000 network driver. * `VFIO` - Direct attached Virtual Function network controller. This is the networking type when you launch an instance using hardware-assisted (SR-IOV) networking. * `PARAVIRTUALIZED` - VM instances launch with paravirtualized devices using VirtIO drivers. returned: on success sample: E1000 type: str remote_data_volume_type: description: - Emulation type for volume. * `ISCSI` - ISCSI attached block storage device. * `SCSI` - Emulated SCSI disk. * `IDE` - Emulated IDE disk. * `VFIO` - Direct attached Virtual Function storage. This is the default option for local data volumes on platform images. * `PARAVIRTUALIZED` - Paravirtualized disk. This is the default for boot volumes and remote block storage volumes on platform images. returned: on success sample: ISCSI type: str description: - '' returned: on success type: complex lifecycle_state: description: - The current state of the instance. returned: on success sample: MOVING type: str metadata: description: - Custom metadata that you provide. returned: on success sample: {} type: dict platform_config: contains: are_virtual_instructions_enabled: description: - Whether virtualization instructions are available. For example, Secure Virtual Machine for AMD shapes or VT-x for Intel shapes. returned: on success sample: true type: bool is_access_control_service_enabled: description: - Whether the Access Control Service is enabled on the instance. When enabled, the platform can enforce PCIe device isolation, required for VFIO device pass-through. returned: on success sample: true type: bool is_input_output_memory_management_unit_enabled: description: - Whether the input-output memory management unit is enabled. returned: on success sample: true type: bool is_measured_boot_enabled: description: - Whether the Measured Boot feature is enabled on the instance. returned: on success sample: true type: bool is_memory_encryption_enabled: description: - Whether the instance is a confidential instance. If this value is `true`, the instance is a confidential instance. The default value is `false`. returned: on success sample: true type: bool is_secure_boot_enabled: description: - Whether Secure Boot is enabled on the instance. returned: on success sample: true type: bool is_symmetric_multi_threading_enabled: description: - Whether symmetric multithreading is enabled on the instance. Symmetric multithreading is also called simultaneous multithreading (SMT) or Intel Hyper-Threading. - Intel and AMD processors have two hardware execution threads per core (OCPU). SMT permits multiple independent threads of execution, to better use the resources and increase the efficiency of the CPU. When multithreading is disabled, only one thread is permitted to run on each core, which can provide higher or more predictable performance for some workloads. returned: on success sample: true type: bool is_trusted_platform_module_enabled: description: - Whether the Trusted Platform Module (TPM) is enabled on the instance. returned: on success sample: true type: bool numa_nodes_per_socket: description: - The number of NUMA nodes per socket (NPS). returned: on success sample: NPS0 type: str percentage_of_cores_enabled: description: - The percentage of cores enabled. Value must be a multiple of 25%. If the requested percentage results in a fractional number of cores, the system rounds up the number of cores across processors and provisions an instance with a whole number of cores. - If the applications that you run on the instance use a core-based licensing model and need fewer cores than the full size of the shape, you can disable cores to reduce your licensing costs. The instance itself is billed for the full shape, regardless of whether all cores are enabled. returned: on success sample: 56 type: int type: description: - The type of platform being configured. returned: on success sample: AMD_MILAN_BM type: str description: - '' returned: on success type: complex preemptible_instance_config: contains: preemption_action: contains: preserve_boot_volume: description: - Whether to preserve the boot volume that was used to launch the preemptible instance when the instance is terminated. Defaults to false if not specified. returned: on success sample: true type: bool type: description: - The type of action to run when the instance is interrupted for eviction. returned: on success sample: TERMINATE type: str description: - '' returned: on success type: complex description: - '' returned: on success type: complex primary_private_ip: description: - The private IP of the primary VNIC attached to this instance returned: on success sample: 10.0.0.10 type: str primary_public_ip: description: - The public IP of the primary VNIC attached to this instance returned: on success sample: 140.34.93.209 type: str region: description: - The region that contains the availability domain the instance is running in. - For the us-phoenix-1 and us-ashburn-1 regions, `phx` and `iad` are returned, respectively. For all other regions, the full region name is returned. - 'Examples: `phx`, `eu-frankfurt-1`' returned: on success sample: us-phoenix-1 type: str shape: description: - The shape of the instance. The shape determines the number of CPUs and the amount of memory allocated to the instance. You can enumerate all available shapes by calling L(ListShapes,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Shape/ListShapes). returned: on success sample: shape_example type: str shape_config: contains: baseline_ocpu_utilization: description: - The baseline OCPU utilization for a subcore burstable VM instance. Leave this attribute blank for a non-burstable instance, or explicitly specify non-burstable with `BASELINE_1_1`. - 'The following values are supported: - `BASELINE_1_8` - baseline usage is 1/8 of an OCPU. - `BASELINE_1_2` - baseline usage is 1/2 of an OCPU. - `BASELINE_1_1` - baseline usage is the entire OCPU. This represents a non-burstable instance.' returned: on success sample: BASELINE_1_8 type: str gpu_description: description: - A short description of the instance's graphics processing unit (GPU). - If the instance does not have any GPUs, this field is `null`. returned: on success sample: gpu_description_example type: str gpus: description: - The number of GPUs available to the instance. returned: on success sample: 56 type: int local_disk_description: description: - A short description of the local disks available to this instance. - If the instance does not have any local disks, this field is `null`. returned: on success sample: local_disk_description_example type: str local_disks: description: - The number of local disks available to the instance. returned: on success sample: 56 type: int local_disks_total_size_in_gbs: description: - The aggregate size of all local disks, in gigabytes. - If the instance does not have any local disks, this field is `null`. returned: on success sample: 3.4 type: float max_vnic_attachments: description: - The maximum number of VNIC attachments for the instance. returned: on success sample: 56 type: int memory_in_gbs: description: - The total amount of memory available to the instance, in gigabytes. returned: on success sample: 3.4 type: float networking_bandwidth_in_gbps: description: - The networking bandwidth available to the instance, in gigabits per second. returned: on success sample: 3.4 type: float ocpus: description: - The total number of OCPUs available to the instance. returned: on success sample: 3.4 type: float processor_description: description: - A short description of the instance's processor (CPU). returned: on success sample: processor_description_example type: str vcpus: description: - The total number of VCPUs available to the instance. This can be used instead of OCPUs, in which case the actual number of OCPUs will be calculated based on this value and the actual hardware. This must be a multiple of 2. returned: on success sample: 56 type: int description: - '' returned: on success type: complex source_details: contains: boot_volume_id: description: - The OCID of the boot volume used to boot the instance. returned: on success sample: ocid1.bootvolume.oc1..xxxxxxEXAMPLExxxxxx type: str boot_volume_size_in_gbs: description: - The size of the boot volume in GBs. Minimum value is 50 GB and maximum value is 32,768 GB (32 TB). returned: on success sample: 56 type: int boot_volume_vpus_per_gb: description: - The number of volume performance units (VPUs) that will be applied to this volume per GB, representing the Block Volume service's elastic performance options. See L(Block Volume Performance Levels,https://docs.cloud.oracle.com/iaas/Content/Block/Concepts/blockvolumeperformance.htm#perf_levels) for more information. - 'Allowed values:' - ' * `10`: Represents Balanced option.' - ' * `20`: Represents Higher Performance option.' - ' * `30`-`120`: Represents the Ultra High Performance option.' - For volumes with the auto-tuned performance feature enabled, this is set to the default (minimum) VPUs/GB. returned: on success sample: 56 type: int image_id: description: - The OCID of the image used to boot the instance. returned: on success sample: ocid1.image.oc1..xxxxxxEXAMPLExxxxxx type: str instance_source_image_filter_details: contains: compartment_id: description: - The OCID of the compartment containing images to search returned: on success sample: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx type: str defined_tags_filter: description: - Filter based on these defined tags. 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). returned: on success sample: {} type: dict operating_system: description: - The image's operating system. - 'Example: `Oracle Linux`' returned: on success sample: operating_system_example type: str operating_system_version: description: - The image's operating system version. - 'Example: `7.2`' returned: on success sample: operating_system_version_example type: str description: - '' returned: on success type: complex kms_key_id: description: - The OCID of the Vault service key to assign as the master encryption key for the boot volume. returned: on success sample: ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx type: str source_type: description: - The source type for the instance. Use `image` when specifying the image OCID. Use `bootVolume` when specifying the boot volume OCID. returned: on success sample: bootVolume type: str description: - '' returned: on success type: complex system_tags: description: - 'System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace": {"bar-key": "value"}}`' returned: on success sample: {} type: dict time_created: description: - The date and time the instance 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 time_maintenance_reboot_due: description: - 'The date and time the instance is expected to be stopped / started, in the format defined by L(RFC3339,https://tools.ietf.org/html/rfc3339). After that time if instance hasn''t been rebooted, Oracle will reboot the instance within 24 hours of the due time. Regardless of how the instance was stopped, the flag will be reset to empty as soon as instance reaches Stopped state. Example: `2018-05-25T21:10:29.600Z`' returned: on success sample: '2013-10-20T19:20:30+01:00' type: str description: - Details of the Instance resource acted upon by the current operation returned: on success sample: agent_config: are_all_plugins_disabled: true is_management_disabled: true is_monitoring_disabled: true plugins_config: - desired_state: ENABLED name: name_example availability_config: is_live_migration_preferred: true recovery_action: RESTORE_INSTANCE availability_domain: Uocm:PHX-AD-1 capacity_reservation_id: ocid1.capacityreservation.oc1..xxxxxxEXAMPLExxxxxx compartment_id: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx dedicated_vm_host_id: ocid1.dedicatedvmhost.oc1..xxxxxxEXAMPLExxxxxx defined_tags: Operations: CostCenter: US display_name: display_name_example extended_metadata: {} fault_domain: FAULT-DOMAIN-1 freeform_tags: Department: Finance id: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx image_id: ocid1.image.oc1..xxxxxxEXAMPLExxxxxx instance_configuration_id: ocid1.instanceconfiguration.oc1..xxxxxxEXAMPLExxxxxx instance_options: are_legacy_imds_endpoints_disabled: true ipxe_script: ipxe_script_example is_cross_numa_node: true launch_mode: NATIVE launch_options: boot_volume_type: ISCSI firmware: BIOS is_consistent_volume_naming_enabled: true is_pv_encryption_in_transit_enabled: true network_type: E1000 remote_data_volume_type: ISCSI lifecycle_state: MOVING metadata: {} platform_config: are_virtual_instructions_enabled: true is_access_control_service_enabled: true is_input_output_memory_management_unit_enabled: true is_measured_boot_enabled: true is_memory_encryption_enabled: true is_secure_boot_enabled: true is_symmetric_multi_threading_enabled: true is_trusted_platform_module_enabled: true numa_nodes_per_socket: NPS0 percentage_of_cores_enabled: 56 type: AMD_MILAN_BM preemptible_instance_config: preemption_action: preserve_boot_volume: true type: TERMINATE primary_private_ip: 10.0.0.10 primary_public_ip: 140.34.93.209 region: us-phoenix-1 shape: shape_example shape_config: baseline_ocpu_utilization: BASELINE_1_8 gpu_description: gpu_description_example gpus: 56 local_disk_description: local_disk_description_example local_disks: 56 local_disks_total_size_in_gbs: 3.4 max_vnic_attachments: 56 memory_in_gbs: 3.4 networking_bandwidth_in_gbps: 3.4 ocpus: 3.4 processor_description: processor_description_example vcpus: 56 source_details: boot_volume_id: ocid1.bootvolume.oc1..xxxxxxEXAMPLExxxxxx boot_volume_size_in_gbs: 56 boot_volume_vpus_per_gb: 56 image_id: ocid1.image.oc1..xxxxxxEXAMPLExxxxxx instance_source_image_filter_details: compartment_id: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx defined_tags_filter: {} operating_system: operating_system_example operating_system_version: operating_system_version_example kms_key_id: ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx source_type: bootVolume system_tags: {} time_created: '2013-10-20T19:20:30+01:00' time_maintenance_reboot_due: '2013-10-20T19:20:30+01:00' type: complex