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 > InstancesTab.
- Volumes that are attached to the Instance are located on the Storage > VolumesTab.
- 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 | 
|---|---|
| 
 | 
 | 
Creating Instances
- In OpenCloud, click on Compute > Instances.
- 
Select the Add Instancebutton at the top of the screen. 
- 
A new window will open. 
- 
Select the Zone for the Instance. Available Zones in OpenCloudZone Description us-mi-abh-01 MI05 - Detroit, Michigan us-co-eng-01 CO01 - Denver, Colorado 
- 
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. 
- 
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 CDand Memory Dense Offerings start with aMD. The CPU and RAM for each Offering will be displayed next to the Offering name.
- 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 Sizeto create a ROOT disk larger than 100GB if desired.
- 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.
- 
To add a Custom Data Disk, select Customand specify the Disk Size in GB in the box below.Limits Each volume has a max size of 5,000 GB 
- 
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. 
- 
Selecting an SSH Key Pair is optional. Note: See How-To on SSH Keys for more information on this feature. 
- 
At the bottom, there is an option labeled Advanced Mode. Click on the toggle button to show more options.- 
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. 
- 
Dynamic scaling will be disabled by default and should not be toggled on. 
- 
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. 
 
- 
- 
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 
- 
After filling out all the information, click Launch Instance. The screen will revert to the main Instances window.
- Click on the Instance name in the Instancesscreen to go into the Instance details.
- The list of details in the right window on the Instance details screen can be clicked on such as NICs,Volumes, andSnapshots.
Accessing the Console
- The Instance Console allows for direct access the Instance OS.
- 
The Console can be accessed by pressing the Console button.  
- 
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. 
- 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.
- 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.
- The middle option is a clipboard that can be used to send text directly to whatever empty textbox is selected in the OS.
- 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.
- In OpenCloud, click on Compute>Instances.
- Click on the name of the Instance that needs an ISO mounted to go into the Instance details.
- 
At the top right, click on the Attach ISObutton. 
- 
This will bring up a dropdown menu of ISOs to select. Choose the correct one and then click OK. 
- 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.
- ISOs can also be unattached from the Instance in the same way. Click on the same button to un-attach the ISO.
VirtIO Drivers
- 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.
- 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.
- 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.
- At this point, the Windows ISO must be detached from the Instance and the VirtIO drivers attached.
- 
Go to the Instance details page and select the Detach ISOoption from the top right. 
- 
This will detach the Windows ISO from the Instance after hitting OK in the dialog box. 
- 
Then, go to the same spot and select Mount ISO. 
- 
Select the VirtIO driver ISO to mount. It will be named VirtIO Windows Driversand 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.
- 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.
- The disk that can be used to install Windows should be visible on the install page, and the process can continue.
- If an existing Windows Machine needs the VirtIO drivers installed, attach the VirtIO ISO and run the following executable:  - Virtio-win-guest-tools
 
- This installer will provide the drivers required to use the full feature suite of OpenCloud.
Adding Settings
- 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.
- The following Settings are recommended for Instances:- video.hardware = virtio
- rootDiskController = virtio
 
