Personal tools
Namespaces

Variants
Actions

Vultr VPS For WHMCS

From ModulesGarden Wiki
Revision as of 10:25, 6 December 2022 by Karolina (Talk | contribs)

Jump to: navigation, search

Contents

About Vultr VPS For WHMCS

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

The module will allow your clients to remotely control the status of a server, access the console, rebuild the VPS and many others.
You will be also allowed to adjust your offer to even the most demanding needs of your clients with the wide range of configurable options.

  • Admin Area Features:
✔ Create/Suspend/Unsuspend/Terminate Server
✔ Change Package
✔ Start/Stop/Reboot/Reinstall Server
✔ Access noVNC Console
✔ View Instance Status And Details
✔ View Assigned Public IPv4 And IPV6 Network Details
✔ View/Schedule/Restore Automatic Backups
✔ View/Create Firewall Rules
✔ View/Create/Restore Snapshots
✔ View/Create/Manage Reverse DNS Records
✔ View Assigned Reserved IP Addresses
✔ Configure Product Details:
✔ Choose Region
✔ Choose Plan
✔ Choose Operation System
✔ Choose ISO Image
✔ Choose Snapshot
✔ Choose Application
✔ Toggle Automatic Backups
✔ Toggle IPv6 Address
✔ Toggle DDOS Protection
✔ Use Hostname In Label Field
✔ Enable White Label noVNC Console
✔ Provide Random Domain Prefix
✔ Provide Default Reverse DNS Template
✔ Provide Cloud-Init User-Data Initiation Script
✔ Choose Features Available In Client Area:
✔ Backups
✔ Firewall
✔ Rebuild
✔ Reverse DNS
✔ User Data
✔ Available Images To Rebuild
✔ Console
✔ Graphs
✔ Snapshots
✔ Reserved IPs
✔ Custom ISO
✔ Available ISO Images To Mount
✔ Enable Instance Block Storage With Defined Size
✔ Enable Reserved IPv4 And IPv6 Addresses Within Defined Limits
✔ Generate Configurable Options
✔ Run API Connection Test
  • Client Area Features:
✔ Start/Stop/Reboot/Reinstall Server
✔ Access noVNC Console
✔ View Instance Status And Details
✔ View Assigned Public IPv4 And IPV6 Network Details
✔ View/Schedule/Restore Automatic Backups
✔ Mount Custom ISO Images
✔ View/Create Firewall Rules
✔ View Bandwidth Usage Graph
✔ Rebuild Server With Chosen OS Distribution
✔ View Assigned Reserved IP Addresses
✔ View/Create/Manage Reverse DNS Records
✔ View/Create/Restore/Delete Snapshots
✔ Provide Cloud-Init User-Data Initiation Script
  • Configurable Options:
✔ Application
✔ Backups
✔ Block Storage
✔ DDOS Protection
✔ IPv6
✔ ISO Image
✔ OS
✔ Plan
✔ Region
✔ Reserved IPv4
✔ Reserved IPv6
✔ Snapshot
  • Available Images And Applications:
