Skip to content

Compute

Instances

In OpenCloud, an Instance is a collection of Compute and Storage Resources. Instance Compute and Volumes are separated because there are unique actions that can be taken on each part.

  • Instance Compute information is located on the Compute > Instances Tab.
  • Volumes that are attached to the Instance are located on the Storage > Volumes Tab.
  • There are other ways of viewing the Instance Volumes from inside the Instance details screen.

It is highly recommended that all Windows and Linux Instances install qemu-guest-agent as part of the initial OS configuration process. This agent provides more robust monitoring and reporting of Instance metrics in OpenCloud as well as provides the Instance Snapshot functionality to Windows and Linux Instances. For Windows, this guest agent is part of the VirtIO Tools install. Linux users will need to determine what version is needed for their flavor of Linux.

Overview

Instance Lifecycle

Instances can be in the following states:

Permanent Temporary
  • Created
  • Running
  • Stopped
  • Destroyed
  • Expunged
  • Creating
  • Starting
  • Stopping
  • Expunging

Creating Instances

  1. In OpenCloud, click on Compute > Instances.
  2. Select the Add Instance button at the top of the screen.

    Add Instance

  3. A new window will open.

  4. Select the Zone for the Instance.

    Available Zones in OpenCloud
    Zone Description
    us-mi-abh-01 MI05 - Detroit, Michigan
    us-co-eng-01 CO01 - Denver, Colorado
  5. Select either the Template or ISO heading to view a list of Templates or ISOs that are available.

    Drivers

    Instances Templates may need drivers installed. Please refer to the VirtIO Driver details.

  6. Choose a Compute offering for the Instance. Depending on the type of Instance and what purpose it will serve, choose an offering that makes sense and/or follows best practices. Compute Dense Offerings that start with a CD and Memory Dense Offerings start with a MD. The CPU and RAM for each Offering will be displayed next to the Offering name.

  7. All Templates comes with a 100 GB ROOT disk volume that can be resized after Instance creation. The default ROOT disk size for all Templates is 100 GB as shown below the Compute Offering selection box. There is also an option to Override Root Disk Size to create a ROOT disk larger than 100GB if desired.
  8. Select whether a DATA disk should be attached to the Instance. This first DATA disk is a separate disk that can be the start of a new data storage Volume if needed. There is also an option to forgo adding an additional DATA disk during Instance creation.
  9. To add a Custom Data Disk, select Custom and specify the Disk Size in GB in the box below.

    Limits

    Each volume has a max size of 5,000 GB

  10. Select the network that should be assigned to the Instance. An IP address will be provided via DHCP or an address that's within the subnet's range can be specifically assigned.

  11. Selecting an SSH Key Pair is optional.

    📝 Note: See How-To on SSH Keys for more information on this feature.

  12. At the bottom, there is an option labeled Advanced Mode. Click on the toggle button to show more options.

    1. There is a choice of traditional BIOS booting or the more secure UEFI booting. If creating an Instance from a Template, the Template's specific boot method will already be selected.

      📝 Note: Setting the Instance to UEFI or BIOS during the initial creation is important as it cannot be changed later. 

    2. Dynamic scaling will be disabled by default and should not be toggled on. 

    3. If there are Affinity Groups created already, this new Instance can be added to these groups under the Advanced Mode Options. If not, this part can be left blank. Please refer to the Affinity Groups section for more information.

  13. The last portion of the Instance creation is the area for the name of the Instance. It is strongly recommended to provide a friendly name the instance here as it will help with identification.

    Character Limit

    Instance name can only contain ASCII letters 'a' through 'z', the digits '0' through '9', and the hyphen ('-'), must be between 1 and 63 characters long, and can't start or end with "-" and can't start with digit

  14. After filling out all the information, click Launch Instance. The screen will revert to the main Instances window.  

  15. Click on the Instance name in the Instances screen to go into the Instance details.
  16. The list of details in the right window on the Instance details screen can be clicked on such as NICs, Volumes, and Snapshots. 

Accessing the Console

  1. The Instance Console allows for direct access the Instance OS.
  2. The Console can be accessed by pressing the Console button.

    Console Button

  3. The Console should load in a new browser tab and will show the OS screen of the VM. Mouse and Keyboard access will be automatically accessible.

  4. The menu bar of the Console, which is on the left-hand side of the Console screen hidden behind a small tab, contains extra features that can be used with the Console.
  5. The Top option button, represented by an "A" key, contains extra keys that can be selected to send that key, along with others, to the Console screen.
  6. The middle option is a clipboard that can be used to send text directly to whatever empty textbox is selected in the OS.
  7. The bottom option can expand the screen so that the OS windows takes up more of the window.

