Personal tools
Namespaces

Variants
Actions

Vultr VPS For WHMCS

From ModulesGarden Wiki
Revision as of 13:56, 16 November 2021 by Karolina (Talk | contribs)

Jump to: navigation, search

Contents

About Vultr VPS For WHMCS

Vultr VPS For WHMCS is a module which allows automatic management of Vultr VPS servers.

The module will allow your clients to remotely control the status of a server, access the console, and rebuild the VPS.
Furthermore, you will be allowed to personalize and adjust your offer to even the most demanding needs of your clients.

  • Admin Area Features:
✔ Create/Suspend/Unsuspend/Terminate Server
✔ Change Package - Supports Configurable Options And Volume Resizing
✔ Change Password
✔ Start/Stop/Pause/Unpause/Resume/Rebuild Server
✔ Soft/Hard Reboot Server
✔ Reset Network
✔ Rescue/Unrescue Server
✔ Toggle VM Protection From WHMCS Termination And Rebuilding
✔ View Instance Status And Details
✔ View Interfaces Details
✔ View Volumes Information
✔ View List Of Scheduled Tasks
✔ Provide Product Configurations:
✔ Project Settings:
✔ Choose Default VM Image/Flavor/Region
✔ Provide Random Domain Prefix
✔ Toggle Debug Mode
✔ Network Settings:
✔ Choose Fixed/Floating Networks
✔ Define Default Number Of IP Addresses
✔ Backup Settings:
✔ Enable Backups Rotation
✔ Enable Scheduled Backups
✔ Define Backups Quantity Limit
✔ Define Backups Minimum Time Interval
✔ Virtual Machines Settings:
✔ Enable Auto-generation SSH Key
✔ Define Default Volume Size
✔ Set Security Groups
✔ Enable Password Management
✔ Choose RDP/Serial/SPICE/VNC Console Type
✔ Select Rescue Image
✔ Toggle VM Protection After Creation
✔ Firewall Settings:
✔ Apply Custom Rules
✔ Define Inbound/Outbound/Total Firewall Rules Limits
✔ Configure Client Area Features Per Product
✔ Execute Custom Scripts On Boot
✔ Choose Welcome Email For VM Creation
✔ Generate Configurable Options
  • Client Area Features:
✔ View Server Status And Details
✔ Start/Stop/Pause/Unpause/Resume/Rebuild Server
✔ Soft/Hard Reboot Server
✔ Reset Network
✔ Rescue/Unrescue Server
✔ Change Server Protection Status
✔ Toggle VM Protection From WHMCS Termination And Rebuilding
✔ Change Password
✔ Create/Restore/Delete Backups
✔ Toggle Scheduled Backups And Define Time Interval
✔ Access RDP, Serial, SPICE, Or VNC Console
✔ View/Add/Delete Custom Firewall Rules:
✔ TCP
✔ UDP
✔ ICMP
✔ Other Protocols
✔ Download Public & Private SSH Keys
✔ View Volumes Information
✔ View List Of Scheduled Tasks
✔ Receive Email Notification After VM Creation
  • Configurable Options:
✔ Flavor
✔ VM Image
✔ IP Addresses
✔ Backups Files Limit
✔ Disk
✔ RAM
✔ VCPUs
✔ Total Firewall Rules Limit
✔ Inbound Firewall Rules Limit
✔ Outbound Firewall Rules Limit
✔ Region
✔ Custom Script Files
  • Supported Providers:
✔ Bluvalt
✔ City Cloud
✔ CT Cloud Platform
✔ DS Public
✔ ELASTX OpenStack
✔ INAP Bare Metal
✔ INAP Cloud
✔ Limestone Networks
✔ Linaro Developer Cloud
✔ Open Telekom Cloud
✔ OVH Public Cloud
✔ Rackspace Public Cloud
✔ ScaleUp Cloud
✔ STC Cloud
✔ UOS Cloud
✔ VEXXHOST
✔ vScaler Public Cloud
✔ warescale Public Cloud
  • Required Components:
✔ Keystone
✔ Glance
✔ Nova
✔ Neutron
✔ Gnocchi (Required For Billing)
  • General Info:
✔ Automated Generation Of SSH Keys - Public SSH Key Is Injected To VM Automatically
✔ Integrated With Advanced Billing For WHMCS - Actual Server Resource Usage Billing (read more)
✔ Integrated With Server Allocator For WHMCS - Automatic Assignment Of Most Suitable Servers To Products (read more)
✔ Multi-Language Support
✔ Supports Cloud-Init Scripts With WHMCS Variables
✔ Supports OpenStack Victoria and Previous
✔ Supports OpenStack Gnocchi
✔ Supports Virtuozzo Hybrid Infrastructure (VHI)
✔ Supports Limestone Networks Cloud Hosting Solutions
✔ Supports PHP 7.2 Up To PHP 7.4
✔ Supports WHMCS Themes "Six" And "Twenty-One"
✔ Supports WHMCS V8.0 And Later
✔ Easy Module Upgrade To Open Source Version

