Personal tools


Rackspace Cloud OpenStack For WHMCS

From ModulesGarden Wiki
Jump to: navigation, search


About Rackspace Cloud OpenStack For WHMCS

Rackspace Cloud OpenStack For WHMCS is a module that allows automatic provisioning of virtual servers to your customers.

Keep control over provisioned servers from your admin area and let your clients use a great variety of tools to manage their VPS servers in a well-organized manner.

  • Admin Area Features:
✔ Create/Suspend/Unsuspend/Terminate Server
✔ Change Package - Supports Configurable Options
✔ View Server Status And Details
✔ View Interface Details
✔ View List Of Scheduled Tasks
✔ Configure Client Area Features Per Product
✔ Define Backup Quantity Limit
✔ Set Security Groups
✔ Enable Backups Routing
✔ Run Extended Connection Test
  • Client Area Features:
✔ View Server Status And Details
✔ Start/Stop/Pause/Unpause/Resume/Rebuild Server
✔ Reboot Server - Soft/Hard
✔ Reset Network
✔ Access noVNC Console
✔ Create/Restore/Delete Backups - Supported By VPS Not Using Cinder Volumes
✔ Download Public & Private SSH Keys
✔ View List Of Scheduled Tasks
  • General Info:
✔ Automated Generation Of SSH Keys - Public SSH Key Is Injected To VM Automatically
✔ Integrated With Server Allocator For WHMCS - Automatic Assignment Of Most Suitable Servers To Products (read more)
✔ Multi-Language Support
✔ Supports PHP 5.6 Up To PHP 7.3
✔ Supports WHMCS Template Six
✔ Supports WHMCS V7.8 And Later
✔ Easy Module Upgrade To Open Source Version
  • Available Configurable Options:
✔ Flavor
✔ VM Image
✔ IP Addresses
✔ Backups Files Limit
✔ Disk

Installation and Configuration

This tutorial will show you how to successfully install and configure Rackspace Cloud OpenStack For WHMCS.

We will guide you step by step through the whole installation and configuration process.


1. Log in to our client area and download the module.
2. In the downloaded file you might find one or two packages that support different PHP versions.

In the most recent versions of the module, you will find only one package that supports PHP 7.1 and later.
If you need a package for the previous versions of PHP, please contact our support.

PHP71 73.png
Previous updates of the module may contain two packages dedicated to various PHP versions.

The first one that supports PHP 5.6 up to PHP 7.0, and the second one addressed to PHP 7.1 up to PHP 7.3.
Note: Keep in mind that PHP versions 5.6 up to 7.0 are no longer officially supported and their security issues are not fixed or released any more. Find more info here.

PHP56 73.png
Important: This situation does not affect the open source version of this module which can be applied to any PHP from version 5.6 and later.
Note: You can check the current PHP version in your WHMCS. To do so, proceed to 'Utilities' → 'System' → 'PHP Info'.
3. Extract the downloaded file and choose the one with the right PHP version. Upload and extract the PHP file into the main WHMCS directory.

The content of PHP version files should look like this.

4. When you install Rackspace Cloud OpenStack For WHMCS for the first time you have to rename 'license_RENAME.php' file.

File is located in 'modules/servers/ RackspaceCloudOpenStack/license_RENAME.php' . Rename it from 'license_RENAME.php' to 'license.php'.

5. In order to configure your license key, you have to edit a previously renamed 'license.php' file.

Enter your license key between quotation marks as presented on the following screen.
You can find your license key in our client area → 'My Products' .

6. Next step is setting up a cron job (each 5 minutes suggested).

Use cron job below but switch 'your_whmcs' with your root WHMCS path.

php -q /your_whmcs/modules/servers/RackspaceCloudOpenStack/cron/cron.php

Configuration of Server

7. Now, we will show you how to configure a new product.

Go to the 'Setup' 'Products/Services' 'Servers' and press 'Add New Server'.

8. Next, enter your server name, IP address/hostname, username, password and admin tenant ID.

