7 Compute Instance Concepts

Oracle Private Cloud Appliance lets you provision and manage compute instances.

On Private Cloud Appliance, a compute instance is a virtual machine (VM), which is an independent computing environment that runs on top of physical hardware. The virtualization makes it possible to run multiple compute instances that are isolated from each other.

When you launch a compute instance, you can select the most appropriate type of compute instance for your applications based on characteristics such as the number of CPUs, amount of memory, and network resources.

After you launch a compute instance, you can access it securely from your computer, restart it, attach and detach volumes, and terminate it when you're done with it.

For step-by-step instructions for managing the Compute service, refer to Compute Instance Deployment in the Oracle Private Cloud Appliance User Guide.

Components for Launching Instances

These components are required to launch a compute instance:

Tenancy

The root compartment that contains all of your organization's compartments and cloud resources. The Service Enclave administrator creates the tenancy in which compartments are created. A tenancy administrator creates compartments in a tenancy where the compute resources are created. You must have a tenancy to have compartments where instances are launched.

Compartment

A collection of related resources that are only accessible by certain groups that have been given permission by an administrator in your organization. Compute instances are created in compartments. All compartments exist in a tenancy, which is the root compartment.

Virtual Cloud Network (VCN)

A virtual version of a traditional network—including subnets, route tables, and gateways—on which your compute instance runs. At least one cloud network must be set up by a Compute Enclave administrator before you launch compute instances.

Key Pair

If the image that is used to launch the instance is configured to require Secure Shell (SSH) for authentication, then you need an RSA SSH key pair before launching the instance. This requirement applies to instances launched from images provided with Private Cloud Appliance and by most UNIX type images. If the image is configured to use passwords instead, you need the password instead of the key pair.

Image

A template of a virtual hard drive that determines the operating system and other software for a compute instance. You can also launch compute instances using these images:

  • Images provided with Oracle Private Cloud Appliance

  • Custom images created from other instances

  • Import your own image

For more information about images, see Compute Images in the Oracle Private Cloud Appliance User Guide.

Shape

A template that determines the number of CPUs, amount of memory, and other resources allocated to a newly created compute instance. You choose the most appropriate shape when you launch a compute instance.

Compute Shapes

A shape is a template that determines the number of OCPUs, amount of memory, and number of VNICs that are allocated to a compute instance. You choose a shape when you create an instance.

Private Cloud Appliance supports two types of shapes:

  • Standard shapes: Each shape has a fixed number of OCPUs and memory that are allocated to an instance when the instance is created.
  • Flexible shape: Does not have a fixed number of OCPUs and memory. The flexible shape lets you choose the number of OCPUs and amount of memory that are allocated to an instance when the instance is created.

Standard Shapes

Standard shapes are designed for general-purpose workloads and suitable for a wide range of applications and use cases. Standard shapes provide a balance of cores, memory, and network resources. All standard shapes use block storage for the boot device.

The following table lists the standard shapes:

Shape OCPUs Memory (GB) Maximum VNICs Maximum Bandwidth (Gbps)

VM.PCAStandard1.1

1

16

2

24.6

VM.PCAStandard1.2

2

32

2

24.6

VM.PCAStandard1.4

4

64

4

24.6

VM.PCAStandard1.8

8

128

8

24.6

VM.PCAStandard1.16

16

256

16

24.6

VM.PCAStandard1.24

24

384

24

24.6

VM.PCAStandard1.32

32

512

24

32.0

VM.PCAStandard1.48

48

768

24

48.0

VM.PCAStandard1.60

60

960

24

100.0

Flexible Shape

A flexible shape lets you customize the number of OCPUs and the amount of memory when launching your instance. This flexibility lets you create instances that meet your workload requirements, while optimizing performance and using resources efficiently.

The images provided with Private Cloud Appliance support the flex shape.

Shape OCPUs Memory (GB) Maximum VNICs Maximum Bandwidth

VM.PCAStandard1.Flex

1–32

64 GB maximum per OCPU

512 GB maximum per instance

1 OCPU: 2 VNICs

2 to 24 OCPUs: 1 VNIC per OCPU

25 to 32 OCPUs: 24 VNICs

1 Gbps per OCPU

Storage for Compute Instances

You can expand the storage that's available for your compute instances with the following services:

  • Block Volume: Lets you dynamically provision and manage block volumes that you can attach to one or more compute instances.

  • File Storage: A durable, scalable, secure, enterprise-grade network file system that you can connect to from any compute instance in your virtual cloud network (VCN).

  • Object Storage: An internet-scale, high-performance storage platform that lets you store a large amount of unstructured data of any content type. This storage not tied to any specific compute instance.