✔ Linux OS:
✔ AlmaLinux
✔ Arch Linux
✔ CentOS
✔ Debian
✔ Fedora
✔ Fedora CoreOS
✔ FreeBSD
✔ OpenBSD
✔ Rocky Linux
✔ Ubuntu
✔ VzLinux
✔ Microsoft Windows:
✔ Windows Core 2022
✔ Windows Core 2019
✔ Windows Core 2016
✔ Windows Server 2022
✔ Windows Server 2019
✔ Windows Server 2016
✔ Windows Server 2012 RS
✔ Marketplace Apps:
✔ 3DKit
✔ AIDungeon2
✔ Anaconda
✔ Ant Media Server (Community Edition/Enterprise Edition)
✔ Asp.net
✔ AzuraCast
✔ Bitnami via Vultr (Jenkins/Magento/PrestaShop)
✔ BotGuard Ingress Controller
✔ CentOS Web Panel
✔ Chevereto
✔ CloudHub
✔ CloudPanel 2
✔ Cloudron
✔ ClusterControl
✔ Coder
✔ cPanel
✔ CyberPanel
✔ Docker
✔ Drupal
✔ Easypanel
✔ FASTPANEL
✔ FileCloud
✔ Gitea
✔ GitLab
✔ Helpy Pro
✔ Jamulus
✔ Jelastic DevOps PaaS
✔ Jitsi
✔ Joomla
✔ Keitaro
✔ LAMP
✔ LEMP
✔ Lume Web DNS Relay
✔ Mediawiki
✔ Microweber Website Builder
✔ Minecraft (Bedrock/Forge/PaperSpigot/Vanilla)
✔ Miniconda
✔ Mist Community Edition
✔ MLDev/MLDev Basic
✔ Nextcloud
✔ NirvaShare
✔ NodeJS
✔ NVIDIA Docker
✔ ONLYOFFICE (Docs/Workspace)
✔ OpenLiteSpeed (Django/Drupal/Joomla/NodeJS/Rails/WordPress)
✔ OpenVPN Access Server
✔ Owncast
✔ ownCloud
✔ Plesk (Web Admin SE/Web Host/Web Pro)
✔ PrestaShop
✔ Pritunl
✔ PyboxTech-Med
✔ Restyaboard
✔ Roxy-WI
✔ RunCloud Nginx
✔ ServerWand
✔ Squidex
✔ Steam
✔ Ubuntu Desktop (Gnome/KDE/XFCE)
✔ UTunnel VPN
✔ VDev
✔ VitalPBX
✔ WarpSpeed VPN
✔ Webmin
✔ WooCommerce
✔ WordPress
✔ Yarn
✔ ISO Library To Mount:
✔ Finnix
✔ GParted
✔ Hiren's BootCD PE
✔ SystemRescue
✔ Any Other OS Platforms And Solutions When Made Available By Vultr
  • General Info:
✔ Fully Integrated With Lagom WHMCS Client Theme
✔ Multi-Language Support
✔ Supports PHP 7.3 Up To PHP 8.1
✔ Supports WHMCS Themes "Six" And "Twenty-One"
✔ Supports WHMCS V8.3 And Later
✔ Requires ionCube Loader V12 Or 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 3 1.png
6. Now, set up the 'storage' folder as recursively writable.

This folder is available at '/yourWHMCS/modules/servers/VultrVps/'.

VT 4.png
7. The final step of the module instillation is setting up a cron command that is required for several module features to work properly.

Note: The cron execution is required for products in version 1.1.0 and later.

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

Remember to replace "yourWHMCS" with a proper directory.
Suggested time interval for cron execution is 5 minutes.

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 at: 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 configuration.

VT 6.png
9. Now, log in to your WHMCS and proceed to 'System Settings' 'Servers' and press 'Add New Server'.
VT 7.png
10. Next, enter your server name and a hostname or an 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
11. It is time to create a server group. To do so, click on 'Create Server Group'.
VT 9.png
12. Enter a name, click on your previously created server, press 'Add' and afterward 'Save Changes'.
VT 10.png

Configuration of Product

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

Click on 'Create a New Group' .

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

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

VT 13.png
16. 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
17. 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
18. 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 four options: Operating System, ISO, Snapshot or Application. Leave the other three 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
  • Application - select an application to install it automatically upon the instance creation.

Move to setting up the rest of of configuration options:

  • IPv6 - turn on IPv6 type of IP addresses for the VPS
  • DDOS Protection - add an extra layer of security by enabling DDOS protection
  • 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. You may use smarty variables, e.g. {$password}.
    Note: Please refer to the following article to find a list of supported module parameters and their descriptions.
  • Random Domain Prefix - enter the domain prefix that will be used when a domain is not provided
  • Automatic Backups - turn on aromatic backups creation
  • IPv6 - enable to use the IPv6 addresses type for the VPS
  • Use Hostname in Label Field - enable this option to be allowed to provide the hostname into the Label field
  • Enable White Label noVNC Console - toggle this option to enable the noVNC console without any Vultr labels.
    Important: To use a white-label console, please contact the Vultr support first!