Attaching an ISO

Instances can have ISOs attached. The ISO must be uploaded to OpenCloud before it can be attached.

  1. In OpenCloud, click on Compute > Instances.
  2. Click on the name of the Instance that needs an ISO mounted to go into the Instance details.
  3. At the top right, click on the Attach ISO button.

    Attach ISO

  4. This will bring up a dropdown menu of ISOs to select. Choose the correct one and then click OK.

  5. The ISO will be attached to the OS using whatever Optical Drive is installed on the OS. Most if not all Templates include an Optical Drive but attaching an ISO should push one down to the Instance if it is missing.
  6. ISOs can also be unattached from the Instance in the same way. Click on the same button to un-attach the ISO.

VirtIO Drivers

  1. The US Signal OpenCloud Templates that are used for Instance creation contain the OpenCloud VirtIO drivers by default, but there may be times when these drivers will need to be installed manually on an Instance. These drivers, much like the VMware Tools drivers, allow for imported Instances to use the best type of OpenCloud disk adapters and vNICs.
  2. If a custom Windows ISO is uploaded to create an Instance, the VirtIO drivers will need to be added to the Windows Installer through the Instance before the Windows Install can continue.
  3. To make sure that the VirtIO drivers are added to a Instance make sure that the Instance is assigned the “Windows PV” OS type in OpenCloud. Once the Instance is made and the Windows software starts the installation process, there may be a point where Windows cannot find the specific disks to install onto.
  4. At this point, the Windows ISO must be detached from the Instance and the VirtIO drivers attached.
  5. Go to the Instance details page and select the Detach ISO option from the top right.

    Detatch ISO

  6. This will detach the Windows ISO from the Instance after hitting OK in the dialog box.

  7. Then, go to the same spot and select Mount ISO.

    Mount ISO

  8. Select the VirtIO driver ISO to mount. It will be named VirtIO Windows Drivers and will be present in the ISO selection screen. After this ISO has been mounted, switch back to Windows Install and browse for the proper disk drivers. These will be in the following place: viostor/'windows version'/amd64.

  9. Once these drivers are added to the Windows Installer, unmount the VirtIO ISO and switch back to the Windows ISO using the same unmount and mount functions.
  10. The disk that can be used to install Windows should be visible on the install page, and the process can continue.
  11. If an existing Windows Machine needs the VirtIO drivers installed, attach the VirtIO ISO and run the following executable:
    1. Virtio-win-guest-tools
  12. This installer will provide the drivers required to use the full feature suite of OpenCloud.

Adding Settings

  1. Instances that are made from ISOs or Templates will not have some specific default Settings that are required on all OpenCloud Instances for optimal performance. These Settings can only be applied when the Instance is stopped.
  2. The following Settings are recommended for Instances:
    1. video.hardware = virtio
    2. rootDiskController = virtio
  3. To add these Settings, first click on Compute > Instances and click on the Instance in question.
  4. Click on the name of the Instance to enter into its details.
  5. Click on the Stop Instance button to stop the Instance.

    Stop Instance

  6. Once the Instance is stopped, click on Settings

    Settings

  7. In the Settings Menu, click on the Name box at the top of the other settings on this page:

    Entry

  8. For this example, we are adding the video.hardware setting, but this example applies to all necessary settings. Type in video.hardware in the Name box and then type in virtio in the Value box.

    Video Hardware

  9. Once these items are filled in, click on the Check Mark to Add Setting

    Check Mark

  10. This will add the Setting to the Instance.

  11. Continue adding Settings until the four specified above are added.
  12. The Instance can then be Started again by clicking the Start button.

    Start Instance

  13. The Instance will now use the better VirtIO drivers for Display as well as the more optimal VirtIO Controllers if it boots using BIOS. The rootDiskController Setting currently has no effect on UEFI Instances.

  14. The Resolution of the OS in the Instance can now be changed to be larger once the Instance is using the VirtIO drivers for graphical hardware as well.

Attaching Additional Networks

