Class Instance
A compute host. The image used to launch the instance determines its operating system and other
software. The shape specified during the launch process determines the number of CPUs and memory
allocated to the instance.
When you launch an instance, it is automatically attached to a virtual
network interface card (VNIC), called the primary VNIC. The VNIC
has a private IP address from the subnet's CIDR. You can either assign a
private IP address of your choice or let Oracle automatically assign one.
You can choose whether the instance has a public IP address. To retrieve the
addresses, use the {@link #listVnicAttachments(ListVnicAttachmentsRequest) listVnicAttachments}
operation to get the VNIC ID for the instance, and then call
{@link #getVnic(GetVnicRequest) getVnic} with the VNIC ID.
For more information, see
Overview of the Compute Service.
To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized,
talk to an administrator. If you're an administrator who needs to write policies to give users access, see
Getting Started with Policies.
Warning: Oracle recommends that you avoid using any confidential information when you
supply string values using the API.
Assembly: OCI.DotNetSDK.Core.dll
Syntax
Properties
AgentConfig
Declaration
[JsonProperty(PropertyName = "agentConfig")]
public InstanceAgentConfig AgentConfig { get; set; }
Property Value
AvailabilityConfig
Declaration
[JsonProperty(PropertyName = "availabilityConfig")]
public InstanceAvailabilityConfig AvailabilityConfig { get; set; }
Property Value
AvailabilityDomain
Declaration
[Required(ErrorMessage = "AvailabilityDomain is required.")]
[JsonProperty(PropertyName = "availabilityDomain")]
public string AvailabilityDomain { get; set; }
Property Value
Type |
Description |
string |
The availability domain the instance is running in.
Example: Uocm:PHX-AD-1
|
Remarks
CapacityReservationId
Declaration
[JsonProperty(PropertyName = "capacityReservationId")]
public string CapacityReservationId { get; set; }
Property Value
Type |
Description |
string |
The OCID of the compute capacity reservation this instance is launched under.
When this field contains an empty string or is null, the instance is not currently in a capacity reservation.
For more information, see Capacity Reservations.
|
ClusterPlacementGroupId
Declaration
[JsonProperty(PropertyName = "clusterPlacementGroupId")]
public string ClusterPlacementGroupId { get; set; }
Property Value
Type |
Description |
string |
The OCID of the cluster placement group of the instance.
|
CompartmentId
Declaration
[Required(ErrorMessage = "CompartmentId is required.")]
[JsonProperty(PropertyName = "compartmentId")]
public string CompartmentId { get; set; }
Property Value
Type |
Description |
string |
The OCID of the compartment that contains the instance.
|
ComputeHostGroupId
Declaration
[JsonProperty(PropertyName = "computeHostGroupId")]
public string ComputeHostGroupId { get; set; }
Property Value
Type |
Description |
string |
The OCID for the Customer-unique host group
|
DedicatedVmHostId
Declaration
[JsonProperty(PropertyName = "dedicatedVmHostId")]
public string DedicatedVmHostId { get; set; }
Property Value
Type |
Description |
string |
The OCID of the dedicated virtual machine host that the instance is placed on.
|
Declaration
[JsonProperty(PropertyName = "definedTags")]
public Dictionary<string, Dictionary<string, object>> DefinedTags { get; set; }
Property Value
DisplayName
Declaration
[JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
Property Value
Type |
Description |
string |
A user-friendly name. Does not have to be unique, and it's changeable.
Avoid entering confidential information.
|
Declaration
[JsonProperty(PropertyName = "extendedMetadata")]
public Dictionary<string, object> ExtendedMetadata { get; set; }
Property Value
Type |
Description |
Dictionary<string, object> |
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).
|
FaultDomain
Declaration
[JsonProperty(PropertyName = "faultDomain")]
public string FaultDomain { get; set; }
Property Value
Type |
Description |
string |
The name of the fault domain the instance is running in.
A fault domain is a grouping of hardware and infrastructure within an availability domain.
Each availability domain contains three fault domains. Fault domains let you distribute your
instances so that they are not on the same physical hardware within a single availability domain.
A hardware failure or Compute hardware maintenance that affects one fault domain does not affect
instances in other fault domains.
If you do not specify the fault domain, the system selects one for you.
Example: FAULT-DOMAIN-1
|
Declaration
[JsonProperty(PropertyName = "freeformTags")]
public Dictionary<string, string> FreeformTags { get; set; }
Property Value
Type |
Description |
Dictionary<string, string> |
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"}
|
Id
Declaration
[Required(ErrorMessage = "Id is required.")]
[JsonProperty(PropertyName = "id")]
public string Id { get; set; }
Property Value
Type |
Description |
string |
The OCID of the instance.
|
ImageId
Declaration
[JsonProperty(PropertyName = "imageId")]
public string ImageId { get; set; }
Property Value
Type |
Description |
string |
Deprecated. Use sourceDetails instead.
|
InstanceConfigurationId
Declaration
[JsonProperty(PropertyName = "instanceConfigurationId")]
public string InstanceConfigurationId { get; set; }
Property Value
Type |
Description |
string |
The OCID of the Instance Configuration used to source launch details for this instance. Any other fields supplied in the instance launch request override the details stored in the Instance Configuration for this instance launch.
|
InstanceOptions
Declaration
[JsonProperty(PropertyName = "instanceOptions")]
public InstanceOptions InstanceOptions { get; set; }
Property Value
IpxeScript
Declaration
[JsonProperty(PropertyName = "ipxeScript")]
public string IpxeScript { get; set; }
Property Value
Type |
Description |
string |
When a bare metal or virtual machine
instance boots, the iPXE firmware that runs on the instance is
configured to run an iPXE script to continue the boot process.
If you want more control over the boot process, you can provide
your own custom iPXE script that will run when the instance boots.
Be aware that the same iPXE script will run
every time an instance boots, not only after the initial
LaunchInstance call.
The default iPXE script connects to the instance's local boot
volume over iSCSI and performs a network boot. If you use a custom iPXE
script and want to network-boot from the instance's local boot volume
over iSCSI the same way as the default iPXE script, use the
following iSCSI IP address: 169.254.0.2, and boot volume IQN:
iqn.2015-02.oracle.boot.
If your instance boot volume attachment type is paravirtualized,
the boot volume is attached to the instance through virtio-scsi and no iPXE script is used.
If your instance boot volume attachment type is paravirtualized
and you use custom iPXE to network boot into your instance,
the primary boot volume is attached as a data volume through virtio-scsi drive.
For more information about the Bring Your Own Image feature of
Oracle Cloud Infrastructure, see
Bring Your Own Image.
For more information about iPXE, see http://ipxe.org.
|
IsCrossNumaNode
Declaration
[JsonProperty(PropertyName = "isCrossNumaNode")]
public bool? IsCrossNumaNode { get; set; }
Property Value
Type |
Description |
bool? |
Whether the instance\u2019s OCPUs and memory are distributed across multiple NUMA nodes.
|
LaunchMode
Declaration
[JsonProperty(PropertyName = "launchMode")]
[JsonConverter(typeof(ResponseEnumConverter))]
public Instance.LaunchModeEnum? LaunchMode { get; set; }
Property Value
Type |
Description |
Instance.LaunchModeEnum? |
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.
|
LaunchOptions
Declaration
[JsonProperty(PropertyName = "launchOptions")]
public LaunchOptions LaunchOptions { get; set; }
Property Value
LicensingConfigs
Declaration
[JsonProperty(PropertyName = "licensingConfigs")]
public List<LicensingConfig> LicensingConfigs { get; set; }
Property Value
Type |
Description |
List<LicensingConfig> |
List of licensing configurations associated with the instance.
|
LifecycleState
Declaration
[Required(ErrorMessage = "LifecycleState is required.")]
[JsonProperty(PropertyName = "lifecycleState")]
[JsonConverter(typeof(ResponseEnumConverter))]
public Instance.LifecycleStateEnum? LifecycleState { get; set; }
Property Value
Declaration
[JsonProperty(PropertyName = "metadata")]
public Dictionary<string, string> Metadata { get; set; }
Property Value
PlacementConstraintDetails
Declaration
[JsonProperty(PropertyName = "placementConstraintDetails")]
public PlacementConstraintDetails PlacementConstraintDetails { get; set; }
Property Value
Declaration
[JsonProperty(PropertyName = "platformConfig")]
public PlatformConfig PlatformConfig { get; set; }
Property Value
PreemptibleInstanceConfig
Declaration
[JsonProperty(PropertyName = "preemptibleInstanceConfig")]
public PreemptibleInstanceConfigDetails PreemptibleInstanceConfig { get; set; }
Property Value
Region
Declaration
[Required(ErrorMessage = "Region is required.")]
[JsonProperty(PropertyName = "region")]
public string Region { get; set; }
Property Value
Type |
Description |
string |
The region that contains the availability domain the instance is running in.
For the us-phoenix-1 and us-ashburn-1 regions, phx and iad are returned, respectively.
For all other regions, the full region name is returned.
Examples: phx , eu-frankfurt-1
|
SecurityAttributes
Declaration
[JsonProperty(PropertyName = "securityAttributes")]
public Dictionary<string, Dictionary<string, object>> SecurityAttributes { get; set; }
Property Value
SecurityAttributesState
Declaration
[JsonProperty(PropertyName = "securityAttributesState")]
[JsonConverter(typeof(ResponseEnumConverter))]
public Instance.SecurityAttributesStateEnum? SecurityAttributesState { get; set; }
Property Value
Shape
Declaration
[Required(ErrorMessage = "Shape is required.")]
[JsonProperty(PropertyName = "shape")]
public string Shape { get; set; }
Property Value
Type |
Description |
string |
The shape of the instance. The shape determines the number of CPUs and the amount of memory
allocated to the instance. You can enumerate all available shapes by calling
{@link #listShapes(ListShapesRequest) listShapes}.
|
ShapeConfig
Declaration
[JsonProperty(PropertyName = "shapeConfig")]
public InstanceShapeConfig ShapeConfig { get; set; }
Property Value
SourceDetails
Declaration
[JsonProperty(PropertyName = "sourceDetails")]
public InstanceSourceDetails SourceDetails { get; set; }
Property Value
Declaration
[JsonProperty(PropertyName = "systemTags")]
public Dictionary<string, Dictionary<string, object>> SystemTags { get; set; }
Property Value
Type |
Description |
Dictionary<string, Dictionary<string, object>> |
System tags for this resource. Each key is predefined and scoped to a namespace.
Example: {"foo-namespace": {"bar-key": "value"}}
|
TimeCreated
Declaration
[Required(ErrorMessage = "TimeCreated is required.")]
[JsonProperty(PropertyName = "timeCreated")]
public DateTime? TimeCreated { get; set; }
Property Value
Type |
Description |
DateTime? |
The date and time the instance was created, in the format defined by RFC3339.
Example: 2016-08-25T21:10:29.600Z
|
TimeMaintenanceRebootDue
Declaration
[JsonProperty(PropertyName = "timeMaintenanceRebootDue")]
public DateTime? TimeMaintenanceRebootDue { get; set; }
Property Value
Type |
Description |
DateTime? |
The date and time the instance is expected to be stopped / started, in the format defined by RFC3339.
After that time if instance hasn't been rebooted, Oracle will reboot the instance within 24 hours of the due time.
Regardless of how the instance was stopped, the flag will be reset to empty as soon as instance reaches Stopped state.
Example: 2018-05-25T21:10:29.600Z
|