Compute Instance Lifecycle

This list describes the different lifecycle states for compute instances.

  • Launching: Occurs when you create a compute instance. The instance is displayed in the Compute Web UI in a provisioning state. Expect provisioning to take several minutes before the state updates to running. After the instance is running, allow another few minutes for the operating system to boot before you attempt to connect.

  • Connecting: You connect to a running Linux or Oracle Solaris instance using a Secure Shell (SSH) connection. Most Linux and UNIX-like operating systems include an SSH client by default.

  • Backing up the boot volume: You can back up the boot volume using the Block Volume backup feature using one of these methods:

    • Manual backups: You manually perform create, get, list, rename, and delete backup commands.

    • Automatic backups: You create a backup policy and a backup policy assignment that specifies the time and frequency of the volume backups. The system automatically performs the commands that back up the volume.

  • Stopping: You can stop an instance using the Compute Web UI, OCI CLI, Compute API, or using the commands available in the operating system when you are logged in to the instance.

    If the applications that run on the instance take more than 15 minutes to shut down, they could be improperly stopped. To avoid this situation, shut down the instance using the commands available in the OS before you stop the instance.

  • Starting or restarting: You can start or restart an instance as needed using the Compute Web UI, OCI CLI, and Compute API.

  • Rebooting: You can reboot an instance as needed using the Compute Web UI, OCI CLI, and Compute API. By default, a reboot gracefully restarts the instance by sending a shutdown command to the operating system. After waiting 15 minutes for the OS to shut down, the instance is powered off and then powered back on.

  • Terminating: You can permanently terminate (delete) instances that you no longer need. Any attached VNICs and volumes are automatically detached when the instance terminates. Eventually, the instance's public and private IP addresses are released and become available for other instances.

    By default, the instance's boot volume is preserved when you terminate the instance. You can attach the boot volume to a different instance as a data volume, or use it to launch a new instance. If you no longer need the boot volume, you can permanently delete as described in Deleting a Boot Volume in the Block Volume Storage chapter in the Oracle Private Cloud Appliance User Guide.

For more information, see Managing the Lifecycle of an Instance in Compute Instance Deployment.

Compute Instance Connections

You can connect to a running compute instance using a Secure Shell (SSH) or Remote Desktop connection.

Most UNIX-style systems include an SSH client by default.

For step-by-step instructions for connecting to an instance, refer to the section titled Connecting to a Compute Instance in the Compute Instance Deployment chapter in the Oracle Private Cloud Appliance User Guide.

Compute Images

An image is a template of a virtual hard drive. The image determines the operating system and other software for a compute instance. You specify an image to use when you launch a compute instance.

These are the types of images you can use to launch a compute instance:

  • Images provided with Oracle Private Cloud Appliance: These include Oracle Linux and Oracle Solaris images. See Images Provided with Oracle Private Cloud Appliance.

  • Custom images: You can create a custom image of a compute instance's boot disk and use it to launch other compute instances. Instances you launch from your image include the customizations, configuration, and software installed when you created the image. See Custom Images Created From Instances.

  • Bring your own image: You can bring your own versions of operating systems to the cloud as long as the underlying hardware supports it. The Private Cloud Appliance services do not depend on the OS that you run. See Bring Your Own Image (BYOI).

Note:

Images for Private Cloud Appliance must have paravirtualized network devices and boot volumes. SR-IOV network devices and iSCSI boot volumes are not supported.

Images Provided with Oracle Private Cloud Appliance

The following table lists the images that are available on the management node in Private Cloud Appliance.

To use these images, you must make them available to the Compute Enclave tenancies where the instances based on these images are launched. For instructions, refer to "Accessing the Management Node Images" in the Compute Images chapter of the Oracle Private Cloud Appliance User Guide.

Image Name and Description
Oracle Linux 8 uln-pca-Oracle-Linux-8.x-<date>-<number>.oci

Oracle's optimized operating system for demanding workloads

Oracle Linux 7

uln-pca-Oracle-Linux-7.x-<date>-<number>.oci

Oracle's optimized operating system for demanding workloads

Oracle Solaris 11.4

uln-pca-Oracle-Solaris-11.4.<SRU_number><date>-<number>.oci

Oracle's OS that provides consistent compatibility, simple administration, and security

Custom Images Created From Instances

You can create a custom image of a compute instance's boot disk and use it to launch other compute instances. Instances you launch from your image include the customizations, configuration, and software installed when you created the image.

Custom images do not include the data from any attached block volumes.