- To add these Settings, first click on Compute>Instancesand click on the Instance in question.
- Click on the name of the Instance to enter into its details.
- 
Click on the Stop Instance button to stop the Instance.  
- 
Once the Instance is stopped, click on Settings 
- 
In the Settings Menu, click on the Namebox at the top of the other settings on this page: 
- 
For this example, we are adding the video.hardware setting, but this example applies to all necessary settings. Type in video.hardwarein theNamebox and then type invirtioin theValuebox. 
- 
Once these items are filled in, click on the Check Mark to Add Setting  
- 
This will add the Setting to the Instance. 
- Continue adding Settings until the four specified above are added.
- 
The Instance can then be Started again by clicking the Start button.  
- 
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. 
- 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.
- In OpenCloud, click on Compute>Instances.
- Click onto the Instance name to enter the Instance details screen.
- From this screen, click on the NICs tab.
- To add an additional NIC, click on the Add Network to Instancebutton.
- A dialog box will open. Select the Network in question from the drop-down menu.
- 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.
- From this same NICs tab, NICS can be removed from Instances or set the Default NIC for the Instance.
- Click on the small +next to the NIC's Device ID. It will expand the NIC and show its details along with option buttons.
- 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.
- There are also options to change the NIC IP settings if necessary.
- 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.
- In OpenCloud, click on `Compute>Instances.
- Click onto the Instance name to enter the Instance details screen.
- From this screen, click on the NICs tab.
- Add an additional NIC, click on the Add Network to Instancebutton.
- Choose the new network and click OK
- Click the + sign next to new NIC to expand the details (Device ID will be higher then 0).
- Click the icon that looks like a checkmark with a box around it (hovering over you will see Set default NIC) and chooseYeswhen prompted.
- The NIC ordering will change and your new network should now be now Device 0.
- Click the + sign next to old NIC to expand the details (Device ID will be higher then 0).
- 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.
- In OpenCloud, click on Compute > Instances.
- Click on the Instance name to enter into the details of the Instance.
- 
Select Stop Instancefrom the options in the upper right of the screen.  
- 
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. 
- The Instance will then be stopped.
- 
To start the Instance again, click on the Start Instancebutton. 
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
- In OpenCloud, click on Computeand thenInstances.
- 
Select the Instance to be rebooted and then select the button that says Reboot Instancein the upper right corner. 
- 
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.
- To totally remove an Instance and free up its resources, an Instance must be Destroyed AND Expunged in OpenCloud.
- Once executing the option to Destroy an instance, it is set in the DestroyedState 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 aRestoreaction.
- 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.
- If needed, there is an option to Expungein theDestroy Instanceconfirmation screen. This will free up the Storage.
- To perform either a Destroy or Expunge operation, go to Computeand thenInstances.
- Click on the Instance Name in question and enter its details page.
- 
Select the Red Trashcan Destroy Instancebutton in the upper right corner. 
- 
A confirmation dialog box will appear. To remove the Instance immediately, select the Expungeoption.
- 
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 Deletedbox. Otherwise, the Data Volumes will not be removed along with the Instance and Root Volume. 
- 
The Expungeoption will immediately delete the Instance and all of its Root and Data Volumes as long as it is specified in theData Volumes to be Deletedbox. US Signal cannot recover any of this data.
- To recover a DestroyedInstance that has NOT been Expunged, click on the Instance name from the list of Instances to go into its details.
- Select Recover Instancefrom the options in the upper right corner.
- 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.
- To see the list of Compute Offerings that are available, go to Service Offerings, >Compute Offerings.
- The list here will be the Compute Offerings that are available to Instances.
- To change what Computer Offering is assigned to an Instance, first go to Compute>Instances.
- 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.
- To change the Instance Compute Offering, the Instance must be stopped first.
- 
Once the Instance is stopped, select the Scale Instanceoption in the upper right corner of the screen. 
- 
A dialog box will appear with other Compute Offering choices. Select the new choice and then click Ok. 
- 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.
- In OpenCloud, click on Computeand thenInstances
- Click on the name of the Instance to be changed.
- 
Inside the Instance details screen, click on Edit Instancein the upper right hard corner of the screen. 
- 
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. 
- The OS Type of the Instance does matter when dealing with Windows Instances. All Windows Instances should be assigned the Windows PVOS 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.
- 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.
- In OpenCloud, click on Computeand thenInstances.
- Click on the name of the Instance to view.
- On the right window of the Instance screen, click on Metricsto see various hourly views of the specific Instance statistics.
- 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.
- In OpenCloud, click on Computeand thenInstances.
- Click on the name of the Instance to be moved.
- 
Click on the Assign Instance to another Account button. button.Instance must be stopped before the Assign Instance to another Accountbutton appears.
- 
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 
- 
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
- In OpenCloud, click on Computeand thenInstances.
- Make sure the instance is powered off.
- Click on Reset Userdata on InstanceIcon.
- Change the Userdata overrideslider to Enabled.
- Choose either:- Stored Userdata- These are created under- Instances-->- User Data
- Manual Userdata Entry- You can also manually provide the userdata if needed.
 
- Click Ok
Feature Availability
This feature is only available when using OpenCloud's Network - Services offering.  See Network Offerings
Reset SSH Key
- In OpenCloud, click on Computeand thenInstances.
- Make sure the instance is powered off.
- Click on Reset SSH key pairIcon.
- Select the SSH key you would like to reset the instance with
- 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
- In OpenCloud, click on Computeand then click onInstancesand then click onSSH Key Pairs
- Click on Create a SSH Key Pair
- Fill in the NameField (Required)
- 
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. 
- 
If needed change the Domaindropdown (Optional)
- 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.
- In OpenCloud, click on Computeand thenUser Data.
- 
Click on Register a Userdataat the top of the page. 
- 
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 Modein Instance creation.
- The Userdata created can then be linked to a Template or ISO on registration/upload by using the UserDatatoTemplateAPI.
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
- In OpenCloud, click on  Computeand thenAffinity Groups.
- Click on Add new Affinity Group
- A dialog box will pop up. Fill out the name of the group, the description, and then the type.
Add during Instance Creation
- During Instance creation, one of the advanced options is to assign an Instance to an Affinity Group. Entering the Advanced Optionsmenu will allow the Instance to be added to the Affinity Group upon completion.
- Once the Instance is created, it will belong to the Affinity Group assigned to it.
- 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.
- In OpenCloud, click on Computeand thenInstances
- Click on the Instance name to go into the Instance details.
- On the Instance menu screen, select the Stop Instancebutton.
- A dialog box will come up asking to confirm. Clicking OK will start the process.
- Once the Instance is shut down, the option Change Affinitywill appear on the list of options in the upper right.
- 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.
- Once the Affinity Group has been set, the Instance will reflect that new assignment.
- The Instance can then be started again.
View Members
- In OpenCloud, click on Computeand thenAffinity Groups.
- Click on the Affinity Group name to bring up its details.
- Inside of the Affinity Group window, click on View Instancesto see what instances are assigned to the rule.
Delete Group
- In OpenCloud, click on Computeand thenAffinity Groups.
- Select the group to delete by clicking the box next to the group name and then click on the red “Delete” button.
- A dialog window will pop up asking for confirmation. Click OK.
- All Instances associated with this affinity group will be disassociated after it is deleted.