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 |
---|---|
|
|
Creating Instances
- To create a new instance, follow these steps:
- In the left navigation page, click on
Compute > Instances
. -
Select the
Add Instance
button at the top of the screen. -
A new window will open.
-
Select the Zone for the Instance. Customers will be able to provision in either OpenCloud Zone.
Available Zones in OpenCloud
Zone 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
Customers are able to upload their own ISOs for Instance creation, however, custom Instances Templates will 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
CD
and Memory Dense Offerings start with aMD
. The CPU and RAM for each Offering will be displayed next to the Offering name. - Customers can further customize the ROOT, or OS BOOT, disk size. 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. - 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
Custom
and 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
Instances
screen to go into the Instance details. - The list of details in the right window on the Instance details screen can be clicked on, and They can see the information contained within, specifically
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 to them to install customer specific software. Please make sure that the ISO has been uploaded first to OpenCloud. Refer to the Templates Document to perform ISO uploads.
- From the main OpenCloud menu, choose 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 ISO
button. -
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 created by a customer-uploaded Windows ISO, 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 ISO
option 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 Drivers
and will be present in the ISO selection screen. After this ISO has been mounted, the customer will switch back to their 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, the customer should 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 the customer has an existing Windows Machine that needs the VirtIO drivers installed, they can 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 Customer 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 should be applied to all Customer created Instances:
- video.hardware = virtio
- rootDiskController = virtio
- To add these Settings, first click on
Compute
>Instances
and 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
Name
box 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.hardware
in theName
box and then type invirtio
in theValue
box. -
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.
- On the main OpenCloud screen, 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 Instance
button. - 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, the customer can remove NICS from Instances as well 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.
- On the main OpenCloud screen, 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 Instance
button. - 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 chooseYes
when 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 the left navigation page, click on
Compute > Instances
. - Click on the Instance name to enter into the details of the Instance.
-
Select
Stop Instance
from 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 Instance
button.
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 Avaiabiltiy) process will automatically restart the instance.
Reboot an Instance
- To execute an Instance reboot outside of the Instance OS itself, log in to OpenCloud, click on
Compute
and thenInstances
. -
Select the Instance to be rebooted and then select the button that says
Reboot Instance
in 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 a customer executes 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 aRestore
action. - 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 Instance for a customer.
- If a customer wants to Destroy the Instance and free up the Storage and Compute Resources at the same time, there is an option to
Expunge
in theDestroy Instance
confirmation screen. - To perform either a Destroy or Expunge operation, go to
Compute
and thenInstances
from the main OpenCloud screen. - Click on the Instance Name in question and enter its details page.
-
Select the Red Trashcan
Destroy Instance
button in the upper right corner. -
A confirmation dialog box will appear. If the customer wants to remove the Instance immediately, the
Expunge
option should be turned on. -
If the Customer wants 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. -
The
Expunge
option will immediately delete the Instance and all of its Root and Data Volumes as long as they are specified in theData Volumes to be Deleted
box. US Signal cannot recover any of this data for Customers. - 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. - Select
Recover Instance
from 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 Instance
option 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.
- Click on
Compute
>Instances
and click on the name of the Instance to be changed. -
Inside the Instance details screen, click on
Edit Instance
in 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 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. - 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.
- To access this view, first click on
Compute
>Instances
and click on the name of the Instance to view. - On the right window of the Instance screen, click on
Metrics
to 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 same Domain if a different User or Account needs to maintain the Instance. US Signal OpenCloud Admins can also assign Instances to different Domains and accounts within those Domains. The Domain Admin customer account can view all instances and move instances between accounts in the same Domain. Instances with either Instance or Volume snapshots cannot be assigned to other accounts without first removing the snapshots.
- The Instance must be stopped before this can occur, however. Access the Instances by going to
Compute
>Instances
on the main OpenCloud dashboard. Click into the details of the instance to be moved and then click theStop Instance
button in the top right corner. - Any ISOs that are attached to the Instance will also need to be unmounted before the Instance can be moved.
- Once the Instance is stopped, then the Instance can be assigned to a new User or Account.
-
Click on the
Assign Instance to another Account
button. -
A dialog box will appear with areas to fill out with information. A Domain Admin can assign Instances to different Users in the same Domain or assign Instances to an entirely different Domain User inside a Sub-Domain.
- Choose the Account Type, which will usually remain as an Account unless assigning the Instance to a specific User inside an Account. Choose the Domain that the Instance should move to. For Domain Admins working inside a Domain that contains Sub-Domains, only those Sub-Domains will be available targets for an Instance. Choose the specific Account that the Instance should be assigned to. An optional Network can be assigned as well, but this is not required.
- Once all of these options are filled out, click Submit. The Instance will then be moved to the new Account/User and Domain.
Reset UserData
- Log in to OpenCloud, click on
Compute
and thenInstances
. - Make sure the instance is powered off.
- Click on
Reset Userdata on Instance
Icon. - Change the
Userdata override
slider to Enabled. - Choose either:
Stored Userdata
- These are created underInstances
-->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
- Log in to OpenCloud, click on
Compute
and thenInstances
. - Make sure the instance is powered off.
- Click on
Reset SSH key pair
Icon. - 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
- Navigate to
Compute
and then click onInstances
and then click onSSH Key Pairs
- Click on
Create a SSH Key Pair
- Fill in the
Name
Field (Required) -
If needed enter the
Public Key
(Optional)Note
If public key is set, CloudStack will register the public key. If nothing is set, CloudStack will create a new SSH key pair.
-
If needed change the
Domain
dropdown (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.
- To register new UserData, first click on
Compute
>User Data
. -
Click on
Register a Userdata
at 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 Mode
in Instance creation. - The Userdata created can then be linked to a Customer 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 allow the customer user or administrator to influence if instances should 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
- To create a new Affinity Group, log into the CloudStack with an account that has the permissions to add Affinity Groups.
- From the main menu, choose
Compute
>Affinity 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 Options
menu 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.
- From the CloudStack main page, click on
Compute
>Instances
- Click on the Instance name to go into the Instance details.
- On the Instance menu screen, select the
Stop Instance
button. - A dialog box will come up asking to confirm. Clicking OK will start the process.
- Once the Instance is shut down, the option
Change Affinity
will 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
- The Affinity Groups themselves list which Instances are assigned to them in the CloudStack Portal.
- Click on
Compute
>Affinity Groups
. - Click on the Affinity Group name to bring up its details.
- Inside of the Affinity Group window, click on
View Instances
to see what instances are assigned to the rule.
Delete Group
- To remove an affinity group, go to
Compute
>Affinity 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.