Limitations and Considerations

  • Certain IP addresses are reserved for Private Cloud Appliance use and might not be used in your address numbering scheme. For details, refer to Reserved Network Resources in this guide.

  • When you create an image of an instance, the instance must be in the stopped state. After the custom image is created, you can restart the instance.

  • You cannot create extra custom images of a compute instance while the compute instance is engaged in the image creation process. You can, however, create images of different compute instances at the same time.

  • Custom images are available to all users authorized for the compartment in which the image was created.

  • Custom images inherit the compatible shapes that are set by default from the base image.

Bring Your Own Image (BYOI)

The Bring Your Own Image (BYOI) feature enables you to import your own versions of operating systems into Private Cloud Appliance as long as the underlying hardware supports it. The services do not depend on the OS you run.

The BYOI feature provides these benefits:

  • Enables cloud migration projects.

  • Supports both old and new operating systems.

  • Encourages experimentation.

  • Increases infrastructure flexibility.

Important:

You must comply with all licensing requirements when you upload and start instances based on OS images that you supply.

A critical part of any lift-and-shift cloud migration project is the migration of on-premises virtual machines (VMs) to the cloud. You can import your on-premises virtualized root volumes into Private Cloud Appliance using the custom image import feature, and then launch compute instances using those images.

You can import Microsoft Windows and Linux-based custom images and use them to launch instances on Private Cloud Appliance.

Linux Source Image Requirements

Custom images must meet the following requirements:

  • The maximum image size is 400 GB.

  • The image must be set up for BIOS boot.

  • Only one disk is supported, and it must be the boot drive with a valid master boot record (MBR) and boot loader. You can migrate additional data volumes after you import the image's boot volume.

  • The boot process must not require more data volumes to be present for a successful boot.

  • The boot loader must use LVM or a UUID to locate the boot volume.

  • The disk image cannot be encrypted.

  • The disk image must be a VMDK or QCOW2 file. These images can be converted to .oci type images.

    • Create the image file by cloning the source volume, not by creating a snapshot.

    • VMDK files must be either the "single growable" (monolithicSparse) type or the "stream optimized" (streamOptimized) type, both of which consist of a single VMDK file. All other VMDK formats, such as those that use multiple files, split volumes, or contain snapshots, are not supported.

  • The network interface must use DHCP to discover the network settings. When you import a custom image, existing network interfaces are not re-created. Any existing network interfaces are replaced with a single NIC after the import process is complete. You can attach more VNICs after you launch the imported instance.

  • The network configuration must not hard code the MAC address for the network interface.

  • We recommend that you enable certificate-based SSH, however this recommendation is optional.

Microsoft Windows Source Image Requirements

  • The maximum image size is 400 GB.

  • The image must be set up for a BIOS boot.

  • Only one disk is supported, and it must be the boot drive with a valid master boot record (MBR) and boot loader. You can migrate additional data volumes after you import the image's boot volume.

  • The minimum boot volume size is 256 GB.

  • The boot process must not require other data volumes to be present for a successful boot.

  • The disk image cannot be encrypted.

  • The disk image must be a VMDK or QCOW2 file. Create the image file by cloning the source volume, not by creating a snapshot. VMDK files must be either the "single growable" (monolithicSparse) type or the "stream optimized" (streamOptimized) type, both of which consist of a single VMDK file. All other VMDK formats, such as those that use multiple files, split volumes, or contain snapshots, are not supported.

  • The network interface must use DHCP to discover the network settings. When you import a custom image, existing network interfaces are not re-created. Any existing network interfaces are replaced with a single NIC after the import process is complete. You can attach additional VNICs after you launch the imported instance.

  • The network configuration must not hard code the MAC address for the network interface.

Boot Volumes

When you launch a compute instance based on an Oracle platform image or custom image, a new boot volume for the compute instance is created in the same compartment. That boot volume is associated with that compute instance until you terminate the compute instance.

When you terminate the compute instance, you can preserve the boot volume and its data. This feature gives you more control and management options for your compute instance boot volumes, and enables:

  • Instance scaling: When you terminate your compute instance, you can keep the associated boot volume and use it to launch a new compute instance using a different compute instance type or shape. This flexibility enables you to easily scale up or down the number of cores for a compute instance.

  • Troubleshooting and repair: If you think a boot volume issue is causing a compute instance problem, you can stop the compute instance and detach the boot volume. Then you can attach it to another compute instance as a data volume to troubleshoot it. After resolving the issue, you can then reattach it to the original compute instance or use it to launch a new compute instance.

Boot volume Encryption

Boot volumes are encrypted by default, the same as other block storage volumes.

Important:

Usually, encryption is not supported for compute instances launched from custom images imported for "bring your own image" (BYOI) scenarios.