Choose 'RackspaceCloudOpenStack' from a dropdown menu and press 'Save Changes'.

9. After you configure your server correctly, you can check connection with Rackspace Cloud OpenStack server.

Simply edit previously created server and press 'Test Connection' as shown on the screen below.

10. It is time to create a server group. To do so, click on 'Create Server Group'.
11. Enter name, click on your previously created server, press 'Add' and afterwards 'Save Changes'.

Configuration of Product

12. In order to create and configure a product, go to the 'Setup' 'Products/Services' 'Products/Services' .

Click on 'Create a New Group' .

13. Enter product group name and press 'Save Changes' .
14. When you have a product group, you can create your product.

To create a product click on 'Create a New Product' .

15. Afterwards, choose your product group and type from dropdown menus, enter your product name and press 'Continue'.

'Product Type' should be set to 'Hosting Account'.

16. Now, go to the 'Module Settings' section, choose both 'RackspaceCloudOpenStack' and your previously created server group from dropdown menus.

Next, click on 'Save Changes'.

17. Start from selecting 'Default Tenant'.

'Check access' should return 'OK' if the permissions are set up correctly.

18. Afterwards, set up network. Choose 'Fixed Network', 'Floating Network' and 'Default Number Of IP Addresses'.

You can set up network in two ways. You can find more information about the configuration here.
We will set up a network without floating IP address as presented on the following screen.
Additionally, choose quantity of IP addresses assigned to product by typing it into 'Default Number Of IP Addresses'.

19. At this step you can set up backups.

Mark 'Backups Routing' checkbox if you want to replace oldest backup with newest one when backups file limit is reached.
Afterwards, enter limit of backup files into 'Default Backups Files Limit'.

20. Mark security group from 'Use Security Groups' .

If you wish to use SSH keys, leave 'Inject SSH Key' marked (virtualization has to support 'Inject File' feature).
Important: 1. It is recommended to leave 'Delete SSH Private Key' marked.
2. If you leave 'Use Volumes' selected, then 'Backups' option will be disabled!

RCO17 1.png
21. Finish through selecting features available in the client area.

Mark checkbox next to feature in order to enable it.
Press 'Save Changes' when ready.


Predefined Resources

Our module allows you to offer Rackspace Cloud OpenStack VPS to your clients in two ways, with predefined resources and configurable resources.

In this section we will show you configuration of server with predefined resources.
Detailed information about configuration of server with resources chosen by client can be found here.

22. Select 'Default Flavor' and 'Default VM Image'.

'Default Flavour' defined resources assigned to VM while 'Default VM Image' allows you to choose VM image used to create new VM.

Congratulations! You have just finished the installation and configuration of the module with predefined resources.

Configurable Resources

23. Preparing VPS with configurable options consists of pressing 'Generate default' as shown on the following screen.

It will prepare default configurable options which can be afterwards easily edited as described in this article.
Important Configurable option 'flavor|Flavor' will be overwritten by 'disc|Disc' , 'ram|RAM' and 'vcpus|VCPUs' .
Therefore, you can solve this in three ways:

  • Remove 'disc|Disc', 'ram|RAM' and 'vcpus|VCPUs' configurable option and rely completely on 'flavor|Flavor'.
  • Remove 'disc|Disc' and 'vcpus|VCPUs', and allow 'flavor|Flavor' being overwritten by 'ram|RAM' (multiple combinations allowed here).
  • Remove 'flavor|Flavor' and rely completely on 'disc|Disc', 'ram|RAM' and 'vcpus|VCPUs'.

Note: The second and the third options cause a new flavor being made on your server each time a new order is placed.

Congratulations! You have just finished the installation and configuration of the module with configurable resources.


Rackspace Cloud Openstack For WHMCS allows your customers to manage their VM via client area in your WHMCS system.

You can monitor and manage each product from your WHMCS admin area.
1. Configurable options - view current VPS resources and change VPS specifications through changing configurable options and pressing 'Change Package'.
2. Module commands - manage VPS status.
3. VPS details - refresh them through pressing 'Refresh Details' icon.
4. Scheduled tasks status can be found in this table.
5. In marked custom fields you can find IDs of VM and private flavor.



