oracle.oci.oci_compute_management_instance_configuration – Manage an InstanceConfiguration resource in Oracle Cloud Infrastructure

Note

This plugin is part of the oracle.oci collection (version 5.0.0).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install oracle.oci.

To use it in a playbook, specify: oracle.oci.oci_compute_management_instance_configuration.

New in version 2.9.0: of oracle.oci

Synopsis

  • This module allows the user to create, update and delete an InstanceConfiguration resource in Oracle Cloud Infrastructure

  • For state=present, creates an instance configuration. An instance configuration is a template that defines the settings to use when creating Compute instances.

  • This resource has the following action operations in the oracle.oci.oci_compute_management_instance_configuration_actions module: change_compartment, launch.

Requirements

The below requirements are needed on the host that executes this module.

Parameters

Parameter Choices/Defaults Comments
api_user
string
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 config_file_location). To get the user's OCID, please refer https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm.
api_user_fingerprint
string
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 config_file_location). To get the key pair's fingerprint value please refer https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm.
api_user_key_file
string
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 config_file_location). If the key is encrypted with a pass-phrase, the api_user_key_pass_phrase option must also be provided.
api_user_key_pass_phrase
string
Passphrase used by the key referenced in 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 config_file_location).
auth_purpose
string
    Choices:
  • service_principal
The auth purpose which can be used in conjunction with 'auth_type=instance_principal'. The default auth_purpose for instance_principal is None.
auth_type
string
    Choices:
  • api_key ←
  • instance_principal
  • instance_obo_user
  • resource_principal
  • security_token