OpenCloud allows Instances to have multiple Networks attached to them. It is possible for an Instance to belong to multiple networks in OpenCloud.

  1. In OpenCloud, click on Compute > Instances.
  2. Click onto the Instance name to enter the Instance details screen.
  3. From this screen, click on the NICs tab.
  4. To add an additional NIC, click on the Add Network to Instance button.
  5. A dialog box will open. Select the Network in question from the drop-down menu.
  6. An additional NIC with a unique MAC address will be attached to the instance. This action will also create a new vNIC inside the OS of the Instance.
  7. From this same NICs tab, NICS can be removed from Instances or set the Default NIC for the Instance.
  8. Click on the small + next to the NIC's Device ID. It will expand the NIC and show its details along with option buttons.
  9. There will be a button to set the selected NIC as Default, which means that it can never be deleted from the Instance and will always be assigned.
  10. There are also options to change the NIC IP settings if necessary.
  11. The red trashcan button will delete the NIC. Only non-Default NICs can be deleted. To delete an old Default NIC that is no longer needed, an additional NIC will need to be added and assigned as the Default for the Instance.

If the Instance OS does not support hot-add of NICs, a reboot may be required.

Changing a Network

It is not possible to change the network attached to a NIC. A 2nd NIC will need to be added and swapped.

  1. In OpenCloud, click on `Compute > Instances.
  2. Click onto the Instance name to enter the Instance details screen.
  3. From this screen, click on the NICs tab.
  4. Add an additional NIC, click on the Add Network to Instance button.
  5. Choose the new network and click OK
  6. Click the + sign next to new NIC to expand the details (Device ID will be higher then 0).
  7. Click the icon that looks like a checkmark with a box around it (hovering over you will see Set default NIC) and choose Yes when prompted.
  8. The NIC ordering will change and your new network should now be now Device 0.
  9. Click the + sign next to old NIC to expand the details (Device ID will be higher then 0).
  10. Click the Red Trash Can icon to remove the old NIC

If the Instance OS does not support hot-add of NICs, a reboot may be required.

The above steps assume the Instance only has 1 NIC. Steps will change slightly if you have multiple NICs already

Stopping and Starting

Instances can be stopped or started from the Instance details menu. Stopping an Instance will shut the Instance down and Starting an Instance will power the Instance back on.

  1. In OpenCloud, click on Compute > Instances.
  2. Click on the Instance name to enter into the details of the Instance.
  3. Select Stop Instance from the options in the upper right of the screen.

    Stop Instance

  4. A dialog box will pop up. There is no need to force the Instance to stop unless it did not respond to previous attempts at stopping. Click OK.

  5. The Instance will then be stopped.
  6. To start the Instance again, click on the Start Instance button.

    Start Instance

Stopping Instances from Guest

Stopping instances should be performed from the OpenCloud UI. If an instance is shutdown from within the OS, the HA (High Availability) process will automatically restart the instance.

Reboot an Instance

  1. In OpenCloud, click on Compute and then Instances.
  2. Select the Instance to be rebooted and then select the button that says Reboot Instance in the upper right corner.

    Reboot Instance

  3. Confirm the reboot by clicking OK. The Instance will be rebooted, and an event will be generated in the tasks.

Deleting/Destroying

Note

Once an Instance is deleted, or expunged, it can no longer be recovered. US Signal is also unable to recover deleted Instances.

  1. To totally remove an Instance and free up its resources, an Instance must be Destroyed AND Expunged in OpenCloud.
  2. Once executing the option to Destroy an instance, it is set in the Destroyed State and its Volumes will be retained for 24 hours, keeping the allocated Storage and Compute resources in use. During this time, the Instance can be restored by performing a Restore action.
  3. After 24 hours, the Instance and its Volumes are automatically removed. This process deletes the attached Data Volumes and releases all other resources. After this process occurs, US Signal cannot recover an Instances.
  4. If needed, there is an option to Expunge in the Destroy Instance confirmation screen. This will free up the Storage.
  5. To perform either a Destroy or Expunge operation, go to Compute and then Instances.
  6. Click on the Instance Name in question and enter its details page.
  7. Select the Red Trashcan Destroy Instance button in the upper right corner.

    Destroy Instance

  8. A confirmation dialog box will appear. To remove the Instance immediately, select the Expunge option.

  9. To delete the associated Data Volumes that are attached to the Instance, the Data Volume names will need to be populated in the Data Volumes to be Deleted box. Otherwise, the Data Volumes will not be removed along with the Instance and Root Volume.

    Delete Data Volumes

  10. The Expunge option will immediately delete the Instance and all of its Root and Data Volumes as long as it is specified in the Data Volumes to be Deleted box. US Signal cannot recover any of this data.

  11. To recover a Destroyed Instance that has NOT been Expunged, click on the Instance name from the list of Instances to go into its details.
  12. Select Recover Instance from the options in the upper right corner.
  13. The Instance will then be recovered in a stopped state and can be powered on again.

Scaling Resources

All Instances in OpenCloud are assigned their resources through what is called a Compute Offering. These are standardized Instance resource builds that define specific CPU and RAM allotments for Instances. These Compute Offerings can range from the small to the exceptionally large.

  1. To see the list of Compute Offerings that are available, go to Service Offerings, > Compute Offerings.
  2. The list here will be the Compute Offerings that are available to Instances.
  3. To change what Computer Offering is assigned to an Instance, first go to Compute > Instances.
  4. At the bottom of the Instance information box on the left-hand side, the current Compute Offering that is assigned to the Instance is listed.
  5. To change the Instance Compute Offering, the Instance must be stopped first.
  6. Once the Instance is stopped, select the Scale Instance option in the upper right corner of the screen.

    Scale Instance

  7. A dialog box will appear with other Compute Offering choices. Select the new choice and then click Ok.

  8. The process will complete and then the Instance can be started again. Check that its details reflect the newly assigned Compute Offering.

Edit Instance

Instance names, OS types, and the Group that they belong to can be changed after an Instance is created.

  1. In OpenCloud, click on Compute and then Instances
  2. Click on the name of the Instance to be changed.
  3. Inside the Instance details screen, click on Edit Instance in the upper right hard corner of the screen.

    Edit Instance

  4. A new screen will appear. The Name of the Instance will be what is reflected in the OpenCloud GUI. The Display Name of the Instance will be what is represented inside the specific Instances's detail screen. Change these to the required Values.

  5. The OS Type of the Instance does matter when dealing with Windows Instances. All Windows Instances should be assigned the Windows PV OS type as this designation will allow the Instance to use the best available drivers for OpenCloud. The OS type can be changed after the Instance is created. It is recommended to stop and start the Instance after the OS type is changed.
  6. If specific Instances need to be assigned to assigned Security Groups within OpenCloud, this screen is also where that Group will be configured. If there are no Security Groups to assign, this space can be left blank.

Viewing Instance Metrics

OpenCloud provides detailed descriptions of CPU, Memory, Disk, and Network usage.

  1. In OpenCloud, click on Compute and then Instances.
  2. Click on the name of the Instance to view.
  3. On the right window of the Instance screen, click on Metrics to see various hourly views of the specific Instance statistics.
  4. The different Resources have explanations next to them in small grey circles that explain what exactly OpenCloud is recording. These statistics can assist when diagnosing Instance performance issues.

Assign an Instance

Instances can be assigned to different Accounts in the Domain or reassigned to another account within a sub-domain.

  1. In OpenCloud, click on Compute and then Instances.
  2. Click on the name of the Instance to be moved.
  3. Click on the Assign Instance to another Account Move to Account button.

    Instance must be stopped before the Assign Instance to another Account button appears.

  4. Fill in Dialog box with the the required values:

    Field Name Input Required/Optional
    Account type Leave this as Account. Projects are not used in OpenCloud Required
    Domain Set the domain. (If left blank, the Domain associated with the currently logged in Account/User will be used.) Optional
    Account Set the account. (If left blank, the Account associated with the currently logged in User will be used.) Optional
    Network Set the Network. Isolated networks are not used in OpenCloud. Required
  5. Once all of these options are filled out, click Submit. The Instance will then be moved to the new Account/User and Domain.

Requirements for Reassigning Instances

  • Instances with Instance Snapshots or Volume Snapshots cannot be assigned to other accounts without first removing the snapshots.
  • Instances must be stopped.
  • Attached ISOs need to be unmounted.

Reset UserData

  1. In OpenCloud, click on Compute and then Instances.
  2. Make sure the instance is powered off.
  3. Click on Reset Userdata on Instance Icon.
  4. Change the Userdata override slider to Enabled.
  5. Choose either:
    1. Stored Userdata - These are created under Instances --> User Data
    2. Manual Userdata Entry - You can also manually provide the userdata if needed.
  6. Click Ok

Feature Availability

This feature is only available when using OpenCloud's Network - Services offering. See Network Offerings

Reset SSH Key

  1. In OpenCloud, click on Compute and then Instances.
  2. Make sure the instance is powered off.
  3. Click on Reset SSH key pair Icon.
  4. Select the SSH key you would like to reset the instance with
  5. Click Ok

Feature Availability

This feature is only available when using OpenCloud's Network - Services offering. See Network Offerings

Instance Snapshots

Information for Instance Snapshots can be found here: Instance Snapshots

SSH Key Pairs

Opencloud supports the use of SSH keys to log into instances for additional security. SSH Keys are unique each user and one user connect to another users instance cannot log in unless they share their SSH Key Files.

Create SSH Key

  1. In OpenCloud, click on Compute and then click on Instances and then click on SSH Key Pairs
  2. Click on Create a SSH Key Pair
  3. Fill in the Name Field (Required)
  4. If needed enter the Public Key (Optional)

    Note

    If public key is set, OpenCloud will register the public key. If nothing is set, OpenCloud will create a new SSH key pair.

  5. If needed change the Domain dropdown (Optional)

  6. Click Ok

Feature Availability

This feature is only available when using OpenCloud's Network - Services offering. See Network Offerings

User-Data and Meta-Data

OpenCloud Users can register Userdata and refer to that data while deploying or editing or resetting the userdata of an instance.

  1. In OpenCloud, click on Compute and then User Data.
  2. Click on Register a Userdata at the top of the page.

    Userdata

  3. A new window will open. Enter the Name, Plain Userdata content, Userdata Parameters, the Domain for the Userdata, and an Optional Account for the Userdata.

Extra Notes for User-Data / Meta-Data

  • Userdata content length can be up to 32kb.
  • If the Userdata has variables declared in it, it can be registered with these variables intact. The variable has to be defied in the Userdata Parameters. If the variables in the Userdata content are predefined metadata like "public_hostname," then these parameters should not be declared.
  • Once Userdata entries are created, they cannot be edited. A new Userdata entry will need to be created if changes have to be made.
  • Userdata can be linked to newly created Instances by selecting the newly created Userdata under the Advanced Mode in Instance creation.
  • The Userdata created can then be linked to a Template or ISO on registration/upload by using the UserDatatoTemplate API.

Feature Availability

This feature is only available when using OpenCloud's Network - Services offering. See Network Offerings

Affinity Groups

Affinity Groups enforce instances to run on the same host or different hosts in the underlying infrastructure. This feature allows Users to specify the affinity group to which an Instance should belong and operate under.

  • Instances with an “Anti-Affinity” group will not live on the same host.
  • Instances with an “Affinity” group will live on the same host.

Affinity Groups are defined at the Account level.

Affinity Groups can be attached to Instances when they are created. Affinity Groups can also be changed on Instances from existing Instances, but the Instance must be stopped before the Affinity Group can be changed.

Create New Group

  1. In OpenCloud, click on Compute and then Affinity Groups.
  2. Click on Add new Affinity Group
  3. A dialog box will pop up. Fill out the name of the group, the description, and then the type.

Add during Instance Creation

  1. During Instance creation, one of the advanced options is to assign an Instance to an Affinity Group. Entering the Advanced Options menu will allow the Instance to be added to the Affinity Group upon completion.
  2. Once the Instance is created, it will belong to the Affinity Group assigned to it.
  3. The Instance will show what affinity group it belongs to in the Instance details.

Add/Change Existing Instances

To use new Affinity Groups on existing instances, the instance must be stopped first.

  1. In OpenCloud, click on Compute and then Instances
  2. Click on the Instance name to go into the Instance details.
  3. On the Instance menu screen, select the Stop Instance button.
  4. A dialog box will come up asking to confirm. Clicking OK will start the process.
  5. Once the Instance is shut down, the option Change Affinity will appear on the list of options in the upper right.
  6. Click on this button to bring up a list of affinity groups. Select the one that should be added to the Instance and click Ok.
  7. Once the Affinity Group has been set, the Instance will reflect that new assignment.
  8. The Instance can then be started again.

View Members

  1. In OpenCloud, click on Compute and then Affinity Groups.
  2. Click on the Affinity Group name to bring up its details.
  3. Inside of the Affinity Group window, click on View Instances to see what instances are assigned to the rule.

Delete Group

  1. In OpenCloud, click on Compute and then Affinity Groups.
  2. Select the group to delete by clicking the box next to the group name and then click on the red “Delete” button.
  3. A dialog window will pop up asking for confirmation. Click OK.
  4. All Instances associated with this affinity group will be disassociated after it is deleted.