Installation and Configuration

This tutorial will show you how to successfully install and configure Vultr VPS For WHMCS.

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

Installation

1. Log in to our client area and download the module.
VT 1.png
2. Extract the package and upload its content into the main WHMCS directory.

The content of the package to upload should look like this.

VT 2.png
4. When you install Vultr VPS For WHMCS for the first time you have to rename the 'license_RENAME.php' file.

The file is located in 'modules/servers/VultrVps/license_RENAME.php' . Rename it from 'license_RENAME.php' to 'license.php' .

VT 3.png
5. In order to configure your license key, you have to edit the 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' .

VT 4.png
6. The last step is setting up a cron job (every 5 minutes suggested).

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

php -q /yourWHMCS/modules/servers/VultrVps/cron/cron.php queue 

Configuration of Server

Before you can go on, you must generate your Vultr API Token. You will need it to connect with the server successfully.

Underneath you will find instructions where to find your API details.

7. Firstly, log into your Vultr account and enter this site: https://my.vultr.com/.
VT 5.png
8. Move to the 'API' details section under your account.

There find the 'Personal Access Token' section and generate your API Key.
You must previously enable API to be able to generate the API key. Copy the key as you will need in the next steps of the server

VT 6.png
12. Now, log in to your WHMCS and proceed to 'System Settings' 'Servers' and press 'Add New Server'.
VT 7.png
13. Next, enter your server name, hostname or IP address. Then select 'Vultr VPS' from the 'Type' field.

Now, provide the previously generated API token in the 'Password' field. Then check the connection, if successful, save the changes.

VT 8.png
14. It is time to create a server group. To do so, click on 'Create Server Group' .
VT 9.png
15. Enter a name, click on your previously created server, press 'Add' and afterward 'Save Changes' .
VT 10.png

Configuration of Product

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

Click on 'Create a New Group' .

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

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

VT 13.png
15. Afterward, choose your product group and type from the dropdown menus, enter your product name and press 'Continue'.

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

VT 14.png
16. Now, go to the 'Module Settings' section, choose both 'Vultr VPS' and your previously created server group from the dropdown menus.

The module should automatically save and reload settings. If not, click on 'Save Changes' manually.

VT 15.png
17. Start from defining the 'Configuration' details.
  • Region - choose one of the geographical areas with the preferred predefined set of resource for your VPS

Set one of the below three options: 'Operating System', 'ISO' or 'Snapshot'. Leave the other two as 'Disabled'

  • Operating System - you may choose one of the operating systems to be used when creating your virtual machine
  • ISO - use an ISO, that you have previously created in your Vultr panel, to install the virtual machine
  • Snapshot - you may also install the virtual machine using one of the existing snapshots

Move to setting up the rest of of configuration options:

  • IPv6 - turn on IPv6 type of IP addresses for the VPS
  • Plan - choose a plan to install the virtual machine
  • User Data - enter the user data to run common configuration tasks when your instance starts. You can run cloud-init directives or shell scripts for Linux images
  • Automatic Backups - turn on aromatic backups creation
VT 16.png
18. Next, select features available at the client area.

You can also decide which images used to rebuild the server will be available to your customers.

VT 17.png
19. At the end of the configuration process, you can decide whether you want to generate configurable options for the product.

Configurable options can be used by your clients to select each virtual machine parameters individually during order placement.
Otherwise, if configurable options are not defined, then the fixed parameters specified in the earlier configuration will be used instead.

VT 18.png
If you decide to use configurable options, press on the 'Create' button and select which options you want to generate.
Remember that only one of the three options: 'os_id|OS', 'iso_id|ISO', 'snapshot_id|Snapshot' can be used at once! Enable one of them only to avoid errors.

Note that the configuration for disabled options will still be taken from the configuration of the main product.
More information about how to use configurable options can be found here or in the official WHMCS documentation.

VT 19.png

Management

Admin Area

Vultr VPS For WHMCS allows your customers to manage their servers via the client area in your WHMCS system.

