Oracle · Schema
OCI Compute Instance
Schema for an Oracle Cloud Infrastructure compute instance. Defines the structure of a virtual machine or bare metal instance including its shape configuration, source image details, networking, lifecycle state, and metadata.
CloudDatabaseEnterpriseInfrastructureSaaSFortune 100
Properties
| Name | Type | Description |
|---|---|---|
| id | string | The OCID of the instance. Oracle Cloud Identifier (OCID) is a unique identifier assigned to every OCI resource. |
| compartmentId | string | The OCID of the compartment that contains the instance. Compartments are the primary building blocks for organizing cloud resources. |
| availabilityDomain | string | The availability domain the instance is running in. An availability domain is one or more data centers within a region. |
| faultDomain | string | The fault domain the instance is running in. Fault domains provide anti-affinity within an availability domain. |
| displayName | string | A user-friendly name for the instance. Does not have to be unique and is changeable. Avoid entering confidential information. |
| shape | string | The shape of the instance. The shape determines the number of CPUs, amount of memory, and other resources allocated to the instance. |
| shapeConfig | object | |
| region | string | The region that contains the availability domain the instance is running in. |
| imageId | string | Deprecated. Use sourceDetails instead. The OCID of the image used to boot the instance. |
| sourceDetails | object | |
| lifecycleState | object | |
| timeCreated | string | The date and time the instance was created, in RFC 3339 format. |
| metadata | object | Custom metadata key/value pairs provided for the instance. Common keys include ssh_authorized_keys for providing SSH public keys and user_data for cloud-init scripts (base64-encoded). |
| extendedMetadata | object | Additional metadata key/value pairs that can contain nested JSON objects. |
| launchMode | string | Specifies the configuration mode for launching VM instances. |
| launchOptions | object | |
| agentConfig | object | |
| availabilityConfig | object | |
| platformConfig | object | |
| timeMaintenanceRebootDue | string | The date and time the instance is expected to be stopped or migrated for infrastructure maintenance, if applicable. |
| capacityReservationId | string | The OCID of the compute capacity reservation this instance is launched under. |
| dedicatedVmHostId | string | The OCID of the dedicated virtual machine host the instance is placed on. |
| isCrossNumaNode | boolean | Whether the instance spans multiple NUMA nodes. |
| definedTags | object | |
| freeformTags | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.oracle.com/en-us/iaas/schemas/compute/instance.json",
"title": "OCI Compute Instance",
"description": "Schema for an Oracle Cloud Infrastructure compute instance. Defines the structure of a virtual machine or bare metal instance including its shape configuration, source image details, networking, lifecycle state, and metadata.",
"type": "object",
"required": [
"id",
"compartmentId",
"availabilityDomain",
"shape",
"region",
"lifecycleState",
"timeCreated"
],
"properties": {
"id": {
"type": "string",
"description": "The OCID of the instance. Oracle Cloud Identifier (OCID) is a unique identifier assigned to every OCI resource.",
"pattern": "^ocid1\\.instance\\..+$",
"examples": ["ocid1.instance.oc1.phx.abcdefghijklmnop"]
},
"compartmentId": {
"type": "string",
"description": "The OCID of the compartment that contains the instance. Compartments are the primary building blocks for organizing cloud resources.",
"pattern": "^ocid1\\.compartment\\..+$"
},
"availabilityDomain": {
"type": "string",
"description": "The availability domain the instance is running in. An availability domain is one or more data centers within a region.",
"examples": ["Uocm:PHX-AD-1", "Uocm:US-ASHBURN-AD-1"]
},
"faultDomain": {
"type": "string",
"description": "The fault domain the instance is running in. Fault domains provide anti-affinity within an availability domain.",
"examples": ["FAULT-DOMAIN-1", "FAULT-DOMAIN-2", "FAULT-DOMAIN-3"]
},
"displayName": {
"type": "string",
"description": "A user-friendly name for the instance. Does not have to be unique and is changeable. Avoid entering confidential information.",
"maxLength": 255
},
"shape": {
"type": "string",
"description": "The shape of the instance. The shape determines the number of CPUs, amount of memory, and other resources allocated to the instance.",
"examples": [
"VM.Standard.E4.Flex",
"VM.Standard3.Flex",
"BM.Standard3.64",
"VM.GPU.A10.1",
"VM.DenseIO.E4.Flex",
"VM.Standard.A1.Flex"
]
},
"shapeConfig": {
"$ref": "#/$defs/ShapeConfig"
},
"region": {
"type": "string",
"description": "The region that contains the availability domain the instance is running in.",
"examples": ["us-ashburn-1", "us-phoenix-1", "eu-frankfurt-1"]
},
"imageId": {
"type": "string",
"description": "Deprecated. Use sourceDetails instead. The OCID of the image used to boot the instance.",
"pattern": "^ocid1\\.image\\..+$",
"deprecated": true
},
"sourceDetails": {
"$ref": "#/$defs/SourceDetails"
},
"lifecycleState": {
"$ref": "#/$defs/LifecycleState"
},
"timeCreated": {
"type": "string",
"format": "date-time",
"description": "The date and time the instance was created, in RFC 3339 format."
},
"metadata": {
"type": "object",
"description": "Custom metadata key/value pairs provided for the instance. Common keys include ssh_authorized_keys for providing SSH public keys and user_data for cloud-init scripts (base64-encoded).",
"additionalProperties": {
"type": "string"
},
"properties": {
"ssh_authorized_keys": {
"type": "string",
"description": "One or more SSH public keys to be included in the ~/.ssh/authorized_keys file for the default user on the instance. Separate multiple keys with newline characters."
},
"user_data": {
"type": "string",
"description": "Base64-encoded cloud-init user data script to run when the instance starts."
}
}
},
"extendedMetadata": {
"type": "object",
"description": "Additional metadata key/value pairs that can contain nested JSON objects.",
"additionalProperties": true
},
"launchMode": {
"type": "string",
"description": "Specifies the configuration mode for launching VM instances.",
"enum": ["NATIVE", "EMULATED", "PARAVIRTUALIZED", "CUSTOM"]
},
"launchOptions": {
"$ref": "#/$defs/LaunchOptions"
},
"agentConfig": {
"$ref": "#/$defs/AgentConfig"
},
"availabilityConfig": {
"$ref": "#/$defs/AvailabilityConfig"
},
"platformConfig": {
"$ref": "#/$defs/PlatformConfig"
},
"timeMaintenanceRebootDue": {
"type": "string",
"format": "date-time",
"description": "The date and time the instance is expected to be stopped or migrated for infrastructure maintenance, if applicable."
},
"capacityReservationId": {
"type": "string",
"description": "The OCID of the compute capacity reservation this instance is launched under.",
"pattern": "^ocid1\\.capacityreservation\\..+$"
},
"dedicatedVmHostId": {
"type": "string",
"description": "The OCID of the dedicated virtual machine host the instance is placed on.",
"pattern": "^ocid1\\.dedicatedvmhost\\..+$"
},
"isCrossNumaNode": {
"type": "boolean",
"description": "Whether the instance spans multiple NUMA nodes."
},
"definedTags": {
"$ref": "#/$defs/DefinedTags"
},
"freeformTags": {
"$ref": "#/$defs/FreeformTags"
}
},
"$defs": {
"LifecycleState": {
"type": "string",
"description": "The lifecycle state of a compute instance. The state transitions are: PROVISIONING -> RUNNING -> STOPPING -> STOPPED -> STARTING -> RUNNING, and RUNNING -> TERMINATING -> TERMINATED.",
"enum": [
"MOVING",
"PROVISIONING",
"RUNNING",
"STARTING",
"STOPPING",
"STOPPED",
"CREATING_IMAGE",
"TERMINATING",
"TERMINATED"
]
},
"ShapeConfig": {
"type": "object",
"description": "The shape configuration of an instance. For flexible shapes, this specifies the allocated OCPUs, memory, and other resources.",
"properties": {
"ocpus": {
"type": "number",
"description": "The total number of OCPUs available to the instance.",
"minimum": 1,
"examples": [1, 2, 4, 8, 16, 32, 64]
},
"memoryInGBs": {
"type": "number",
"description": "The total amount of memory available to the instance, in gigabytes.",
"minimum": 1,
"examples": [16, 32, 64, 128, 256, 512]
},
"baselineOcpuUtilization": {
"type": "string",
"description": "The baseline OCPU utilization for a subcore burstable instance. BASELINE_1_8 means 12.5% baseline, BASELINE_1_2 means 50% baseline, BASELINE_1_1 means 100% (non-burstable).",
"enum": ["BASELINE_1_8", "BASELINE_1_2", "BASELINE_1_1"]
},
"processorDescription": {
"type": "string",
"description": "A short description of the instance processor.",
"examples": ["2.55 GHz AMD EPYC 7J13 (Milan)", "3.0 GHz Ampere Altra (Arm-based)"]
},
"networkingBandwidthInGbps": {
"type": "number",
"description": "The networking bandwidth available to the instance, in gigabits per second."
},
"maxVnicAttachments": {
"type": "integer",
"description": "The maximum number of VNIC attachments for the instance.",
"minimum": 1
},
"gpus": {
"type": "integer",
"description": "The number of GPUs available to the instance.",
"minimum": 0
},
"gpuDescription": {
"type": "string",
"description": "A short description of the instance GPU.",
"examples": ["NVIDIA A10", "NVIDIA A100"]
},
"localDisks": {
"type": "integer",
"description": "The number of local NVMe disks available to the instance.",
"minimum": 0
},
"localDisksTotalSizeInGBs": {
"type": "number",
"description": "The aggregate size of all local disks, in gigabytes."
},
"vcpus": {
"type": "integer",
"description": "The total number of VCPUs available. This is typically 2x the number of OCPUs.",
"minimum": 1
}
}
},
"SourceDetails": {
"type": "object",
"description": "Details for the source used to launch the instance. The source is either an image or a boot volume.",
"required": ["sourceType"],
"properties": {
"sourceType": {
"type": "string",
"description": "The source type for the instance.",
"enum": ["image", "bootVolume"]
},
"imageId": {
"type": "string",
"description": "The OCID of the image used to boot the instance. Required when sourceType is image.",
"pattern": "^ocid1\\.image\\..+$"
},
"bootVolumeId": {
"type": "string",
"description": "The OCID of the boot volume used to boot the instance. Required when sourceType is bootVolume.",
"pattern": "^ocid1\\.bootvolume\\..+$"
},
"bootVolumeSizeInGBs": {
"type": "integer",
"description": "The size of the boot volume in GBs.",
"minimum": 50,
"maximum": 32768
},
"bootVolumeVpusPerGB": {
"type": "integer",
"description": "The number of volume performance units per GB for the boot volume. 10 = Balanced, 20 = Higher Performance, 30-120 = Ultra High Performance.",
"minimum": 10,
"maximum": 120,
"default": 10
}
},
"if": {
"properties": {
"sourceType": { "const": "image" }
}
},
"then": {
"required": ["imageId"]
},
"else": {
"required": ["bootVolumeId"]
}
},
"LaunchOptions": {
"type": "object",
"description": "Options for tuning the compatibility and performance of VM shapes.",
"properties": {
"bootVolumeType": {
"type": "string",
"description": "Emulation type for the boot volume attachment.",
"enum": ["ISCSI", "SCSI", "IDE", "VFIO", "PARAVIRTUALIZED"]
},
"firmware": {
"type": "string",
"description": "Firmware used to boot the VM.",
"enum": ["BIOS", "UEFI_64"]
},
"networkType": {
"type": "string",
"description": "Emulation type for the physical network interface card.",
"enum": ["E1000", "VFIO", "PARAVIRTUALIZED"]
},
"remoteDataVolumeType": {
"type": "string",
"description": "Emulation type for remote data volume attachments.",
"enum": ["ISCSI", "SCSI", "IDE", "VFIO", "PARAVIRTUALIZED"]
},
"isPvEncryptionInTransitEnabled": {
"type": "boolean",
"description": "Whether in-transit encryption is enabled for the volume's paravirtualized attachment."
},
"isConsistentVolumeNamingEnabled": {
"type": "boolean",
"description": "Whether consistent volume naming is enabled."
}
}
},
"AgentConfig": {
"type": "object",
"description": "Configuration options for the Oracle Cloud Agent software running on the instance.",
"properties": {
"isMonitoringDisabled": {
"type": "boolean",
"description": "Whether the Monitoring plugin is disabled.",
"default": false
},
"isManagementDisabled": {
"type": "boolean",
"description": "Whether the Management plugin is disabled.",
"default": false
},
"areAllPluginsDisabled": {
"type": "boolean",
"description": "Whether all Oracle Cloud Agent plugins are disabled.",
"default": false
},
"pluginsConfig": {
"type": "array",
"description": "The configuration of plugins associated with this instance.",
"items": {
"$ref": "#/$defs/PluginConfig"
}
}
}
},
"PluginConfig": {
"type": "object",
"description": "Configuration details for an Oracle Cloud Agent plugin.",
"required": ["name", "desiredState"],
"properties": {
"name": {
"type": "string",
"description": "The plugin name.",
"examples": [
"Vulnerability Scanning",
"Compute RDMA GPU Monitoring",
"Compute Instance Monitoring",
"Bastion",
"Management Agent",
"Custom Logs Monitoring",
"Compute Instance Run Command",
"Block Volume Management"
]
},
"desiredState": {
"type": "string",
"description": "Whether the plugin should be enabled or disabled.",
"enum": ["ENABLED", "DISABLED"]
}
}
},
"AvailabilityConfig": {
"type": "object",
"description": "Options for VM migration during infrastructure maintenance events.",
"properties": {
"isLiveMigrationPreferred": {
"type": "boolean",
"description": "Whether live migration is the preferred option for infrastructure maintenance."
},
"recoveryAction": {
"type": "string",
"description": "The lifecycle action to take when maintenance is due. RESTORE_INSTANCE restarts the instance after maintenance. STOP_INSTANCE keeps it stopped.",
"enum": ["RESTORE_INSTANCE", "STOP_INSTANCE"]
}
}
},
"PlatformConfig": {
"type": "object",
"description": "The platform configuration for the instance, including security settings like Secure Boot and TPM.",
"properties": {
"type": {
"type": "string",
"description": "The type of platform configuration.",
"enum": [
"AMD_MILAN_BM",
"AMD_MILAN_BM_GPU",
"AMD_ROME_BM",
"AMD_ROME_BM_GPU",
"AMD_VM",
"GENERIC_BM",
"INTEL_ICELAKE_BM",
"INTEL_SKYLAKE_BM",
"INTEL_VM"
]
},
"isSecureBootEnabled": {
"type": "boolean",
"description": "Whether Secure Boot is enabled on the instance."
},
"isTrustedPlatformModuleEnabled": {
"type": "boolean",
"description": "Whether the Trusted Platform Module (TPM) is enabled."
},
"isMeasuredBootEnabled": {
"type": "boolean",
"description": "Whether the Measured Boot feature is enabled."
},
"isMemoryEncryptionEnabled": {
"type": "boolean",
"description": "Whether AMD Secure Encrypted Virtualization (SEV) memory encryption is enabled."
}
}
},
"DefinedTags": {
"type": "object",
"description": "Defined tags for the resource. Each key is predefined and scoped to a namespace. Format: {namespace: {key: value}}.",
"additionalProperties": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"FreeformTags": {
"type": "object",
"description": "Free-form tags for the resource. Each tag is a simple key-value pair with no predefined name, type, or namespace.",
"additionalProperties": {
"type": "string"
}
},
"Shape": {
"type": "object",
"description": "A compute shape determines the resources allocated to an instance. Shapes can be fixed (predetermined resources) or flexible (configurable OCPUs and memory).",
"required": ["shape"],
"properties": {
"shape": {
"type": "string",
"description": "The name of the shape.",
"examples": [
"VM.Standard.E4.Flex",
"VM.Standard3.Flex",
"VM.Standard.A1.Flex",
"BM.Standard3.64",
"VM.GPU.A10.1"
]
},
"availabilityDomain": {
"type": "string",
"description": "The availability domain where the shape is available. Null if available across all ADs."
},
"ocpus": {
"type": "number",
"description": "The default number of OCPUs for this shape."
},
"memoryInGBs": {
"type": "number",
"description": "The default amount of memory for this shape, in GB."
},
"processorDescription": {
"type": "string",
"description": "A short description of the processor."
},
"networkingBandwidthInGbps": {
"type": "number",
"description": "The networking bandwidth for this shape, in Gbps."
},
"maxVnicAttachments": {
"type": "integer",
"description": "The maximum number of VNICs that can be attached."
},
"gpus": {
"type": "integer",
"description": "The number of GPUs for this shape."
},
"gpuDescription": {
"type": "string",
"description": "A short description of the GPU."
},
"localDisks": {
"type": "integer",
"description": "The number of local disks for this shape."
},
"localDisksTotalSizeInGBs": {
"type": "number",
"description": "The aggregate local disk size in GB."
},
"isFlexible": {
"type": "boolean",
"description": "Whether the shape supports flexible OCPU and memory configuration."
},
"isBilledForStoppedInstance": {
"type": "boolean",
"description": "Whether billing continues when the instance is stopped."
}
}
},
"Image": {
"type": "object",
"description": "A boot disk image for launching compute instances. Images can be Oracle-provided platform images, custom images created from instances, or Marketplace partner images.",
"required": [
"id",
"compartmentId",
"operatingSystem",
"operatingSystemVersion",
"lifecycleState",
"timeCreated"
],
"properties": {
"id": {
"type": "string",
"description": "The OCID of the image.",
"pattern": "^ocid1\\.image\\..+$"
},
"compartmentId": {
"type": "string",
"description": "The OCID of the compartment containing the image."
},
"displayName": {
"type": "string",
"description": "A user-friendly name for the image."
},
"operatingSystem": {
"type": "string",
"description": "The operating system of the image.",
"examples": ["Oracle Linux", "CentOS", "Canonical Ubuntu", "Windows"]
},
"operatingSystemVersion": {
"type": "string",
"description": "The operating system version.",
"examples": ["8", "9", "22.04", "Server 2019 Standard"]
},
"lifecycleState": {
"type": "string",
"description": "The lifecycle state of the image.",
"enum": [
"PROVISIONING",
"IMPORTING",
"AVAILABLE",
"EXPORTING",
"DISABLED",
"DELETED"
]
},
"timeCreated": {
"type": "string",
"format": "date-time",
"description": "The date and time the image was created."
},
"baseImageId": {
"type": "string",
"description": "The OCID of the image originally used to create this custom image."
},
"sizeInMBs": {
"type": "integer",
"description": "The boot volume size for instances launched from this image, in MBs."
},
"billableSizeInGBs": {
"type": "integer",
"description": "The billable size of the image in GBs."
},
"createImageAllowed": {
"type": "boolean",
"description": "Whether instances from this image can create new images."
},
"launchMode": {
"type": "string",
"description": "The launch mode of instances created from this image.",
"enum": ["NATIVE", "EMULATED", "PARAVIRTUALIZED", "CUSTOM"]
}
}
}
}
}