Listing Boot Volumes

You can list all boot volumes in a specific compartment, or list detailed information on a single boot volume.

Listing Boot Volume Attachments

You can list all the boot volume attachments in a specific compartment. You can also view detailed information on a single boot volume attachment.

Detaching and Attaching a Boot Volume

If a boot volume has been detached from the associated compute instance, you can reattach it to the compute instance. If you want to restart a compute instance with a detached boot volume, you must reattach the boot volume.

If you think a boot volume issue is causing a compute instance problem, you can stop the compute instance and detach the boot volume. Then you can attach it to another compute instance as a data volume to troubleshoot it.

If a boot volume has been detached from the associated compute instance, or if the compute instance is stopped or terminated, you can attach the boot volume to another compute instance as a data volume.

Extending a Boot Volume Partition

You can extend the partition for a boot volume for an existing compute instance by resizing a volume. To take advantage of the larger size, you also need to extend the partition for the boot volume.

Deleting a Boot Volume

When you terminate a compute instance, you choose to delete or preserve the associated boot volume.

If a boot volume has been detached from the compute instance, you can delete the boot volume.

For step-by-step instructions for managing boot volumes, refer to the Block Volume Storage chapter in the Oracle Private Cloud Appliance User Guide.

Custom Boot Volume Sizes

When you launch a compute instance, you can choose whether to use the selected image's default boot volume size, or to specify a custom size up to 32 TB.

For Linux-based images, the custom boot volume size must be larger than the image's default boot volume size or 50 GB, whichever is higher.

For Microsoft Windows-based images, the custom boot volume size must be larger than the image's default boot volume size or 256 GB, whichever is higher. The minimum size requirement for Microsoft Windows images is to ensure that there is enough space available for patches and updates that can require a large amount of space.

If you specify a custom boot volume size, you need to extend the volume to take advantage of the larger size.

Boot Volume Backups

The backups feature of the Block Volume service lets you make a crash-consistent backup, which is a point-in-time snapshot of a boot volume without application interruption or downtime. You can make a backup of a boot volume while it is attached to a running compute instance, or while it is detached from the compute instance. The backup is a full backup.

You can restore a boot volume from any of your boot volume backups. You only need to keep the backups taken for the times you care about.

Boot Volume Tags

When a boot volume backup is created, the source boot volume's tags are automatically included in the boot volume backup.

When you create a compute instance from the boot volume backup, the compute instance includes the source boot volume's tags.

Boot Volume Backup Size

The boot volume backup size might be larger than the source boot volume size for the following reasons:

  • Any part of the boot volume that has been written to is included in the boot volume backup.

  • Many operating systems write or zero out the content, which results in these blocks marked as used. The Block Volume service considers these blocks updated and includes them in the volume backup.

  • Boot volume backups also include metadata, which can be up to 1 GB in additional data.

Restoring a Boot Volume

You can use a boot volume backup to create a compute instance or you can attach it to another compute instance as a data volume. However before you can use a boot volume backup, you need to restore it to a boot volume.

You can restore a boot volume from any of your boot volume backups. You only need to keep the backups taken for the times you care about.

Cloning a Boot Volume

You can create a clone from a boot volume using the Block Volume service. Cloning enables you to make a copy of an existing boot volume without needing to go through the backup and restore process.

Any subsequent changes to the data on the source boot volume are not copied to the boot volume clone. The clone is the same size as the source boot volume unless you specify a larger volume size when you create the clone.

The clone operation occurs immediately and you can use the cloned boot volume when the state changes to available.

There is a single point-in-time reference for a source boot volume while it is being cloned. If you clone a boot volume while the associated compute instance is running, you need to wait for the first clone operation to complete before creating more clones. You also need to wait for any backup operations to complete.

You can only create a clone for a boot volume within the same tenant. You can create a clone for a boot volume between compartments as long as you have the required access permissions for the operation.

For a comparison between backups and clones see .

Simplifying Compute Instance Management

You can simplify the management of your compute instances using these features:

  • Instance Configurations: Are templates that define the settings to use when creating compute instances.

  • Instance Pools: are a group of compute instances that are created from the same compute instance configuration and managed as a group.

For step-by-step instructions for managing the Compute service, refer to the Compute Images chapter in the Oracle Private Cloud Appliance User Guide.

Instance Configurations

A compute 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 compute instance, such as block volume attachments and network configuration.

Instance Pools

Instance pools let you create multiple compute instances from the same instance configuration. They also enable integration with other services, such as the IAM service, making it easier to manage groups of compute instances.

You create a compute instance pool using an existing compute instance configuration.