The type of authentication to use for making API requests. By default auth_type="api_key" based authentication is performed and the API key (see 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 auth_type="instance_principal" to use instance principal based authentication when running ansible playbooks within an OCI compute instance.
cert_bundle
string
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.
compartment_id
string
The OCID of the compartment containing the instance configuration.
Required for create using state=present.
Required for update when environment variable OCI_USE_NAME_AS_IDENTIFIER is set.
Required for delete when environment variable OCI_USE_NAME_AS_IDENTIFIER is set.
config_file_location
string
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.
config_profile_name
string
The profile to load from the config file referenced by 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 config_file_location.
defined_tags
dictionary
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`
This parameter is updatable.
display_name
string
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 OCI_USE_NAME_AS_IDENTIFIER is set.
This parameter is updatable when OCI_USE_NAME_AS_IDENTIFIER is not set.

aliases: name
force_create
boolean
    Choices:
  • no ←
  • yes
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 key_by.
freeform_tags
dictionary
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 Resource Tags.
Example: `{"Department": "Finance"}`
This parameter is updatable.
instance_configuration_id
string
The OCID of the instance configuration.
Required for update using state=present when environment variable OCI_USE_NAME_AS_IDENTIFIER is not set.
Required for delete using state=absent when environment variable OCI_USE_NAME_AS_IDENTIFIER is not set.

aliases: id
instance_details
dictionary
Required when source is 'NONE'
block_volumes
list / elements=dictionary
Block volume parameters.
Applicable when instance_type is 'compute'
attach_details
dictionary
Applicable when instance_type is 'compute'
device
string
The device name.
display_name
string
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

aliases: name
is_pv_encryption_in_transit_enabled
boolean
    Choices:
  • no
  • yes
Whether to enable in-transit encryption for the data volume's paravirtualized attachment. The default value is false.
Applicable when type is 'paravirtualized'
is_read_only
boolean
    Choices:
  • no
  • yes
Whether the attachment should be created in read-only mode.
is_shareable
boolean
    Choices:
  • no
  • yes
Whether the attachment should be created in shareable mode. If an attachment is created in shareable mode, then other instances can attach the same volume, provided that they also create their attachments in shareable mode. Only certain volume types can be attached in shareable mode. Defaults to false if not specified.
type
string / required
    Choices:
  • iscsi
  • paravirtualized
The type of volume. The only supported values are "iscsi" and "paravirtualized".
use_chap
boolean
    Choices:
  • no
  • yes
Whether to use CHAP authentication for the volume attachment. Defaults to false.
Applicable when type is 'iscsi'
create_details
dictionary
Applicable when instance_type is 'compute'
autotune_policies
list / elements=dictionary
The list of autotune policies enabled for this volume.
Applicable when instance_type is 'compute'
autotune_type
string / required
    Choices:
  • PERFORMANCE_BASED
  • DETACHED_VOLUME
This specifies the type of autotunes supported by OCI.
max_vpus_per_gb
integer
This will be the maximum VPUs/GB performance level that the volume will be auto-tuned temporarily based on performance monitoring.
Required when autotune_type is 'PERFORMANCE_BASED'
availability_domain
string
The availability domain of the volume.
Example: `Uocm:PHX-AD-1`
Applicable when instance_type is 'compute'
backup_policy_id
string
If provided, specifies the ID of the volume backup policy to assign to the newly created volume. If omitted, no policy will be assigned.
Applicable when instance_type is 'compute'
block_volume_replicas
list / elements=dictionary
The list of block volume replicas to be enabled for this volume in the specified destination availability domains.
Applicable when instance_type is 'compute'
availability_domain
string / required
The availability domain of the block volume replica.
Example: `Uocm:PHX-AD-1`
Required when instance_type is 'compute'
display_name
string
The display name of the block volume replica. You may optionally specify a *display name* for the block volume replica, otherwise a default is provided.
Applicable when instance_type is 'compute'

aliases: name
compartment_id
string
The OCID of the compartment that contains the volume.
Applicable when instance_type is 'compute'
defined_tags
dictionary
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`
Applicable when instance_type is 'compute'
display_name
string
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
Applicable when instance_type is 'compute'

aliases: name
freeform_tags
dictionary
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 Resource Tags.
Example: `{"Department": "Finance"}`
Applicable when instance_type is 'compute'
is_auto_tune_enabled
boolean
    Choices:
  • no
  • yes
Specifies whether the auto-tune performance is enabled for this boot volume. This field is deprecated. Use the `InstanceConfigurationDetachedVolumeAutotunePolicy` instead to enable the volume for detached autotune.
Applicable when instance_type is 'compute'
kms_key_id
string
The OCID of the Vault service key to assign as the master encryption key for the volume.
Applicable when instance_type is 'compute'
size_in_gbs
integer
The size of the volume in GBs.
Applicable when instance_type is 'compute'
source_details
dictionary
Applicable when instance_type is 'compute'
id
string
The OCID of the volume backup.
type
string / required
    Choices:
  • volumeBackup
  • volume
vpus_per_gb
integer
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 Block Volume Performance Levels for more information.
Allowed values:
* `0`: Represents Lower Cost option.
* `10`: Represents Balanced option.
* `20`: Represents Higher Performance option.
* `30`-`120`: Represents the Ultra High Performance option.
For performance autotune enabled volumes, it would be the Default(Minimum) VPUs/GB.
Applicable when instance_type is 'compute'
volume_id
string
The OCID of the volume.
Applicable when instance_type is 'compute'
instance_type
string
    Choices:
  • instance_options
  • compute ←
The type of instance details. Supported instanceType is compute
launch_details
dictionary
Applicable when instance_type is 'compute'
agent_config
dictionary
Applicable when instance_type is 'compute'
are_all_plugins_disabled
boolean
    Choices:
  • no
  • yes
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 ListInstanceagentAvailablePlugins operation in the Oracle Cloud Agent API. For more information about the available plugins, see Managing Plugins with Oracle Cloud Agent.
Applicable when instance_type is 'compute'
is_management_disabled
boolean
    Choices:
  • no
  • yes
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.
Applicable when instance_type is 'compute'
is_monitoring_disabled
boolean
    Choices:
  • no
  • yes
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.
Applicable when instance_type is 'compute'
plugins_config
list / elements=dictionary
The configuration of plugins associated with this instance.
Applicable when instance_type is 'compute'
desired_state
string / required
    Choices:
  • ENABLED
  • DISABLED
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 when instance_type is 'compute'
name
string / required
The plugin name. To get a list of available plugins, use the ListInstanceagentAvailablePlugins operation in the Oracle Cloud Agent API. For more information about the available plugins, see Managing Plugins with Oracle Cloud Agent.
Required when instance_type is 'compute'
availability_config
dictionary
Applicable when instance_type is 'compute'
is_live_migration_preferred
boolean
    Choices:
  • no
  • yes
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.
Applicable when instance_type is 'compute'
recovery_action
string
    Choices:
  • RESTORE_INSTANCE
  • STOP_INSTANCE
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.
Applicable when instance_type is 'compute'
availability_domain
string
The availability domain of the instance.
Example: `Uocm:PHX-AD-1`
Applicable when instance_type is 'compute'
capacity_reservation_id
string
The OCID of the compute capacity reservation this instance is launched under.
Applicable when instance_type is 'compute'
compartment_id
string
The OCID of the compartment containing the instance. Instances created from instance configurations are placed in the same compartment as the instance that was used to create the instance configuration.
Applicable when instance_type is 'compute'
create_vnic_details
dictionary
Applicable when instance_type is 'compute'
assign_private_dns_record
boolean
    Choices:
  • no
  • yes
Whether the VNIC should be assigned a private DNS record. See the `assignPrivateDnsRecord` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'compute'
assign_public_ip
boolean
    Choices:
  • no
  • yes
Whether the VNIC should be assigned a public IP address. See the `assignPublicIp` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'compute'
defined_tags
dictionary
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`
Applicable when instance_type is 'compute'
display_name
string
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
Applicable when instance_type is 'compute'

aliases: name
freeform_tags
dictionary
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 Resource Tags.
Example: `{"Department": "Finance"}`
Applicable when instance_type is 'compute'
hostname_label
string
The hostname for the VNIC's primary private IP. See the `hostnameLabel` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'compute'
nsg_ids
list / elements=string
A list of the OCIDs of the network security groups (NSGs) to add the VNIC to. For more information about NSGs, see NetworkSecurityGroup.
Applicable when instance_type is 'compute'
private_ip
string
A private IP address of your choice to assign to the VNIC. See the `privateIp` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'compute'
skip_source_dest_check
boolean
    Choices:
  • no
  • yes
Whether the source/destination check is disabled on the VNIC. See the `skipSourceDestCheck` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'compute'
subnet_id
string
The OCID of the subnet to create the VNIC in. See the `subnetId` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'compute'
dedicated_vm_host_id
string
The OCID of the dedicated virtual machine host to place the instance on.
Dedicated VM hosts can be used when launching individual instances from an instance configuration. They cannot be used to launch instance pools.
Applicable when instance_type is 'compute'
defined_tags
dictionary
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`
Applicable when instance_type is 'compute'
display_name
string
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
Applicable when instance_type is 'compute'

aliases: name
extended_metadata
dictionary
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.
Applicable when instance_type is 'compute'
fault_domain
string
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 ListFaultDomains operation in the Identity and Access Management Service API.
Example: `FAULT-DOMAIN-1`
Applicable when instance_type is 'compute'
freeform_tags
dictionary
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 Resource Tags.
Example: `{"Department": "Finance"}`
Applicable when instance_type is 'compute'
instance_options
dictionary
Applicable when instance_type is 'compute'
are_legacy_imds_endpoints_disabled
boolean
    Choices:
  • no
  • yes
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.
Applicable when instance_type is 'compute'
ipxe_script
string
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; however, you should 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, you should use the following iSCSI IP address: 169.254.0.2, and boot volume IQN: iqn.2015-02.oracle.boot.
For more information about the Bring Your Own Image feature of Oracle Cloud Infrastructure, see Bring Your Own Image.
For more information about iPXE, see http://ipxe.org.
Applicable when instance_type is 'compute'
is_pv_encryption_in_transit_enabled
boolean
    Choices:
  • no
  • yes
Whether to enable in-transit encryption for the data volume's paravirtualized attachment. The default value is false.
Applicable when instance_type is 'compute'
launch_mode
string
    Choices:
  • NATIVE
  • EMULATED
  • PARAVIRTUALIZED
  • CUSTOM
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.
Applicable when instance_type is 'compute'
launch_options
dictionary
Applicable when instance_type is 'compute'
boot_volume_type
string
    Choices:
  • ISCSI
  • SCSI
  • IDE
  • VFIO
  • PARAVIRTUALIZED
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.
Applicable when instance_type is 'compute'
firmware
string
    Choices:
  • BIOS
  • UEFI_64
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.
Applicable when instance_type is 'compute'
is_consistent_volume_naming_enabled
boolean
    Choices:
  • no
  • yes
Whether to enable consistent volume naming feature. Defaults to false.
Applicable when instance_type is 'compute'
is_pv_encryption_in_transit_enabled
boolean
    Choices:
  • no
  • yes
Deprecated. Instead use `isPvEncryptionInTransitEnabled` in InstanceConfigurationLaunchInstanceDetails.
Applicable when instance_type is 'compute'
network_type
string
    Choices:
  • E1000
  • VFIO
  • PARAVIRTUALIZED
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.
Applicable when instance_type is 'compute'
remote_data_volume_type
string
    Choices:
  • ISCSI
  • SCSI
  • IDE
  • VFIO
  • PARAVIRTUALIZED
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.
Applicable when instance_type is 'compute'
metadata
dictionary
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 Cloud-Init 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 Cloud-Init Documentation.
**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.
Applicable when instance_type is 'compute'
platform_config
dictionary
Applicable when instance_type is 'compute'
are_virtual_instructions_enabled
boolean
    Choices:
  • no
  • yes
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']
is_access_control_service_enabled
boolean
    Choices:
  • no
  • yes
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']
is_input_output_memory_management_unit_enabled
boolean
    Choices:
  • no
  • yes
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', 'INTEL_ICELAKE_BM', 'AMD_ROME_BM']
is_measured_boot_enabled
boolean
    Choices:
  • no
  • yes
Whether the Measured Boot feature is enabled on the instance.
is_memory_encryption_enabled
boolean
    Choices:
  • no
  • yes
Whether the instance is a confidential instance. If this value is `true`, the instance is a confidential instance. The default value is `false`.
is_secure_boot_enabled
boolean
    Choices:
  • no
  • yes
Whether Secure Boot is enabled on the instance.
is_symmetric_multi_threading_enabled
boolean
    Choices:
  • no
  • yes
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', 'INTEL_ICELAKE_BM', 'AMD_ROME_BM']
is_trusted_platform_module_enabled
boolean
    Choices:
  • no
  • yes
Whether the Trusted Platform Module (TPM) is enabled on the instance.
numa_nodes_per_socket
string
    Choices:
  • NPS0
  • NPS1
  • NPS2
  • NPS4
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', 'INTEL_ICELAKE_BM', 'AMD_ROME_BM']
percentage_of_cores_enabled
integer
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', 'INTEL_ICELAKE_BM', 'AMD_ROME_BM']
type
string / required
    Choices:
  • AMD_MILAN_BM
  • INTEL_VM
  • AMD_MILAN_BM_GPU
  • INTEL_ICELAKE_BM
  • AMD_ROME_BM
  • INTEL_SKYLAKE_BM
  • AMD_ROME_BM_GPU
  • AMD_VM
The type of platform being configured.
preemptible_instance_config
dictionary
Applicable when instance_type is 'compute'
preemption_action
dictionary / required
Required when instance_type is 'compute'
preserve_boot_volume
boolean
    Choices:
  • no
  • yes
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
string / required
    Choices:
  • TERMINATE
The type of action to run when the instance is interrupted for eviction.
preferred_maintenance_action
string
    Choices:
  • LIVE_MIGRATE
  • REBOOT
The preferred maintenance action for an instance. The default is LIVE_MIGRATE, if live migration is supported. * `LIVE_MIGRATE` - Run maintenance using a live migration. * `REBOOT` - Run maintenance using a reboot.
Applicable when instance_type is 'compute'
shape
string
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 ListShapes.
Applicable when instance_type is 'compute'
shape_config
dictionary
Applicable when instance_type is 'compute'
baseline_ocpu_utilization
string
    Choices:
  • BASELINE_1_8
  • BASELINE_1_2
  • BASELINE_1_1
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.
Applicable when instance_type is 'compute'
memory_in_gbs
float
The total amount of memory available to the instance, in gigabytes.
Applicable when instance_type is 'compute'
nvmes
integer
The number of NVMe drives to be used for storage. A single drive has 6.8 TB available.
Applicable when instance_type is 'compute'
ocpus
float
The total number of OCPUs available to the instance.
Applicable when instance_type is 'compute'
vcpus
integer
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.
Applicable when instance_type is 'compute'
source_details
dictionary
Applicable when instance_type is 'compute'
boot_volume_id
string
The OCID of the boot volume used to boot the instance.
Applicable when source_type is 'bootVolume'
boot_volume_size_in_gbs
integer
The size of the boot volume in GBs. The minimum value is 50 GB and the maximum value is 32,768 GB (32 TB).
Applicable when source_type is 'image'
boot_volume_vpus_per_gb
integer
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 Block Volume Performance Levels for more information.
Allowed values:
* `10`: Represents Balanced option.
* `20`: Represents Higher Performance option.
* `30`-`120`: Represents the Ultra High Performance option.
For performance autotune enabled volumes, it would be the Default(Minimum) VPUs/GB.
Applicable when source_type is 'image'
image_id
string
The OCID of the image used to boot the instance.
Applicable when source_type is 'image'
instance_source_image_filter_details
dictionary
Applicable when source_type is 'image'
compartment_id
string
The OCID of the compartment containing images to search
Applicable when source_type is 'image'
defined_tags_filter
dictionary
Filter based on these defined tags. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Applicable when source_type is 'image'
operating_system
string
The image's operating system.
Example: `Oracle Linux`
Applicable when source_type is 'image'
operating_system_version
string
The image's operating system version.
Example: `7.2`
Applicable when source_type is 'image'
kms_key_id
string
The OCID of the Vault service key to assign as the master encryption key for the boot volume.
Applicable when source_type is 'image'
source_type
string / required
    Choices:
  • image
  • bootVolume
The source type for the instance. Use `image` when specifying the image OCID. Use `bootVolume` when specifying the boot volume OCID.
options
list / elements=dictionary
The Compute Instance Configuration parameters.
Applicable when instance_type is 'instance_options'
block_volumes
list / elements=dictionary
Block volume parameters.
Applicable when instance_type is 'instance_options'
attach_details
dictionary
Applicable when instance_type is 'instance_options'
device
string
The device name.
display_name
string
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

aliases: name
is_pv_encryption_in_transit_enabled
boolean
    Choices:
  • no
  • yes
Whether to enable in-transit encryption for the data volume's paravirtualized attachment. The default value is false.
Applicable when type is 'paravirtualized'
is_read_only
boolean
    Choices:
  • no
  • yes
Whether the attachment should be created in read-only mode.
is_shareable
boolean
    Choices:
  • no
  • yes
Whether the attachment should be created in shareable mode. If an attachment is created in shareable mode, then other instances can attach the same volume, provided that they also create their attachments in shareable mode. Only certain volume types can be attached in shareable mode. Defaults to false if not specified.
type
string / required
    Choices:
  • iscsi
  • paravirtualized
The type of volume. The only supported values are "iscsi" and "paravirtualized".
use_chap
boolean
    Choices:
  • no
  • yes
Whether to use CHAP authentication for the volume attachment. Defaults to false.
Applicable when type is 'iscsi'
create_details
dictionary
Applicable when instance_type is 'instance_options'
autotune_policies
list / elements=dictionary
The list of autotune policies enabled for this volume.
Applicable when instance_type is 'instance_options'
autotune_type
string / required
    Choices:
  • PERFORMANCE_BASED
  • DETACHED_VOLUME
This specifies the type of autotunes supported by OCI.
max_vpus_per_gb
integer
This will be the maximum VPUs/GB performance level that the volume will be auto-tuned temporarily based on performance monitoring.
Required when autotune_type is 'PERFORMANCE_BASED'
availability_domain
string
The availability domain of the volume.
Example: `Uocm:PHX-AD-1`
Applicable when instance_type is 'instance_options'
backup_policy_id
string
If provided, specifies the ID of the volume backup policy to assign to the newly created volume. If omitted, no policy will be assigned.
Applicable when instance_type is 'instance_options'
block_volume_replicas
list / elements=dictionary
The list of block volume replicas to be enabled for this volume in the specified destination availability domains.
Applicable when instance_type is 'instance_options'
availability_domain
string / required
The availability domain of the block volume replica.
Example: `Uocm:PHX-AD-1`
Required when instance_type is 'instance_options'
display_name
string
The display name of the block volume replica. You may optionally specify a *display name* for the block volume replica, otherwise a default is provided.
Applicable when instance_type is 'instance_options'

aliases: name
compartment_id
string
The OCID of the compartment that contains the volume.
Applicable when instance_type is 'instance_options'
defined_tags
dictionary
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`
Applicable when instance_type is 'instance_options'
display_name
string
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
Applicable when instance_type is 'instance_options'

aliases: name
freeform_tags
dictionary
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 Resource Tags.
Example: `{"Department": "Finance"}`
Applicable when instance_type is 'instance_options'
is_auto_tune_enabled
boolean
    Choices:
  • no
  • yes
Specifies whether the auto-tune performance is enabled for this boot volume. This field is deprecated. Use the `InstanceConfigurationDetachedVolumeAutotunePolicy` instead to enable the volume for detached autotune.
Applicable when instance_type is 'instance_options'
kms_key_id
string
The OCID of the Vault service key to assign as the master encryption key for the volume.
Applicable when instance_type is 'instance_options'
size_in_gbs
integer
The size of the volume in GBs.
Applicable when instance_type is 'instance_options'
source_details
dictionary
Applicable when instance_type is 'instance_options'
id
string
The OCID of the volume backup.
type
string / required
    Choices:
  • volumeBackup
  • volume
vpus_per_gb
integer
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 Block Volume Performance Levels for more information.
Allowed values:
* `0`: Represents Lower Cost option.
* `10`: Represents Balanced option.
* `20`: Represents Higher Performance option.
* `30`-`120`: Represents the Ultra High Performance option.
For performance autotune enabled volumes, it would be the Default(Minimum) VPUs/GB.
Applicable when instance_type is 'instance_options'
volume_id
string
The OCID of the volume.
Applicable when instance_type is 'instance_options'
instance_type
string / required
The type of instance details. Supported instanceType is compute
Required when instance_type is 'instance_options'
launch_details
dictionary
Applicable when instance_type is 'instance_options'
agent_config
dictionary
Applicable when instance_type is 'instance_options'
are_all_plugins_disabled
boolean
    Choices:
  • no
  • yes
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 ListInstanceagentAvailablePlugins operation in the Oracle Cloud Agent API. For more information about the available plugins, see Managing Plugins with Oracle Cloud Agent.
Applicable when instance_type is 'instance_options'
is_management_disabled
boolean
    Choices:
  • no
  • yes
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.
Applicable when instance_type is 'instance_options'
is_monitoring_disabled
boolean
    Choices:
  • no
  • yes
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.
Applicable when instance_type is 'instance_options'
plugins_config
list / elements=dictionary
The configuration of plugins associated with this instance.
Applicable when instance_type is 'instance_options'
desired_state
string / required
    Choices:
  • ENABLED
  • DISABLED
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 when instance_type is 'instance_options'
name
string / required
The plugin name. To get a list of available plugins, use the ListInstanceagentAvailablePlugins operation in the Oracle Cloud Agent API. For more information about the available plugins, see Managing Plugins with Oracle Cloud Agent.
Required when instance_type is 'instance_options'
availability_config
dictionary
Applicable when instance_type is 'instance_options'
is_live_migration_preferred
boolean
    Choices:
  • no
  • yes
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.
Applicable when instance_type is 'instance_options'
recovery_action
string
    Choices:
  • RESTORE_INSTANCE
  • STOP_INSTANCE
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.
Applicable when instance_type is 'instance_options'
availability_domain
string
The availability domain of the instance.
Example: `Uocm:PHX-AD-1`
Applicable when instance_type is 'instance_options'
capacity_reservation_id
string
The OCID of the compute capacity reservation this instance is launched under.
Applicable when instance_type is 'instance_options'
compartment_id
string
The OCID of the compartment containing the instance. Instances created from instance configurations are placed in the same compartment as the instance that was used to create the instance configuration.
Applicable when instance_type is 'instance_options'
create_vnic_details
dictionary
Applicable when instance_type is 'instance_options'
assign_private_dns_record
boolean
    Choices:
  • no
  • yes
Whether the VNIC should be assigned a private DNS record. See the `assignPrivateDnsRecord` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'instance_options'
assign_public_ip
boolean
    Choices:
  • no
  • yes
Whether the VNIC should be assigned a public IP address. See the `assignPublicIp` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'instance_options'
defined_tags
dictionary
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`
Applicable when instance_type is 'instance_options'
display_name
string
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
Applicable when instance_type is 'instance_options'

aliases: name
freeform_tags
dictionary
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 Resource Tags.
Example: `{"Department": "Finance"}`
Applicable when instance_type is 'instance_options'
hostname_label
string
The hostname for the VNIC's primary private IP. See the `hostnameLabel` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'instance_options'
nsg_ids
list / elements=string
A list of the OCIDs of the network security groups (NSGs) to add the VNIC to. For more information about NSGs, see NetworkSecurityGroup.
Applicable when instance_type is 'instance_options'
private_ip
string
A private IP address of your choice to assign to the VNIC. See the `privateIp` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'instance_options'
skip_source_dest_check
boolean
    Choices:
  • no
  • yes
Whether the source/destination check is disabled on the VNIC. See the `skipSourceDestCheck` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'instance_options'
subnet_id
string
The OCID of the subnet to create the VNIC in. See the `subnetId` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'instance_options'
dedicated_vm_host_id
string
The OCID of the dedicated virtual machine host to place the instance on.
Dedicated VM hosts can be used when launching individual instances from an instance configuration. They cannot be used to launch instance pools.
Applicable when instance_type is 'instance_options'
defined_tags
dictionary
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`
Applicable when instance_type is 'instance_options'
display_name
string
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
Applicable when instance_type is 'instance_options'

aliases: name
extended_metadata
dictionary
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.
Applicable when instance_type is 'instance_options'
fault_domain
string
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 ListFaultDomains operation in the Identity and Access Management Service API.
Example: `FAULT-DOMAIN-1`
Applicable when instance_type is 'instance_options'
freeform_tags
dictionary
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 Resource Tags.
Example: `{"Department": "Finance"}`
Applicable when instance_type is 'instance_options'
instance_options
dictionary
Applicable when instance_type is 'instance_options'
are_legacy_imds_endpoints_disabled
boolean
    Choices:
  • no
  • yes
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.
Applicable when instance_type is 'instance_options'
ipxe_script
string
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; however, you should 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, you should use the following iSCSI IP address: 169.254.0.2, and boot volume IQN: iqn.2015-02.oracle.boot.
For more information about the Bring Your Own Image feature of Oracle Cloud Infrastructure, see Bring Your Own Image.
For more information about iPXE, see http://ipxe.org.
Applicable when instance_type is 'instance_options'
is_pv_encryption_in_transit_enabled
boolean
    Choices:
  • no
  • yes
Whether to enable in-transit encryption for the data volume's paravirtualized attachment. The default value is false.
Applicable when instance_type is 'instance_options'
launch_mode
string
    Choices:
  • NATIVE
  • EMULATED
  • PARAVIRTUALIZED
  • CUSTOM
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.
Applicable when instance_type is 'instance_options'
launch_options
dictionary
Applicable when instance_type is 'instance_options'
boot_volume_type
string
    Choices:
  • ISCSI
  • SCSI
  • IDE
  • VFIO
  • PARAVIRTUALIZED
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.
Applicable when instance_type is 'instance_options'
firmware
string
    Choices:
  • BIOS
  • UEFI_64
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.
Applicable when instance_type is 'instance_options'
is_consistent_volume_naming_enabled
boolean
    Choices:
  • no
  • yes
Whether to enable consistent volume naming feature. Defaults to false.
Applicable when instance_type is 'instance_options'
is_pv_encryption_in_transit_enabled
boolean
    Choices:
  • no
  • yes
Deprecated. Instead use `isPvEncryptionInTransitEnabled` in InstanceConfigurationLaunchInstanceDetails.
Applicable when instance_type is 'instance_options'
network_type
string
    Choices:
  • E1000
  • VFIO
  • PARAVIRTUALIZED
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.
Applicable when instance_type is 'instance_options'
remote_data_volume_type
string
    Choices:
  • ISCSI
  • SCSI
  • IDE
  • VFIO
  • PARAVIRTUALIZED
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.
Applicable when instance_type is 'instance_options'
metadata
dictionary
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 Cloud-Init 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 Cloud-Init Documentation.
**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.
Applicable when instance_type is 'instance_options'
platform_config
dictionary
Applicable when instance_type is 'instance_options'
are_virtual_instructions_enabled
boolean
    Choices:
  • no
  • yes
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']
is_access_control_service_enabled
boolean
    Choices:
  • no
  • yes
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']
is_input_output_memory_management_unit_enabled
boolean
    Choices:
  • no
  • yes
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', 'INTEL_ICELAKE_BM', 'AMD_ROME_BM']
is_measured_boot_enabled
boolean
    Choices:
  • no
  • yes
Whether the Measured Boot feature is enabled on the instance.
is_memory_encryption_enabled
boolean
    Choices:
  • no
  • yes
Whether the instance is a confidential instance. If this value is `true`, the instance is a confidential instance. The default value is `false`.
is_secure_boot_enabled
boolean
    Choices:
  • no
  • yes
Whether Secure Boot is enabled on the instance.
is_symmetric_multi_threading_enabled
boolean
    Choices:
  • no
  • yes
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', 'INTEL_ICELAKE_BM', 'AMD_ROME_BM']
is_trusted_platform_module_enabled
boolean
    Choices:
  • no
  • yes
Whether the Trusted Platform Module (TPM) is enabled on the instance.
numa_nodes_per_socket
string
    Choices:
  • NPS0
  • NPS1
  • NPS2
  • NPS4
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', 'INTEL_ICELAKE_BM', 'AMD_ROME_BM']
percentage_of_cores_enabled
integer
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', 'INTEL_ICELAKE_BM', 'AMD_ROME_BM']
type
string / required
    Choices:
  • AMD_MILAN_BM
  • INTEL_VM
  • AMD_MILAN_BM_GPU
  • INTEL_ICELAKE_BM
  • AMD_ROME_BM
  • INTEL_SKYLAKE_BM
  • AMD_ROME_BM_GPU
  • AMD_VM
The type of platform being configured.
preemptible_instance_config
dictionary
Applicable when instance_type is 'instance_options'
preemption_action
dictionary / required
Required when instance_type is 'instance_options'
preserve_boot_volume
boolean
    Choices:
  • no
  • yes
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
string / required
    Choices:
  • TERMINATE
The type of action to run when the instance is interrupted for eviction.
preferred_maintenance_action
string
    Choices:
  • LIVE_MIGRATE
  • REBOOT
The preferred maintenance action for an instance. The default is LIVE_MIGRATE, if live migration is supported. * `LIVE_MIGRATE` - Run maintenance using a live migration. * `REBOOT` - Run maintenance using a reboot.
Applicable when instance_type is 'instance_options'
shape
string
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 ListShapes.
Applicable when instance_type is 'instance_options'
shape_config
dictionary
Applicable when instance_type is 'instance_options'
baseline_ocpu_utilization
string
    Choices:
  • BASELINE_1_8
  • BASELINE_1_2
  • BASELINE_1_1
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.
Applicable when instance_type is 'instance_options'
memory_in_gbs
float
The total amount of memory available to the instance, in gigabytes.
Applicable when instance_type is 'instance_options'
nvmes
integer
The number of NVMe drives to be used for storage. A single drive has 6.8 TB available.
Applicable when instance_type is 'instance_options'
ocpus
float
The total number of OCPUs available to the instance.
Applicable when instance_type is 'instance_options'
vcpus
integer
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.
Applicable when instance_type is 'instance_options'
source_details
dictionary
Applicable when instance_type is 'instance_options'
boot_volume_id
string
The OCID of the boot volume used to boot the instance.
Applicable when source_type is 'bootVolume'
boot_volume_size_in_gbs
integer
The size of the boot volume in GBs. The minimum value is 50 GB and the maximum value is 32,768 GB (32 TB).
Applicable when source_type is 'image'
boot_volume_vpus_per_gb
integer
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 Block Volume Performance Levels for more information.
Allowed values:
* `10`: Represents Balanced option.
* `20`: Represents Higher Performance option.
* `30`-`120`: Represents the Ultra High Performance option.
For performance autotune enabled volumes, it would be the Default(Minimum) VPUs/GB.
Applicable when source_type is 'image'
image_id
string
The OCID of the image used to boot the instance.
Applicable when source_type is 'image'
instance_source_image_filter_details
dictionary
Applicable when source_type is 'image'
compartment_id
string
The OCID of the compartment containing images to search
Applicable when source_type is 'image'
defined_tags_filter
dictionary
Filter based on these defined tags. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Applicable when source_type is 'image'
operating_system
string
The image's operating system.
Example: `Oracle Linux`
Applicable when source_type is 'image'
operating_system_version
string
The image's operating system version.
Example: `7.2`
Applicable when source_type is 'image'
kms_key_id
string
The OCID of the Vault service key to assign as the master encryption key for the boot volume.
Applicable when source_type is 'image'
source_type
string / required
    Choices:
  • image
  • bootVolume
The source type for the instance. Use `image` when specifying the image OCID. Use `bootVolume` when specifying the boot volume OCID.
secondary_vnics
list / elements=dictionary
Secondary VNIC parameters.
Applicable when instance_type is 'instance_options'
create_vnic_details
dictionary
Applicable when instance_type is 'instance_options'
assign_private_dns_record
boolean
    Choices:
  • no
  • yes
Whether the VNIC should be assigned a private DNS record. See the `assignPrivateDnsRecord` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'instance_options'
assign_public_ip
boolean
    Choices:
  • no
  • yes
Whether the VNIC should be assigned a public IP address. See the `assignPublicIp` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'instance_options'
defined_tags
dictionary
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`
Applicable when instance_type is 'instance_options'
display_name
string
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
Applicable when instance_type is 'instance_options'

aliases: name
freeform_tags
dictionary
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 Resource Tags.
Example: `{"Department": "Finance"}`
Applicable when instance_type is 'instance_options'
hostname_label
string
The hostname for the VNIC's primary private IP. See the `hostnameLabel` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'instance_options'
nsg_ids
list / elements=string
A list of the OCIDs of the network security groups (NSGs) to add the VNIC to. For more information about NSGs, see NetworkSecurityGroup.
Applicable when instance_type is 'instance_options'
private_ip
string
A private IP address of your choice to assign to the VNIC. See the `privateIp` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'instance_options'
skip_source_dest_check
boolean
    Choices:
  • no
  • yes
Whether the source/destination check is disabled on the VNIC. See the `skipSourceDestCheck` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'instance_options'
subnet_id
string
The OCID of the subnet to create the VNIC in. See the `subnetId` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'instance_options'
display_name
string
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
Applicable when instance_type is 'instance_options'

aliases: name
nic_index
integer
Which physical network interface card (NIC) the VNIC will use. Defaults to 0. Certain bare metal instance shapes have two active physical NICs (0 and 1). If you add a secondary VNIC to one of these instances, you can specify which NIC the VNIC will use. For more information, see L(Virtual Network Interface Cards (VNICs),https://docs.cloud.oracle.com/iaas/Content/Network/Tasks/managingVNICs.htm).
Applicable when instance_type is 'instance_options'
secondary_vnics
list / elements=dictionary
Secondary VNIC parameters.
Applicable when instance_type is 'compute'
create_vnic_details
dictionary
Applicable when instance_type is 'compute'
assign_private_dns_record
boolean
    Choices:
  • no
  • yes
Whether the VNIC should be assigned a private DNS record. See the `assignPrivateDnsRecord` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'compute'
assign_public_ip
boolean
    Choices:
  • no
  • yes
Whether the VNIC should be assigned a public IP address. See the `assignPublicIp` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'compute'
defined_tags
dictionary
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`
Applicable when instance_type is 'compute'
display_name
string
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
Applicable when instance_type is 'compute'

aliases: name
freeform_tags
dictionary
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 Resource Tags.
Example: `{"Department": "Finance"}`
Applicable when instance_type is 'compute'
hostname_label
string
The hostname for the VNIC's primary private IP. See the `hostnameLabel` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'compute'
nsg_ids
list / elements=string
A list of the OCIDs of the network security groups (NSGs) to add the VNIC to. For more information about NSGs, see NetworkSecurityGroup.
Applicable when instance_type is 'compute'
private_ip
string
A private IP address of your choice to assign to the VNIC. See the `privateIp` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'compute'
skip_source_dest_check
boolean
    Choices:
  • no
  • yes
Whether the source/destination check is disabled on the VNIC. See the `skipSourceDestCheck` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'compute'
subnet_id
string
The OCID of the subnet to create the VNIC in. See the `subnetId` attribute of CreateVnicDetails for more information.
Applicable when instance_type is 'compute'
display_name
string
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
Applicable when instance_type is 'compute'

aliases: name
nic_index
integer
Which physical network interface card (NIC) the VNIC will use. Defaults to 0. Certain bare metal instance shapes have two active physical NICs (0 and 1). If you add a secondary VNIC to one of these instances, you can specify which NIC the VNIC will use. For more information, see L(Virtual Network Interface Cards (VNICs),https://docs.cloud.oracle.com/iaas/Content/Network/Tasks/managingVNICs.htm).
Applicable when instance_type is 'compute'
instance_id
string
The OCID of the instance to use to create the instance configuration.
Required when source is 'INSTANCE'
key_by
list / elements=string
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.
realm_specific_endpoint_template_enabled
boolean
    Choices:
  • no
  • yes
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.
region
string
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 config_file_location). Please refer to https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/regions.htm for more information on OCI regions.
source
string
    Choices:
  • NONE ←
  • INSTANCE
The source of the instance configuration. An instance configuration defines the settings to use when creating Compute instances, including details such as the base image, shape, and metadata. You can also specify the associated resources for the instance, such as block volume attachments and network configuration.
When you create an instance configuration using an existing instance as a template, the instance configuration does not include any information from the source instance's boot volume, such as installed applications, binaries, and files on the instance. It also does not include the contents of any block volumes that are attached to the instance.
To create an instance configuration that includes the custom setup from an instance's boot volume, you must first create a custom image from the instance (see CreateImage). Then, use the custom image to launch a new instance (see LaunchInstance). Finally, create the instance configuration based on the instance that you created from the custom image.
To include block volume contents with an instance configuration, first create a backup of the attached block volumes (see CreateVolumeBackup). Then, create the instance configuration by specifying the list of settings, using InstanceConfigurationVolumeSourceFromVolumeBackupDetails to include the block volume backups in the list of settings.
The following values are supported:
* `NONE`: Creates an instance configuration using the list of settings that you specify. * `INSTANCE`: Creates an instance configuration using an existing instance as a template.
state
string
    Choices:
  • present ←
  • absent
The state of the InstanceConfiguration.
Use state=present to create or update an InstanceConfiguration.
Use state=absent to delete an InstanceConfiguration.
tenancy
string
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 config_file_location). To get the tenancy OCID, please refer https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm

Examples

- name: Create instance_configuration with source = NONE
  oci_compute_management_instance_configuration:
    # required
    instance_details:
      # required
      instance_type: instance_options

      # optional
      options:
      - # required
        instance_type: instance_type_example

        # optional
        block_volumes:
        - # optional
          attach_details:
            # required
            type: iscsi

            # optional
            use_chap: true
            display_name: display_name_example
            is_read_only: true
            device: device_example
            is_shareable: true
          create_details:
            # optional
            availability_domain: Uocm:PHX-AD-1
            backup_policy_id: "ocid1.backuppolicy.oc1..xxxxxxEXAMPLExxxxxx"
            compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
            is_auto_tune_enabled: true
            block_volume_replicas:
            - # required
              availability_domain: Uocm:PHX-AD-1

              # optional
              display_name: display_name_example
            defined_tags: {'Operations': {'CostCenter': 'US'}}
            display_name: display_name_example
            freeform_tags: {'Department': 'Finance'}
            kms_key_id: "ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx"
            vpus_per_gb: 56
            size_in_gbs: 56
            source_details:
              # required
              type: volumeBackup

              # optional
              id: "ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx"
            autotune_policies:
            - # required
              max_vpus_per_gb: 56
              autotune_type: PERFORMANCE_BASED
          volume_id: "ocid1.volume.oc1..xxxxxxEXAMPLExxxxxx"
        launch_details:
          # optional
          availability_domain: Uocm:PHX-AD-1
          capacity_reservation_id: "ocid1.capacityreservation.oc1..xxxxxxEXAMPLExxxxxx"
          compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
          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"
          defined_tags: {'Operations': {'CostCenter': 'US'}}
          display_name: display_name_example
          extended_metadata: null
          freeform_tags: {'Department': 'Finance'}
          ipxe_script: ipxe_script_example
          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
          platform_config:
            # required
            type: AMD_MILAN_BM

            # optional
            percentage_of_cores_enabled: 56
            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
            is_secure_boot_enabled: true
            is_trusted_platform_module_enabled: true
            is_measured_boot_enabled: true
            is_memory_encryption_enabled: 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:
              # optional
              compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
              defined_tags_filter: null
              operating_system: operating_system_example
              operating_system_version: operating_system_version_example
          fault_domain: FAULT-DOMAIN-1
          dedicated_vm_host_id: "ocid1.dedicatedvmhost.oc1..xxxxxxEXAMPLExxxxxx"
          launch_mode: NATIVE
          launch_options:
            # optional
            boot_volume_type: ISCSI
            firmware: BIOS
            network_type: E1000
            remote_data_volume_type: ISCSI
            is_pv_encryption_in_transit_enabled: true
            is_consistent_volume_naming_enabled: true
          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
          is_pv_encryption_in_transit_enabled: true
          preferred_maintenance_action: LIVE_MIGRATE
          instance_options:
            # optional
            are_legacy_imds_endpoints_disabled: true
          availability_config:
            # optional
            is_live_migration_preferred: true
            recovery_action: RESTORE_INSTANCE
          preemptible_instance_config:
            # required
            preemption_action:
              # required
              type: TERMINATE

              # optional
              preserve_boot_volume: true
        secondary_vnics:
        - # 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"
          display_name: display_name_example
          nic_index: 56
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"

    # optional
    source: NONE
    defined_tags: {'Operations': {'CostCenter': 'US'}}
    display_name: display_name_example
    freeform_tags: {'Department': 'Finance'}

- name: Create instance_configuration with source = INSTANCE
  oci_compute_management_instance_configuration:
    # required
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    source: INSTANCE
    instance_id: "ocid1.instance.oc1..xxxxxxEXAMPLExxxxxx"

    # optional
    defined_tags: {'Operations': {'CostCenter': 'US'}}
    display_name: display_name_example
    freeform_tags: {'Department': 'Finance'}

- name: Update instance_configuration
  oci_compute_management_instance_configuration:
    # required
    instance_configuration_id: "ocid1.instanceconfiguration.oc1..xxxxxxEXAMPLExxxxxx"

    # optional
    defined_tags: {'Operations': {'CostCenter': 'US'}}
    display_name: display_name_example
    freeform_tags: {'Department': 'Finance'}

- name: Update instance_configuration using name (when environment variable OCI_USE_NAME_AS_IDENTIFIER is set)
  oci_compute_management_instance_configuration:
    # required
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    display_name: display_name_example

    # optional
    defined_tags: {'Operations': {'CostCenter': 'US'}}
    freeform_tags: {'Department': 'Finance'}

- name: Delete instance_configuration
  oci_compute_management_instance_configuration:
    # required
    instance_configuration_id: "ocid1.instanceconfiguration.oc1..xxxxxxEXAMPLExxxxxx"
    state: absent

- name: Delete instance_configuration using name (when environment variable OCI_USE_NAME_AS_IDENTIFIER is set)
  oci_compute_management_instance_configuration:
    # required
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    display_name: display_name_example
    state: absent

Return Values

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

Key Returned Description
instance_configuration
complex
on success
Details of the InstanceConfiguration resource acted upon by the current operation

Sample:
{'compartment_id': 'ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx', 'deferred_fields': [], 'defined_tags': {'Operations': {'CostCenter': 'US'}}, 'display_name': 'display_name_example', 'freeform_tags': {'Department': 'Finance'}, 'id': 'ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx', 'instance_details': {'block_volumes': [{'attach_details': {'device': 'device_example', 'display_name': 'display_name_example', 'is_pv_encryption_in_transit_enabled': True, 'is_read_only': True, 'is_shareable': True, 'type': 'iscsi', 'use_chap': True}, 'create_details': {'autotune_policies': [{'autotune_type': 'DETACHED_VOLUME', 'max_vpus_per_gb': 56}], 'availability_domain': 'Uocm:PHX-AD-1', 'backup_policy_id': 'ocid1.backuppolicy.oc1..xxxxxxEXAMPLExxxxxx', 'block_volume_replicas': [{'availability_domain': 'Uocm:PHX-AD-1', 'display_name': 'display_name_example'}], 'compartment_id': 'ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx', 'defined_tags': {'Operations': {'CostCenter': 'US'}}, 'display_name': 'display_name_example', 'freeform_tags': {'Department': 'Finance'}, 'is_auto_tune_enabled': True, 'kms_key_id': 'ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx', 'size_in_gbs': 56, 'source_details': {'id': 'ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx', 'type': 'volume'}, 'vpus_per_gb': 56}, 'volume_id': 'ocid1.volume.oc1..xxxxxxEXAMPLExxxxxx'}], 'instance_type': 'compute', 'launch_details': {'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', 'create_vnic_details': {'assign_private_dns_record': True, 'assign_public_ip': True, 'defined_tags': {'Operations': {'CostCenter': 'US'}}, 'display_name': 'display_name_example', 'freeform_tags': {'Department': 'Finance'}, 'hostname_label': 'hostname_label_example', 'nsg_ids': [], 'private_ip': 'private_ip_example', 'skip_source_dest_check': True, 'subnet_id': 'ocid1.subnet.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'}, 'instance_options': {'are_legacy_imds_endpoints_disabled': True}, 'ipxe_script': 'ipxe_script_example', 'is_pv_encryption_in_transit_enabled': 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'}, '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'}}, 'preferred_maintenance_action': 'LIVE_MIGRATE', 'shape': 'shape_example', 'shape_config': {'baseline_ocpu_utilization': 'BASELINE_1_8', 'memory_in_gbs': 3.4, 'nvmes': 56, 'ocpus': 3.4, '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'}}, 'options': [{'block_volumes': [{'attach_details': {'device': 'device_example', 'display_name': 'display_name_example', 'is_pv_encryption_in_transit_enabled': True, 'is_read_only': True, 'is_shareable': True, 'type': 'iscsi', 'use_chap': True}, 'create_details': {'autotune_policies': [{'autotune_type': 'DETACHED_VOLUME', 'max_vpus_per_gb': 56}], 'availability_domain': 'Uocm:PHX-AD-1', 'backup_policy_id': 'ocid1.backuppolicy.oc1..xxxxxxEXAMPLExxxxxx', 'block_volume_replicas': [{'availability_domain': 'Uocm:PHX-AD-1', 'display_name': 'display_name_example'}], 'compartment_id': 'ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx', 'defined_tags': {'Operations': {'CostCenter': 'US'}}, 'display_name': 'display_name_example', 'freeform_tags': {'Department': 'Finance'}, 'is_auto_tune_enabled': True, 'kms_key_id': 'ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx', 'size_in_gbs': 56, 'source_details': {'id': 'ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx', 'type': 'volume'}, 'vpus_per_gb': 56}, 'volume_id': 'ocid1.volume.oc1..xxxxxxEXAMPLExxxxxx'}], 'instance_type': 'instance_type_example', 'launch_details': {'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', 'create_vnic_details': {'assign_private_dns_record': True, 'assign_public_ip': True, 'defined_tags': {'Operations': {'CostCenter': 'US'}}, 'display_name': 'display_name_example', 'freeform_tags': {'Department': 'Finance'}, 'hostname_label': 'hostname_label_example', 'nsg_ids': [], 'private_ip': 'private_ip_example', 'skip_source_dest_check': True, 'subnet_id': 'ocid1.subnet.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'}, 'instance_options': {'are_legacy_imds_endpoints_disabled': True}, 'ipxe_script': 'ipxe_script_example', 'is_pv_encryption_in_transit_enabled': 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'}, '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'}}, 'preferred_maintenance_action': 'LIVE_MIGRATE', 'shape': 'shape_example', 'shape_config': {'baseline_ocpu_utilization': 'BASELINE_1_8', 'memory_in_gbs': 3.4, 'nvmes': 56, 'ocpus': 3.4, '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'}}, 'secondary_vnics': [{'create_vnic_details': {'assign_private_dns_record': True, 'assign_public_ip': True, 'defined_tags': {'Operations': {'CostCenter': 'US'}}, 'display_name': 'display_name_example', 'freeform_tags': {'Department': 'Finance'}, 'hostname_label': 'hostname_label_example', 'nsg_ids': [], 'private_ip': 'private_ip_example', 'skip_source_dest_check': True, 'subnet_id': 'ocid1.subnet.oc1..xxxxxxEXAMPLExxxxxx'}, 'display_name': 'display_name_example', 'nic_index': 56}]}], 'secondary_vnics': [{'create_vnic_details': {'assign_private_dns_record': True, 'assign_public_ip': True, 'defined_tags': {'Operations': {'CostCenter': 'US'}}, 'display_name': 'display_name_example', 'freeform_tags': {'Department': 'Finance'}, 'hostname_label': 'hostname_label_example', 'nsg_ids': [], 'private_ip': 'private_ip_example', 'skip_source_dest_check': True, 'subnet_id': 'ocid1.subnet.oc1..xxxxxxEXAMPLExxxxxx'}, 'display_name': 'display_name_example', 'nic_index': 56}]}, 'time_created': '2013-10-20T19:20:30+01:00'}
 
compartment_id
string
on success
The OCID of the compartment containing the instance configuration.

Sample:
ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
 
deferred_fields
list / elements=string
on success
Parameters that were not specified when the instance configuration was created, but that are required to launch an instance from the instance configuration. See the LaunchInstanceConfiguration operation.

 
defined_tags
dictionary
on success
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`

Sample:
{'Operations': {'CostCenter': 'US'}}
 
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
 
freeform_tags
dictionary
on success
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 Resource Tags.
Example: `{"Department": "Finance"}`

Sample:
{'Department': 'Finance'}
 
id
string
on success
The OCID of the instance configuration.

Sample:
ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
 
instance_details
complex
on success

   
block_volumes
complex
on success
Block volume parameters.

     
attach_details
complex
on success

       
device
string
on success
The device name.

Sample:
device_example
       
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
       
is_pv_encryption_in_transit_enabled
boolean
on success
Whether to enable in-transit encryption for the data volume's paravirtualized attachment. The default value is false.

Sample:
True
       
is_read_only
boolean
on success
Whether the attachment should be created in read-only mode.

Sample:
True
       
is_shareable
boolean
on success
Whether the attachment should be created in shareable mode. If an attachment is created in shareable mode, then other instances can attach the same volume, provided that they also create their attachments in shareable mode. Only certain volume types can be attached in shareable mode. Defaults to false if not specified.

Sample:
True
       
type
string
on success
The type of volume. The only supported values are "iscsi" and "paravirtualized".

Sample:
iscsi
       
use_chap
boolean
on success
Whether to use CHAP authentication for the volume attachment. Defaults to false.

Sample:
True
     
create_details
complex
on success

       
autotune_policies
complex
on success
The list of autotune policies enabled for this volume.

         
autotune_type
string
on success
This specifies the type of autotunes supported by OCI.

Sample:
DETACHED_VOLUME
         
max_vpus_per_gb
integer
on success
This will be the maximum VPUs/GB performance level that the volume will be auto-tuned temporarily based on performance monitoring.

Sample:
56
       
availability_domain
string
on success
The availability domain of the volume.
Example: `Uocm:PHX-AD-1`

Sample:
Uocm:PHX-AD-1
       
backup_policy_id
string
on success
If provided, specifies the ID of the volume backup policy to assign to the newly created volume. If omitted, no policy will be assigned.

Sample:
ocid1.backuppolicy.oc1..xxxxxxEXAMPLExxxxxx
       
block_volume_replicas
complex
on success
The list of block volume replicas to be enabled for this volume in the specified destination availability domains.

         
availability_domain
string
on success
The availability domain of the block volume replica.
Example: `Uocm:PHX-AD-1`

Sample:
Uocm:PHX-AD-1
         
display_name
string
on success
The display name of the block volume replica. You may optionally specify a *display name* for the block volume replica, otherwise a default is provided.

Sample:
display_name_example
       
compartment_id
string
on success
The OCID of the compartment that contains the volume.

Sample:
ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
       
defined_tags
dictionary
on success
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`

Sample:
{'Operations': {'CostCenter': 'US'}}
       
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
       
freeform_tags
dictionary
on success
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 Resource Tags.
Example: `{"Department": "Finance"}`

Sample:
{'Department': 'Finance'}
       
is_auto_tune_enabled
boolean
on success
Specifies whether the auto-tune performance is enabled for this boot volume. This field is deprecated. Use the `InstanceConfigurationDetachedVolumeAutotunePolicy` instead to enable the volume for detached autotune.

Sample:
True
       
kms_key_id
string
on success
The OCID of the Vault service key to assign as the master encryption key for the volume.

Sample:
ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx
       
size_in_gbs
integer
on success
The size of the volume in GBs.

Sample:
56
       
source_details
complex
on success

         
id
string
on success
The OCID of the volume.

Sample:
ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
         
type
string
on success

Sample:
volume
       
vpus_per_gb
integer
on success
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 Block Volume Performance Levels for more information.
Allowed values:
* `0`: Represents Lower Cost option.
* `10`: Represents Balanced option.
* `20`: Represents Higher Performance option.
* `30`-`120`: Represents the Ultra High Performance option.
For performance autotune enabled volumes, it would be the Default(Minimum) VPUs/GB.

Sample:
56
     
volume_id
string
on success
The OCID of the volume.

Sample:
ocid1.volume.oc1..xxxxxxEXAMPLExxxxxx
   
instance_type
string
on success
The type of instance details. Supported instanceType is compute

Sample:
compute
   
launch_details
complex
on success

     
agent_config
complex
on success

       
are_all_plugins_disabled
boolean
on success
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 ListInstanceagentAvailablePlugins operation in the Oracle Cloud Agent API. For more information about the available plugins, see Managing Plugins with Oracle Cloud Agent.

Sample:
True
       
is_management_disabled
boolean
on success
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.

Sample:
True
       
is_monitoring_disabled
boolean
on success
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.

Sample:
True
       
plugins_config
complex
on success
The configuration of plugins associated with this instance.

         
desired_state
string
on success
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.

Sample:
ENABLED
         
name
string
on success
The plugin name. To get a list of available plugins, use the ListInstanceagentAvailablePlugins operation in the Oracle Cloud Agent API. For more information about the available plugins, see Managing Plugins with Oracle Cloud Agent.

Sample:
name_example
     
availability_config
complex
on success

       
is_live_migration_preferred
boolean
on success
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.

Sample:
True
       
recovery_action
string
on success
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.

Sample:
RESTORE_INSTANCE
     
availability_domain
string
on success
The availability domain of the instance.
Example: `Uocm:PHX-AD-1`

Sample:
Uocm:PHX-AD-1
     
capacity_reservation_id
string
on success
The OCID of the compute capacity reservation this instance is launched under.

Sample:
ocid1.capacityreservation.oc1..xxxxxxEXAMPLExxxxxx
     
compartment_id
string
on success
The OCID of the compartment containing the instance. Instances created from instance configurations are placed in the same compartment as the instance that was used to create the instance configuration.

Sample:
ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
     
create_vnic_details
complex
on success

       
assign_private_dns_record
boolean
on success
Whether the VNIC should be assigned a private DNS record. See the `assignPrivateDnsRecord` attribute of CreateVnicDetails for more information.

Sample:
True
       
assign_public_ip
boolean
on success
Whether the VNIC should be assigned a public IP address. See the `assignPublicIp` attribute of CreateVnicDetails for more information.

Sample:
True
       
defined_tags
dictionary
on success
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`

Sample:
{'Operations': {'CostCenter': 'US'}}
       
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
       
freeform_tags
dictionary
on success
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 Resource Tags.
Example: `{"Department": "Finance"}`

Sample:
{'Department': 'Finance'}
       
hostname_label
string
on success
The hostname for the VNIC's primary private IP. See the `hostnameLabel` attribute of CreateVnicDetails for more information.

Sample:
hostname_label_example
       
nsg_ids
list / elements=string
on success
A list of the OCIDs of the network security groups (NSGs) to add the VNIC to. For more information about NSGs, see NetworkSecurityGroup.

       
private_ip
string
on success
A private IP address of your choice to assign to the VNIC. See the `privateIp` attribute of CreateVnicDetails for more information.

Sample:
private_ip_example
       
skip_source_dest_check
boolean
on success
Whether the source/destination check is disabled on the VNIC. See the `skipSourceDestCheck` attribute of CreateVnicDetails for more information.

Sample:
True
       
subnet_id
string
on success
The OCID of the subnet to create the VNIC in. See the `subnetId` attribute of CreateVnicDetails for more information.

Sample:
ocid1.subnet.oc1..xxxxxxEXAMPLExxxxxx
     
dedicated_vm_host_id
string
on success
The OCID of the dedicated virtual machine host to place the instance on.
Dedicated VM hosts can be used when launching individual instances from an instance configuration. They cannot be used to launch instance pools.

Sample:
ocid1.dedicatedvmhost.oc1..xxxxxxEXAMPLExxxxxx
     
defined_tags
dictionary
on success
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`

Sample:
{'Operations': {'CostCenter': 'US'}}
     
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
     
extended_metadata
dictionary
on success
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.

     
fault_domain
string
on success
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 ListFaultDomains operation in the Identity and Access Management Service API.
Example: `FAULT-DOMAIN-1`

Sample:
FAULT-DOMAIN-1
     
freeform_tags
dictionary
on success
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 Resource Tags.
Example: `{"Department": "Finance"}`

Sample:
{'Department': 'Finance'}
     
instance_options
complex
on success

       
are_legacy_imds_endpoints_disabled
boolean
on success
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.

Sample:
True
     
ipxe_script
string
on success
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; however, you should 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, you should use the following iSCSI IP address: 169.254.0.2, and boot volume IQN: iqn.2015-02.oracle.boot.
For more information about the Bring Your Own Image feature of Oracle Cloud Infrastructure, see Bring Your Own Image.
For more information about iPXE, see http://ipxe.org.

Sample:
ipxe_script_example
     
is_pv_encryption_in_transit_enabled
boolean
on success
Whether to enable in-transit encryption for the data volume's paravirtualized attachment. The default value is false.

Sample:
True
     
launch_mode
string
on success
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.

Sample:
NATIVE
     
launch_options
complex
on success

       
boot_volume_type
string
on success
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.

Sample:
ISCSI
       
firmware
string
on success
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.

Sample:
BIOS
       
is_consistent_volume_naming_enabled
boolean
on success
Whether to enable consistent volume naming feature. Defaults to false.

Sample:
True
       
is_pv_encryption_in_transit_enabled
boolean
on success
Deprecated. Instead use `isPvEncryptionInTransitEnabled` in InstanceConfigurationLaunchInstanceDetails.

Sample:
True
       
network_type
string
on success
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.

Sample:
E1000
       
remote_data_volume_type
string
on success
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.

Sample:
ISCSI
     
metadata
dictionary
on success
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 Cloud-Init 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 Cloud-Init Documentation.
**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.

     
platform_config
complex
on success

       
are_virtual_instructions_enabled
boolean
on success
Whether virtualization instructions are available. For example, Secure Virtual Machine for AMD shapes or VT-x for Intel shapes.

Sample:
True
       
is_access_control_service_enabled
boolean
on success
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.

Sample:
True
       
is_input_output_memory_management_unit_enabled
boolean
on success
Whether the input-output memory management unit is enabled.

Sample:
True
       
is_measured_boot_enabled
boolean
on success
Whether the Measured Boot feature is enabled on the instance.

Sample:
True
       
is_memory_encryption_enabled
boolean
on success
Whether the instance is a confidential instance. If this value is `true`, the instance is a confidential instance. The default value is `false`.

Sample:
True
       
is_secure_boot_enabled
boolean
on success
Whether Secure Boot is enabled on the instance.

Sample:
True
       
is_symmetric_multi_threading_enabled
boolean
on success
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.

Sample:
True
       
is_trusted_platform_module_enabled
boolean
on success
Whether the Trusted Platform Module (TPM) is enabled on the instance.

Sample:
True
       
numa_nodes_per_socket
string
on success
The number of NUMA nodes per socket (NPS).

Sample:
NPS0
       
percentage_of_cores_enabled
integer
on success
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.

Sample:
56
       
type
string
on success
The type of platform being configured.

Sample:
AMD_MILAN_BM
     
preemptible_instance_config
complex
on success

       
preemption_action
complex
on success

         
preserve_boot_volume
boolean
on success
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.

Sample:
True
         
type
string
on success
The type of action to run when the instance is interrupted for eviction.

Sample:
TERMINATE
     
preferred_maintenance_action
string
on success
The preferred maintenance action for an instance. The default is LIVE_MIGRATE, if live migration is supported. * `LIVE_MIGRATE` - Run maintenance using a live migration. * `REBOOT` - Run maintenance using a reboot.

Sample:
LIVE_MIGRATE
     
shape
string
on success
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 ListShapes.

Sample:
shape_example
     
shape_config
complex
on success

       
baseline_ocpu_utilization
string
on success
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.

Sample:
BASELINE_1_8
       
memory_in_gbs
float
on success
The total amount of memory available to the instance, in gigabytes.

Sample:
3.4
       
nvmes
integer
on success
The number of NVMe drives to be used for storage. A single drive has 6.8 TB available.

Sample:
56
       
ocpus
float
on success
The total number of OCPUs available to the instance.

Sample:
3.4
       
vcpus
integer
on success
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.

Sample:
56
     
source_details
complex
on success

       
boot_volume_id
string
on success
The OCID of the boot volume used to boot the instance.

Sample:
ocid1.bootvolume.oc1..xxxxxxEXAMPLExxxxxx
       
boot_volume_size_in_gbs
integer
on success
The size of the boot volume in GBs. The minimum value is 50 GB and the maximum value is 32,768 GB (32 TB).

Sample:
56
       
boot_volume_vpus_per_gb
integer
on success
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 Block Volume Performance Levels for more information.
Allowed values:
* `10`: Represents Balanced option.
* `20`: Represents Higher Performance option.
* `30`-`120`: Represents the Ultra High Performance option.
For performance autotune enabled volumes, it would be the Default(Minimum) VPUs/GB.

Sample:
56
       
image_id
string
on success
The OCID of the image used to boot the instance.

Sample:
ocid1.image.oc1..xxxxxxEXAMPLExxxxxx
       
instance_source_image_filter_details
complex
on success

         
compartment_id
string
on success
The OCID of the compartment containing images to search

Sample:
ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
         
defined_tags_filter
dictionary
on success
Filter based on these defined tags. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.

         
operating_system
string
on success
The image's operating system.
Example: `Oracle Linux`

Sample:
operating_system_example
         
operating_system_version
string
on success
The image's operating system version.
Example: `7.2`

Sample:
operating_system_version_example
       
kms_key_id
string
on success
The OCID of the Vault service key to assign as the master encryption key for the boot volume.

Sample:
ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx
       
source_type
string
on success
The source type for the instance. Use `image` when specifying the image OCID. Use `bootVolume` when specifying the boot volume OCID.

Sample:
bootVolume
   
options
complex
on success
The Compute Instance Configuration parameters.

     
block_volumes
complex
on success
Block volume parameters.

       
attach_details
complex
on success

         
device
string
on success
The device name.

Sample:
device_example
         
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
         
is_pv_encryption_in_transit_enabled
boolean
on success
Whether to enable in-transit encryption for the data volume's paravirtualized attachment. The default value is false.

Sample:
True
         
is_read_only
boolean
on success
Whether the attachment should be created in read-only mode.

Sample:
True
         
is_shareable
boolean
on success
Whether the attachment should be created in shareable mode. If an attachment is created in shareable mode, then other instances can attach the same volume, provided that they also create their attachments in shareable mode. Only certain volume types can be attached in shareable mode. Defaults to false if not specified.

Sample:
True
         
type
string
on success
The type of volume. The only supported values are "iscsi" and "paravirtualized".

Sample:
iscsi
         
use_chap
boolean
on success
Whether to use CHAP authentication for the volume attachment. Defaults to false.

Sample:
True
       
create_details
complex
on success

         
autotune_policies
complex
on success
The list of autotune policies enabled for this volume.

           
autotune_type
string
on success
This specifies the type of autotunes supported by OCI.

Sample:
DETACHED_VOLUME
           
max_vpus_per_gb
integer
on success
This will be the maximum VPUs/GB performance level that the volume will be auto-tuned temporarily based on performance monitoring.

Sample:
56
         
availability_domain
string
on success
The availability domain of the volume.
Example: `Uocm:PHX-AD-1`

Sample:
Uocm:PHX-AD-1
         
backup_policy_id
string
on success
If provided, specifies the ID of the volume backup policy to assign to the newly created volume. If omitted, no policy will be assigned.

Sample:
ocid1.backuppolicy.oc1..xxxxxxEXAMPLExxxxxx
         
block_volume_replicas
complex
on success
The list of block volume replicas to be enabled for this volume in the specified destination availability domains.

           
availability_domain
string
on success
The availability domain of the block volume replica.
Example: `Uocm:PHX-AD-1`

Sample:
Uocm:PHX-AD-1
           
display_name
string
on success
The display name of the block volume replica. You may optionally specify a *display name* for the block volume replica, otherwise a default is provided.

Sample:
display_name_example
         
compartment_id
string
on success
The OCID of the compartment that contains the volume.

Sample:
ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
         
defined_tags
dictionary
on success
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`

Sample:
{'Operations': {'CostCenter': 'US'}}
         
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
         
freeform_tags
dictionary
on success
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 Resource Tags.
Example: `{"Department": "Finance"}`

Sample:
{'Department': 'Finance'}
         
is_auto_tune_enabled
boolean
on success
Specifies whether the auto-tune performance is enabled for this boot volume. This field is deprecated. Use the `InstanceConfigurationDetachedVolumeAutotunePolicy` instead to enable the volume for detached autotune.

Sample:
True
         
kms_key_id
string
on success
The OCID of the Vault service key to assign as the master encryption key for the volume.

Sample:
ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx
         
size_in_gbs
integer
on success
The size of the volume in GBs.

Sample:
56
         
source_details
complex
on success

           
id
string
on success
The OCID of the volume.

Sample:
ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
           
type
string
on success

Sample:
volume
         
vpus_per_gb
integer
on success
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 Block Volume Performance Levels for more information.
Allowed values:
* `0`: Represents Lower Cost option.
* `10`: Represents Balanced option.
* `20`: Represents Higher Performance option.
* `30`-`120`: Represents the Ultra High Performance option.
For performance autotune enabled volumes, it would be the Default(Minimum) VPUs/GB.

Sample:
56
       
volume_id
string
on success
The OCID of the volume.

Sample:
ocid1.volume.oc1..xxxxxxEXAMPLExxxxxx
     
instance_type
string
on success
The type of instance details. Supported instanceType is compute

Sample:
instance_type_example
     
launch_details
complex
on success

       
agent_config
complex
on success

         
are_all_plugins_disabled
boolean
on success
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 ListInstanceagentAvailablePlugins operation in the Oracle Cloud Agent API. For more information about the available plugins, see Managing Plugins with Oracle Cloud Agent.

Sample:
True
         
is_management_disabled
boolean
on success
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.

Sample:
True
         
is_monitoring_disabled
boolean
on success
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.

Sample:
True
         
plugins_config
complex
on success
The configuration of plugins associated with this instance.

           
desired_state
string
on success
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.

Sample:
ENABLED
           
name
string
on success
The plugin name. To get a list of available plugins, use the ListInstanceagentAvailablePlugins operation in the Oracle Cloud Agent API. For more information about the available plugins, see Managing Plugins with Oracle Cloud Agent.

Sample:
name_example
       
availability_config
complex
on success

         
is_live_migration_preferred
boolean
on success
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.

Sample:
True
         
recovery_action
string
on success
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.

Sample:
RESTORE_INSTANCE
       
availability_domain
string
on success
The availability domain of the instance.
Example: `Uocm:PHX-AD-1`

Sample:
Uocm:PHX-AD-1
       
capacity_reservation_id
string
on success
The OCID of the compute capacity reservation this instance is launched under.

Sample:
ocid1.capacityreservation.oc1..xxxxxxEXAMPLExxxxxx
       
compartment_id
string
on success
The OCID of the compartment containing the instance. Instances created from instance configurations are placed in the same compartment as the instance that was used to create the instance configuration.

Sample:
ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
       
create_vnic_details
complex
on success

         
assign_private_dns_record
boolean
on success
Whether the VNIC should be assigned a private DNS record. See the `assignPrivateDnsRecord` attribute of CreateVnicDetails for more information.

Sample:
True
         
assign_public_ip
boolean
on success
Whether the VNIC should be assigned a public IP address. See the `assignPublicIp` attribute of CreateVnicDetails for more information.

Sample:
True
         
defined_tags
dictionary
on success
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`

Sample:
{'Operations': {'CostCenter': 'US'}}
         
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
         
freeform_tags
dictionary
on success
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 Resource Tags.
Example: `{"Department": "Finance"}`

Sample:
{'Department': 'Finance'}
         
hostname_label
string
on success
The hostname for the VNIC's primary private IP. See the `hostnameLabel` attribute of CreateVnicDetails for more information.

Sample:
hostname_label_example
         
nsg_ids
list / elements=string
on success
A list of the OCIDs of the network security groups (NSGs) to add the VNIC to. For more information about NSGs, see NetworkSecurityGroup.

         
private_ip
string
on success
A private IP address of your choice to assign to the VNIC. See the `privateIp` attribute of CreateVnicDetails for more information.

Sample:
private_ip_example
         
skip_source_dest_check
boolean
on success
Whether the source/destination check is disabled on the VNIC. See the `skipSourceDestCheck` attribute of CreateVnicDetails for more information.

Sample:
True
         
subnet_id
string
on success
The OCID of the subnet to create the VNIC in. See the `subnetId` attribute of CreateVnicDetails for more information.

Sample:
ocid1.subnet.oc1..xxxxxxEXAMPLExxxxxx
       
dedicated_vm_host_id
string
on success
The OCID of the dedicated virtual machine host to place the instance on.
Dedicated VM hosts can be used when launching individual instances from an instance configuration. They cannot be used to launch instance pools.

Sample:
ocid1.dedicatedvmhost.oc1..xxxxxxEXAMPLExxxxxx
       
defined_tags
dictionary
on success
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`

Sample:
{'Operations': {'CostCenter': 'US'}}
       
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
       
extended_metadata
dictionary
on success
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.

       
fault_domain
string
on success
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 ListFaultDomains operation in the Identity and Access Management Service API.
Example: `FAULT-DOMAIN-1`

Sample:
FAULT-DOMAIN-1
       
freeform_tags
dictionary
on success
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 Resource Tags.
Example: `{"Department": "Finance"}`

Sample:
{'Department': 'Finance'}
       
instance_options
complex
on success

         
are_legacy_imds_endpoints_disabled
boolean
on success
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.

Sample:
True
       
ipxe_script
string
on success
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; however, you should 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, you should use the following iSCSI IP address: 169.254.0.2, and boot volume IQN: iqn.2015-02.oracle.boot.
For more information about the Bring Your Own Image feature of Oracle Cloud Infrastructure, see Bring Your Own Image.
For more information about iPXE, see http://ipxe.org.

Sample:
ipxe_script_example
       
is_pv_encryption_in_transit_enabled
boolean
on success
Whether to enable in-transit encryption for the data volume's paravirtualized attachment. The default value is false.

Sample:
True
       
launch_mode
string
on success
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.

Sample:
NATIVE
       
launch_options
complex
on success

         
boot_volume_type
string
on success
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.

Sample:
ISCSI
         
firmware
string
on success
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.

Sample:
BIOS
         
is_consistent_volume_naming_enabled
boolean
on success
Whether to enable consistent volume naming feature. Defaults to false.

Sample:
True
         
is_pv_encryption_in_transit_enabled
boolean
on success
Deprecated. Instead use `isPvEncryptionInTransitEnabled` in InstanceConfigurationLaunchInstanceDetails.

Sample:
True
         
network_type
string
on success
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.

Sample:
E1000
         
remote_data_volume_type
string
on success
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.

Sample:
ISCSI
       
metadata
dictionary
on success
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 Cloud-Init 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 Cloud-Init Documentation.
**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.

       
platform_config
complex
on success

         
are_virtual_instructions_enabled
boolean
on success
Whether virtualization instructions are available. For example, Secure Virtual Machine for AMD shapes or VT-x for Intel shapes.

Sample:
True
         
is_access_control_service_enabled
boolean
on success
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.

Sample:
True
         
is_input_output_memory_management_unit_enabled
boolean
on success
Whether the input-output memory management unit is enabled.

Sample:
True
         
is_measured_boot_enabled
boolean
on success
Whether the Measured Boot feature is enabled on the instance.

Sample:
True
         
is_memory_encryption_enabled
boolean
on success
Whether the instance is a confidential instance. If this value is `true`, the instance is a confidential instance. The default value is `false`.

Sample:
True
         
is_secure_boot_enabled
boolean
on success
Whether Secure Boot is enabled on the instance.

Sample:
True
         
is_symmetric_multi_threading_enabled
boolean
on success
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.

Sample:
True
         
is_trusted_platform_module_enabled
boolean
on success
Whether the Trusted Platform Module (TPM) is enabled on the instance.

Sample:
True
         
numa_nodes_per_socket
string
on success
The number of NUMA nodes per socket (NPS).

Sample:
NPS0
         
percentage_of_cores_enabled
integer
on success
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.

Sample:
56
         
type
string
on success
The type of platform being configured.

Sample:
AMD_MILAN_BM
       
preemptible_instance_config
complex
on success

         
preemption_action
complex
on success

           
preserve_boot_volume
boolean
on success
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.

Sample:
True
           
type
string
on success
The type of action to run when the instance is interrupted for eviction.

Sample:
TERMINATE
       
preferred_maintenance_action
string
on success
The preferred maintenance action for an instance. The default is LIVE_MIGRATE, if live migration is supported. * `LIVE_MIGRATE` - Run maintenance using a live migration. * `REBOOT` - Run maintenance using a reboot.

Sample:
LIVE_MIGRATE
       
shape
string
on success
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 ListShapes.

Sample:
shape_example
       
shape_config
complex
on success

         
baseline_ocpu_utilization
string
on success
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.

Sample:
BASELINE_1_8
         
memory_in_gbs
float
on success
The total amount of memory available to the instance, in gigabytes.

Sample:
3.4
         
nvmes
integer
on success
The number of NVMe drives to be used for storage. A single drive has 6.8 TB available.

Sample:
56
         
ocpus
float
on success
The total number of OCPUs available to the instance.

Sample:
3.4
         
vcpus
integer
on success
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.

Sample:
56
       
source_details
complex
on success

         
boot_volume_id
string
on success
The OCID of the boot volume used to boot the instance.

Sample:
ocid1.bootvolume.oc1..xxxxxxEXAMPLExxxxxx
         
boot_volume_size_in_gbs
integer
on success
The size of the boot volume in GBs. The minimum value is 50 GB and the maximum value is 32,768 GB (32 TB).

Sample:
56
         
boot_volume_vpus_per_gb
integer
on success
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 Block Volume Performance Levels for more information.
Allowed values:
* `10`: Represents Balanced option.
* `20`: Represents Higher Performance option.
* `30`-`120`: Represents the Ultra High Performance option.
For performance autotune enabled volumes, it would be the Default(Minimum) VPUs/GB.

Sample:
56
         
image_id
string
on success
The OCID of the image used to boot the instance.

Sample:
ocid1.image.oc1..xxxxxxEXAMPLExxxxxx
         
instance_source_image_filter_details
complex
on success

           
compartment_id
string
on success
The OCID of the compartment containing images to search

Sample:
ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
           
defined_tags_filter
dictionary
on success
Filter based on these defined tags. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.

           
operating_system
string
on success
The image's operating system.
Example: `Oracle Linux`

Sample:
operating_system_example
           
operating_system_version
string
on success
The image's operating system version.
Example: `7.2`

Sample:
operating_system_version_example
         
kms_key_id
string
on success
The OCID of the Vault service key to assign as the master encryption key for the boot volume.

Sample:
ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx
         
source_type
string
on success
The source type for the instance. Use `image` when specifying the image OCID. Use `bootVolume` when specifying the boot volume OCID.

Sample:
bootVolume
     
secondary_vnics
complex
on success
Secondary VNIC parameters.

       
create_vnic_details
complex
on success

         
assign_private_dns_record
boolean
on success
Whether the VNIC should be assigned a private DNS record. See the `assignPrivateDnsRecord` attribute of CreateVnicDetails for more information.

Sample:
True
         
assign_public_ip
boolean
on success
Whether the VNIC should be assigned a public IP address. See the `assignPublicIp` attribute of CreateVnicDetails for more information.

Sample:
True
         
defined_tags
dictionary
on success
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`

Sample:
{'Operations': {'CostCenter': 'US'}}
         
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
         
freeform_tags
dictionary
on success
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 Resource Tags.
Example: `{"Department": "Finance"}`

Sample:
{'Department': 'Finance'}
         
hostname_label
string
on success
The hostname for the VNIC's primary private IP. See the `hostnameLabel` attribute of CreateVnicDetails for more information.

Sample:
hostname_label_example
         
nsg_ids
list / elements=string
on success
A list of the OCIDs of the network security groups (NSGs) to add the VNIC to. For more information about NSGs, see NetworkSecurityGroup.

         
private_ip
string
on success
A private IP address of your choice to assign to the VNIC. See the `privateIp` attribute of CreateVnicDetails for more information.

Sample:
private_ip_example
         
skip_source_dest_check
boolean
on success
Whether the source/destination check is disabled on the VNIC. See the `skipSourceDestCheck` attribute of CreateVnicDetails for more information.

Sample:
True
         
subnet_id
string
on success
The OCID of the subnet to create the VNIC in. See the `subnetId` attribute of CreateVnicDetails for more information.

Sample:
ocid1.subnet.oc1..xxxxxxEXAMPLExxxxxx
       
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
       
nic_index
integer
on success
Which physical network interface card (NIC) the VNIC will use. Defaults to 0. Certain bare metal instance shapes have two active physical NICs (0 and 1). If you add a secondary VNIC to one of these instances, you can specify which NIC the VNIC will use. For more information, see L(Virtual Network Interface Cards (VNICs),https://docs.cloud.oracle.com/iaas/Content/Network/Tasks/managingVNICs.htm).

Sample:
56
   
secondary_vnics
complex
on success
Secondary VNIC parameters.

     
create_vnic_details
complex
on success

       
assign_private_dns_record
boolean
on success
Whether the VNIC should be assigned a private DNS record. See the `assignPrivateDnsRecord` attribute of CreateVnicDetails for more information.

Sample:
True
       
assign_public_ip
boolean
on success
Whether the VNIC should be assigned a public IP address. See the `assignPublicIp` attribute of CreateVnicDetails for more information.

Sample:
True
       
defined_tags
dictionary
on success
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: `{"Operations": {"CostCenter": "42"}}`

Sample:
{'Operations': {'CostCenter': 'US'}}
       
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
       
freeform_tags
dictionary
on success
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 Resource Tags.
Example: `{"Department": "Finance"}`

Sample:
{'Department': 'Finance'}
       
hostname_label
string
on success
The hostname for the VNIC's primary private IP. See the `hostnameLabel` attribute of CreateVnicDetails for more information.

Sample:
hostname_label_example
       
nsg_ids
list / elements=string
on success
A list of the OCIDs of the network security groups (NSGs) to add the VNIC to. For more information about NSGs, see NetworkSecurityGroup.

       
private_ip
string
on success
A private IP address of your choice to assign to the VNIC. See the `privateIp` attribute of CreateVnicDetails for more information.

Sample:
private_ip_example
       
skip_source_dest_check
boolean
on success
Whether the source/destination check is disabled on the VNIC. See the `skipSourceDestCheck` attribute of CreateVnicDetails for more information.

Sample:
True
       
subnet_id
string
on success
The OCID of the subnet to create the VNIC in. See the `subnetId` attribute of CreateVnicDetails for more information.

Sample:
ocid1.subnet.oc1..xxxxxxEXAMPLExxxxxx
     
display_name
string
on success
A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.

Sample:
display_name_example
     
nic_index
integer
on success
Which physical network interface card (NIC) the VNIC will use. Defaults to 0. Certain bare metal instance shapes have two active physical NICs (0 and 1). If you add a secondary VNIC to one of these instances, you can specify which NIC the VNIC will use. For more information, see L(Virtual Network Interface Cards (VNICs),https://docs.cloud.oracle.com/iaas/Content/Network/Tasks/managingVNICs.htm).

Sample:
56
 
time_created
string
on success
The date and time the instance configuration was created, in the format defined by RFC3339.
Example: `2016-08-25T21:10:29.600Z`

Sample:
2013-10-20T19:20:30+01:00


Authors

  • Oracle (@oracle)