Table of Contents |
---|
Supported Features
Create | Cancel | Suspend | Unsuspend | Management | Config Options |
---|---|---|---|---|---|
YES | YES | YES | YES | YES | YES |
Management Features
This module supports the following management features within the client area:
- View Server Status
- Restart Server
- Shutdown Server
- Boot Server
- Reinstall to a New Template (This deletes all existing data!)
- Change Hostname
- Change Password
- View Stats (e.g. Bandwidth, Disk Space)
- Server Console
API Versions
The following table lists version compatibility between the module and the SolusVM API.
Module Version | SolusVM API Version |
---|---|
3.0.0 or greater | 1.16.10 or greater |
1.0.0 - 2.8.0 | ~1.13.02 or greater |
Installing SolusVM
- Visit [Settings] > [Company] > [Modules] > Available.
- Click the "Install" button within the SolusVM module listing.
Using KVM?
If you are using KVM and want to make a VNC console available to your users, you must copy the /usr/local/solusvm/www/java/vnc directory from your SolusVM master to ~/vendors/vnc of your Blesta installation.
Configuring SolusVM
In your SolusVM account, you will need to setup an API User, under [Configuration] > [API Access], to allow API requests to your server. Make note of the ID and Key fields set here, as you will enter them in Blesta. And set the IP Address field to the IP address of the server hosting your Blesta installation.
To configure SolusVM in Blesta, visit [Settings] > [Company] > [Modules] > Installed, and click the "Manage" button for the SolusVM module.
You may then add or update a server by setting the API credentials of an API User so that Blesta may communicate with the SolusVM server.
Module Options
Option | Description |
---|---|
Server Label | This is the friendly-name of the server used as reference throughout Blesta. Set it to anything you prefer. |
User ID | The API User ID of the API user you have set in SolusVM. |
Key | The API Key of the API user you have set in SolusVM. |
Hostname | The hostname of the SolusVM server, without the protocol. |
SSL Port Number | The port on which Blesta may connect to the SolusVM API at the given Hostname. |
Configurable Options Overview
This module supports configurable options which may alter the provisioning of SolusVM servers. Configurable Options override any matching Package settings.
Not Required
Configurable Options are not required, and this list in no way limits the Configurable Options that can be created. However, only the following Configurable Options can alter the way SolusVM servers are provisioned.
Option Name | Possible Values | Recommended Field Type | Description |
---|---|---|---|
extra_ips | integer >= 0 | Quantity, Dropdown | Determines how many extra IPs will be assigned to the server. It is recommended to set the config option Step to 1 when using the Quantity type. The module allows for the removal of IP addresses one at a time. Using a Step value greater than 1 for a Quantity config option will disallow the removal of IP addresses through the module. This is because the decrement of a single IP address would no longer coincide with a valid Step as defined for the config option. |
extra_disk | integer >= 0 | Dropdown | Sets the amount of extra disk space available for the server in GB (Gigabytes). This amount is added to the disk space currently set for the server's Plan. e.g. "20" to indicate an additional 20 GB of disk space |
extra_bandwidth | integer >= 0 | Dropdown | Sets the amount of extra bandwidth for the server in GB (Gigabytes). This amount is added to the bandwidth currently set for the server's Plan. e.g. "5" to indicate an additional 5 GB of bandwidth |
extra_cpus | integer >= 0 | Quantity, Dropdown | Sets the number of extra CPU cores available to the server. This number is added to the CPUs currently set for the server's Plan. e.g. "2" to indicate two more additional CPUs |
nodegroup | integer >= 1 | Dropdown | Sets the node group from which SolusVM will determine a node to assign the server to. This overrides the Package settings for node or node group. |
template | ??? | Dropdown | Sets the name/filename of the template to install on the server. This will override the Package setting for Template. After a service has been created, updating the template will not affect the service. The service's template may only be changed from the Reinstall action. Any pricing differences for the config option will still be incurred. |
extra_memory | integer >=0 | Dropdown | Sets the amount of extra 'guaranteed' memory in MB (Megabytes). This amount is added to the memory currently set for the server's Plan. |
extra_swap | integer >= 0 | Dropdown | Sets the amount of extra swap/burst memory in MB (Megabytes). The amount is added to the swap/burst memory currently set for the server's Plan. e.g. "512" to indicate an additional 512 MB of swap Setting extra_swap requires that the extra_memory option be set as well. If the server's plan does not provide any swap, and no extra swap has been set for this option, a value of 512 MB will be used by default. OpenVZ:
|
Creating Packages
Node Group Bug in SolusVM
There is a bug in SolusVM with the Default node group. If you select a node group for provisioning when creating a package, don't use the "Default" node group. First, create a new node group and assign your nodes to it in SolusVM. Then, select the new node group within the package.
Welcome Email
When creating or editing a package that uses this module, the following tags will be available:
Tags | Description | Notes |
---|---|---|
{module.host} | The host name of the server that the service was provisioned on | e.g. "domain.com" |
{module.port} | The port number to connect on | Default is "5656" |
{service.solusvm_vserver_id} | The service field for the virtual server ID | e.g. "1" |
{service.solusvm_console_user} | The service field for the console username, if one exists | |
{service.solusvm_console_password} | The service field for the console password, if one exists | Console passwords expire after a certain time period, and need to be regenerated, so this value may not always be accurate |
{service.solusvm_hostname} | The service field for the service's host name | e.g. "my.domain.com" |
{service.solusvm_main_ip_address} | The service field for the service's main IP address | e.g. "127.0.0.1" |
{service.solusvm_internal_ip} | The service field for the service's internal IP address | e.g. "10.0.0.1" |
{service.solusvm_extra_ip_addresses} | The service field for the extra IP addresses | This is a comma-separated list of extra IP addresses |
{service.solusvm_node} | The service field for the node ID that the service is attached to | e.g. "1" |
{service.solusvm_username} | The service field for the account username | |
{service.solusvm_password} | The service field for the account password | The password will only be shown for the first service of this type created for a client--when the customer account is first created in SolusVM. This field will be blank when additional services are created for this client because the existing account will be re-used, and the current password will be unknown. |
{service.solusvm_plan} | The service field for the name of the plan | |
{service.solusvm_root_password} | The service field for the root password | |
{service.solusvm_template} | The service field for the name of the template | |
{service.solusvm_type} | The service field for the type of SolusVM server the service is using | i.e. one of: "openvz", "xen", "xen hvm", "kvm" |
{service.solusvm_virt_id} | The service field for the SolusVM virtual ID | e.g. "vm101|101" |
{service.solusvm_vnc_ip} | The service field for the VNC IP address, if one exists | e.g. "127.0.0.1"; for HVM/KVM servers |
{service.solusvm_vnc_port} | The service for the VNC port number, if one exists | e.g. "5901" |
{service.solusvm_vnc_password} | The service for the VNC password |
Client Management
This module contains some client management features. Clients access this area by clicking the "Manage" button from within the client area for a service that uses this module.
Information
Server Actions
- Reboot
- Shutdown
- Boot
- Reinstall
- Change Hostname
- Change Password
Server Actions: Change Hostname
Useful for changing the hostname of the server.
Server Actions: Change Password
Useful for changing the root or Administrator password.
Server Actions: Reinstall
Useful for re-installing the operating system.
Stats
Shows statistics like monthly bandwidth, disk space usage, and a traffic graph.
Console
A console, useful for accessing the server if it's inaccessible over the Internet.
Common Issues
- The noVNC console doesn't work (Blesta 5.0+)
- Make sure an SSL certificate is installed on the master node, noVNC is enabled in the settings page in SolusVM, and that /usr/local/solusvm/data/config.ini has been created with the necessary parameters set. See https://support.solus.io/hc/en-us/articles/360015040832-noVNC-does-not-work-and-HTML-5-console-fails-to-connect-Server-disconnected-code-1006-
This command can be run via SSH to generate the config.ini with the proper parameters:
echo [NOVNC] >> /usr/local/solusvm/data/config.ini; echo "use_remote_hostname = true" >> /usr/local/solusvm/data/config.ini; echo "socket_dest_public = false" >> /usr/local/solusvm/data/config.ini