If you need to update the compute instance configuration, create a new compute instance configuration and then update the compute instance pool to use the new compute instance configuration.

You can delete a compute instance pool.

Caution:

When you delete a compute instance pool all of its resources are permanently deleted, including associated compute instances, attached boot volumes, and block volumes.

Instance Pool Lifecycle States

The following list describes the different lifecycle states for compute instance pools.

  • Provisioning: When you create a compute instance pool, this is the first state the compute instance pool is in. Instances for the compute instance pool are being configured based on the specified compute instance configuration.

  • Starting: The compute instances are being launched. At this point, the only action you can take is to terminate the compute instance pool.

  • Running: The compute instances are created and running.

  • Stopping: The compute instances are in the process of being shut down.

  • Stopped: The compute instances are shut down.

  • Scaling: When you update the compute instance pool size, the pool goes into this state while creating compute instances (for increases in pool size) or terminating compute instances (for decreases in pool size). At this point, the only action you can take is to terminate the compute instance pool.

  • Terminating: The compute instances and associated resources are being terminated.

  • Terminated: The compute instance pool, all its compute instances, and associated resources are terminated.

When working with compute instance configurations and compute instance pools, keep the following points in mind:

  • You can't delete a compute instance configuration if it is associated with at least one compute instance pool.

  • You can use the same compute instance configuration for multiple compute instance pools. However, a compute instance pool can have only one compute instance configuration associated with it.

  • If you modify the compute instance configuration for a compute instance pool, existing compute instances that are part of that pool will not change. Any new compute instances that are created after you modify the compute instance configuration will use the new compute instance configuration. New compute instances will not be created unless you have increased the size of the compute instance pool or terminate existing compute instances.

  • If you decrease the size of a compute instance pool, the oldest compute instances are terminated first.

Extending Compute Resources

The topics in this section describe the compute resources that you can extend and the implications.

Expanding Volumes

You can expand the size of block volumes and boot volumes. You cannot decrease the size.

You have several options to increase the size of your volumes:

Caution:

Before you resize a boot or block volume, create a backup of the volume.

After a volume has been resized, the first backup of the resized volume will be a full backup.

For step-by-step instructions for managing the Compute service, refer to the section titled Resizing Volumes in the Block Volume Storage chapter in the Oracle Private Cloud Appliance User Guide.

Offline Resizing of Block Volumes Using the Compute Web UI

With offline resizing, you detach the volume from a compute instance before you expand the volume size. After the volume is resized and reattached, you need to extend the partition, but you do not need to rescan the disk.

Before you resize a volume, create a full backup of the volume.

Whenever you detach and reattach volumes, there are complexities and risks for both Linux-based and Microsoft Windows-based compute instances. For more information, refer to the section titled Resizing Volumes in the Block Volume Storage chapter in the User Guide.

Rescanning the Disk for a Block Volume or Boot Volume

The Block Volume service lets you expand the size of block volumes and boot volumes while they are online and attached to compute instances.

After the volume is provisioned, you need to run commands to rescan the disk so that the operating system identifies the expanded volume size. You run different rescan commands depending on the operating system of the attached compute instance.

Adding Another Network Interface

You can add additional VNICs to a compute instance. Each additional VNIC can be in a subnet in the same VCN as the primary VNIC, or in a different subnet that is either in the same VCN or a different one.

You might add a VNIC to connect a compute instance to subnets in multiple VCNs. For example, you might set up your own firewall to protect traffic between VCNs, so the compute instance needs to connect to subnets in different VCNs.

Secondary VNICs are supported for these types of compute instances:

  • Linux

  • Microsoft Windows

Here are more details about additional VNICs:

  • There's a limit to how many VNICs can be attached to a compute instance, and it varies by shape. See Compute Shapes.

  • They can be added only after the compute instance is launched.

  • They must always be attached to a compute instance and cannot be moved. The process of creating an additional VNIC automatically attaches it to the compute instance. The process of detaching a secondary VNIC automatically deletes it.

  • They are automatically detached and deleted when you terminate the compute instance.

  • The compute instance's bandwidth is fixed regardless of the number of VNICs attached. You can't specify a bandwidth limit for a particular VNIC on a compute instance.

  • Attaching multiple VNICs from the same subnet CIDR block to a compute instance can introduce asymmetric routing, especially on instances using a variant of Linux. If you need this type of configuration, assign multiple private IP addresses to one VNIC, or using policy-based routing.

For step-by-step instructions for managing the VNICs, refer to the section titled Configuring VNICs and IP Addressing in the Networking chapter in the Oracle Private Cloud Appliance User Guide.