You can monitor and manage each product from your WHMCS admin area.
1. Configurable options which enable you to view current resources and change specifications through changing configurable options and pressing 'Change Package'
2. Module commands (Create, Suspend/Unsuspend, Change Package)
3. Service actions (Start/Stop VM, Reboot, Reinstall, Access Console)
4. Instance details along with Public Network IPv4 and IPv6 details (the latter one is available only if you enable it in the product's configuration)

VT 21.png

Ordering

Owing to configurable options, you are able to offer a 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 ordering 'Create' . Therefore, it is wise to inform your clients about the delay.

VT 22.png

Importing Existing Instance

In this section, you can find short instruction on how to connect one of your clients to your already existing instance in the Vultr panel.
Take the following steps to make sure that the process will be carried out properly.

1. Firstly, manually create an order for your customer in WHMCS. Choose a client and in the summary, view click on the ' Add New Order' button. Next, select a 'Product/Service' and press 'Submit Order' .
What is important, do not perform the 'Create' action. The status has to remain as 'Pending' .
More info about placing orders can be found here
2. Proceed to the newly created product's card in your admin area. Find the following empty fields:

  • Instance ID

The above-mentioned information has to be consistent with the data from your Vultr panel. Now, complete these fields as presented below.
Important! Remember to make sure that the format of the provided data is compatible with the format supported by the module. You can preview it for another product of the module you have already created and enter it in a similar way.
If you completed the required data, now change the status from 'Pending' to 'Active' and 'Save Changes' .

Vultr import.png
3. If the completed data is correct, after refreshing the page, you will see the attached instance from Vultr.
Important! Remember to manually add other missing parameters of the instance such as domains, credentials, IP Addresses, configurable options, etc. so they match the parameters of the attached instance from Vultr panel.

Client Area

Client area interface of Vultr VPS should look like the one on the screen below. As you can see, the control panel contains useful options needed for managing a virtual machine.

The module allows your customers to easily start/stop, reboot or reinstall their servers by pressing the specific button.
Clients can also access the VNC console, manage backups, view bandwidth graph and many others.

VT 23.png

Backups

The first section available for clients grants ability to view the list of existing 'Backups' of your server.
Please remember that 'Backups' are assigned to a particular server and will be removed once the server is deleted.

Note: There is a limit of maximum two backups per server. Once a new backup is created, the oldest one is automatically removed.

VT 24.png
Clients are also given the opportunity to schedule incoming backup by pressing the 'Schedule Backups' button.

Provide a time details to wait until the next backup will be created.

VT 25.png
To restore a VPS from backup, simply press the 'Restore' button next to it.

If selected backups are no longer needed, you may easily delete them.

VT 26.png

Firewall

The firewall management page allows your customers to view, add or delete existing rules on a security group assigned to the product.

To add a new firewall rule, use the button marked on the following screen.
Note: Please remember that there is a limit of 50 firewall rules. If you reach this limit, you will not be allowed to create new ones before removing any existing ones.

VT 27.png
Next, fill out the rule details to create it:
  • choose the type: IPv4 or IPv6
  • select protocol: TCP, UDP, ICMP, GRE, ESP, AH
  • enter the port - you may specify a port number or a port range (TCP/UDP only)
  • select source: custom or cloudflare
  • define the subnet and the subnet size
  • You may also add any notes in the end if you need.

Press 'Confirm' when ready.

VT 28.png

Graphs

Once entering the 'Graphs' section, clients will be moved to the page with the generated graphs showing the 'Bandwidth' usage.
VT 29.png

Rebuild

The rebuild feature allows your clients to change a server image.

To reinstall your server, choose an image and confirm through pressing the 'Rebuild' button.

VT 30.png

Snapshots

Creating snapshots allows customers to quickly restore any changes to a virtual machine in case of any problems.

Once the shutter has been created, the customer can restore it, change its description or delete it.

VT 31.png
After pressing the 'Create Snapshot' button, the new window will pop up along with the possibility to specify the snapshot description.

Please note that taking a new snapshot may take a while to process.

VT 32.png

Console

One of the most interesting functionality is a noVNC console where your clients can remotely manage their servers.

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

VT 33.png

Tips

1. In the language file you can customize names of the displayed operating systems, and also add new ones on your own, if they appear in Hetzner.
Simply add new records in the same way as the default ones.

Update Instructions

An 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.
2. If you use WHMCS V7.8.X (or later), a fatal error may occur when trying to save server settings without providing any hostname or IP address details.
Our module does not require this field to be filled out, but in that case, try to provide anything in the hostname field. Please note that this is a bug occurring in WHMCS, not the module itself.
Navigation
WHMCS Modules
WHMCS Widgets
Translations
cPanel Modules
General
FAQ
Community
Vultr VPS For WHMCS