VT 16.png
19. 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
20. Enable additional options and set up configuration per each one of them:
  • Block Storage - define the storage size between 10 and 10 000 GB, note that if you also decide to enable this configurable option, it will overwrite the general product settings
    Important: It is impossible to successfully downgrade block storage.
  • Reserved IPs - define the limit of IPv4 and IPv6 addresses that can be added to the bundle of reserved IPs
VT 17 1.png
21. 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 the 'Create' button and select which options you want to generate.

Remember that only one of the four options: 'os_id|OS', 'iso_id|ISO', 'snapshot_id|Snapshot', 'app_id|Application' can be used at once!
In case more than just one option is left for the client to select, they will be taken into consideration in the following manner:

  1. 'OS'
  2. 'Snapshot'
  3. 'ISO'
  4. 'Application' as the last one.

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. Scheduled tasks - list of task to be performed with the cron execution 4. Service actions (Start/Stop VM, Reboot, Reinstall, Access Console)
5. 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)
6. Backups, firewall rules, snapshots management sections
7. Reverse DNS management and preview of reserved IP addresses.

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 pressing '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 field:

  • Instance ID

The above-mentioned information has to be consistent with the data from your Vultr panel. Now, complete this field 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 is 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

Custom ISO

"Custom ISO" feature allows clients to pick a single ISO and mount it to the machine.

Note: Mounting a custom ISO requires rebooting the machine.

VT 36.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:
  • Type- choose between IPv4 andIPv6
  • Protocol - select among TCP, UDP, ICMP, GRE, ESP and AH
  • Port - you may specify a port number or a port range (TCP/UDP only)
  • Source: specify a custom source or cloudflare
  • 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

Reserved IPs

This section includes a list of all existing in the panel reserved IP addresses.
  • on the account creations the IP addresses are automatically added to the group
  • on the change package action (downgrade/upgrade) the IPs are added or removed accordingly
  • on termination, all IPs are removed
VT 34.png

Reverse DNS

Reverse DNS option allows your clients to manage reverseDNS of the IP addresses assigned to the machine.

You can change the hostname that will appear when getting the hostname belonging to the primary IPs (IPv4 and IPv6) of your server.
To do so, just click on the button presented below.
Note: IPv4 addresses are already added on the list and cannot be deleted

VT 33 1.png
When 'IP' and 'Reverse DNS' are provided, just confirm the action.
VT 33 2.png
VT 33 3.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 (1), change its description (2) or delete it (3).

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

User Data

User data can be freely altered in the client area. Remember that after introducing any changes, the machine restart is required to apply the changes.

Note: User data supports smarty variables, such as '{$password}'. Follow to this article to find a full list of supported module parameters and their descriptions.

VT 35.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.

Note: Vultr offers a generic VNC URL that serves as a white-label URL. If you wish to use a white-label console with the Vulr VPS For WHMCS module, please contact the Vultr support via their official ticketing system.

VT 33.png

Tips

1. Vultr offers a generic VNC URL that serves as a white-label URL. If you wish to use a white-label console with the Vulr VPS For WHMCS module, please contact the Vultr support team via their official ticketing system.
2. If you may choose among all four configurable options to configure your VPS when placing an order, they will be prioritized in the following manner:

'Operating System' → 'Snapshot' → 'ISO' and 'Application' as the least one on the list.

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. Downgrading virtual machine with block storage is impossible. Move to the official Vultr documentation to find out more.
Navigation
WHMCS Modules
WHMCS Widgets
Translations
cPanel Modules
General
FAQ
Community
Vultr VPS For WHMCS