Owing to configurable options, you are able to offer product which your clients can tailor according to their needs.

Additionally, you are able to set up pricing for each configurable option, which make your offer even more competitive.
Important: VPS is not created immediately after 'Create' action, therefore, it is wise to inform your clients about the delay.


Client Area

Client area interface of Rackspace Cloud Openstack should look like the one on the screen below. As you can see, control panel contains useful options needed for managing VPS.

Module allows your customers to easily start/stop, pause/unpause, soft reboot, hard reboot and reset network of their servers through pressing specified button.
Clients can also rebuild the server, access console, create backups and view scheduled tasks.
At 'Tasks' your customers can view all requested tasks that were not completed yet.



Rebuild feature allows your clients to change server image.

Press 'Rebuild' button as shown on the following screen in order to move to the rebuild page.

To reinstall your server, choose an image and confirm through clicking on 'Rebuild' button.

SPICE Console

One of the most interesting functionalities is access to a spice console where your clients can remotely manage server.

To access it, simply press on the 'Console' button.

Spice console enables you to connect with virtual machine using SPICE.


Your customers can also create a backup of VPS. To do so, press 'Backups' button.
Now, enter backup name and press 'Backup Now' button.
To restore VPS from backup, simply press 'Restore' button next to it.

SSH Keys

Due to limitation in WHMCS product creation process, Rackspace Cloud OpenStack For WHMCS generates SSH key pair automatically.

Public SSH key is automatically injected into VM while private key can be downloaded from the client area.
In order to download Unix private SSH key press 'Download Private Key'.
You can easily convert your private Unix key(.rsa) to private PuTTY key(.ppk) using 'PuTTYgen'.

Public SSH key on the other hand, can be downloaded as many times as your client will need it.

Press 'Download Public Key' as shown on the following screen to save it on your disk.


Network Configuration Cases

Rackspace Cloud OpenStack For WHMCS allows you to set up two types of network.

First one is a network without floating IP address.
To set up this type of a network, choose 'Public' as 'Fixed Network' and 'Disabled' as 'Floating Network' .
On the following screen you can see an exemplary topology of such network.

The second type of network is a network with floating IP address.

Select 'Shared Network' as 'Fixed Network' and 'Public' as 'Floating Network'.


Configurable Options

In case standard configuration does not suit your needs, you can adjust it through configurable options.

To do so, go to 'Setup' 'Products/Services' 'Configurable Option' and press edit button next to configurable option used by your product.
Its name is 'Configurable options for your_product_name'.

Here you can view the products that this configurable option group is assigned to.

Now we will show you how to edit options. Let's say that you want to add an option to order VPS with 8GB (8192 MB) RAM.
To do so, edit 'ram|RAM' by pressing edit button as shown on the screen below.

You will see a popup window, so make sure that your browser does not block it.

To add new option, enter it in a textbox under all other options. If you want to replace it with option you currently have, simply edit its textbox.
Next, press 'Save Changes'



1. Due to the fact that some requests may take time to be completed, we implemented 'Scheduled Tasks'.

Tasks visible at 'Scheduled Tasks' are subsequently performed by regular cron jobs.
A full list of tasks supported by 'Scheduled Tasks' are: create, terminate, change package, remove IP address and remove backup.

Update Instructions

Essential guidance through the process of updating the module is offered here.

Keep in mind there is a quick and easy option in our client area that will let you upgrade the license of your module to an open source version at any time - and at a lower price!
To take advantage of it, simply use the License Upgrade button located on the product's page and a discounted invoice will be generated automatically.

Common Problems

1. When you have problems with connection, check whether your SELinux or firewall does not block ports.
WHMCS Modules
WHMCS Translations
cPanel Modules
Magento Extensions
Magento Themes
PrestaShop Modules
Blesta Extensions
Rackspace Cloud OpenStack For WHMCS