VMware WHMCS Module

From WHMCS Global Services Module Documentation
Jump to: navigation, search

About WGS VMware WHMCS Module[edit]

WGS VMware vSphere is fully automated module that will reduce 90% of your IT person cost. With this module once user orders the service, admin does not need to create VM manually and install OS etc. Moreover network adapter also manages itself and once server is provisioned, module will send all the details to end user. We are providing the rich client area UI feature where user can manage all the controls like start,stop,reinstall the server as well as manage the server snapshot.

How to install VMware module?[edit]

How to upload files with WHMCS?[edit]

1. Log in to your client area https://whmcsglobalservices.com/members/clientarea.php and download VMware module .

2. Extract module folder.

3. Upload addons folder to WHMCS (whmcs_root/modules/addons/).

4. Upload servers folder to WHMCS (whmcs_root/modules/servers/).

5. Upload crons folder file to WHMCS (whmcs_root/crons/).

6. Open your FTP and edit the language file 'english.php' in editor and then copy the module language file variables then paste at the end of the file 'english.php' before PHP tag close (whmcs_root/lang/english.php).

Module Requirements[edit]

1. WHMCS v6, v7.x
2. SOAP must be enabled on your server
3. Please grant 0777 permission to cache file ".clone_ticket.cache" (/modules/servers/vmware/vmwarephp/library/Vmwarephp/.clone_ticket.cache)
4. XML, XML Reader, XML Writter (PHP Extension) enabled.
5. WHMCS DB User must have all permissions of the DB before installation and activation of this ADDON
GRANT ALL PRIVILEGES ON db_base.* TO db_user @'localhost' IDENTIFIED BY 'db_passwd';

Addon Module[edit]

VMware addon module For WHMCS.

Features[edit]

  • Multi-Language Supported
  • Supported version Whmcs V6,V7.x
  • Supported PHP 5.6 to 7.2

How to activate the addon module with WHMCS?[edit]

Let's configure addon module with your WHMCS.

1. Login as WHMCS admin and then Go to Setup -> Addon Modules. Afterwards, find VMware and press Activate button.

2. Enter your module license key.

3. Enable to delete the DB module tables, when deactivating the module.

4. Assign user(s), who can access this module.

Vmware addon.png

Addon Module View[edit]

VMware addon module For WHMCS allows us to manage things as below.

Server Setup[edit]

First of all you need to setup the vCenter/vSphere/ESXI server for API connection. You can add multiple servers.
1. Server Name (Enter any name which you want to display)
2. vCenter/vSphere/ESXI IP Address or Hostname Address should be like https://127.0.0.1, http://127.0.0.1
3. vCenter/vSphere/ESXI Username
4. vCenter/vSphere/ESXI Password
5. VMRC Console Username How to create VMRC console user?
6. VMRC Console Password
7. ESXI host (enable it, if you are using ESXI server detail)
Wiki template10.png

Guest Operating System[edit]

A guest operating system is an operating system that is secondary to the OS originally installed on a computer. List of guest OS will be shown at the front side during order process. User can select desired operating system to install on his VM. Admin can predict his own custom name to Guest OS and that will be shown in order form.
1. Select vCenter (Your vCenter servers are those servers, you added under Server Setup tab)
2. Select Datacenter
3. Select Hostname
4. Select Resource Pool
5. Select Network Adapter
6. Select Datastore (Your host datastore, where ISO files exists)
7. Guest OS Family (Like Windows, Linux, Others)
8. Guest OS Version Like (Windows 7, Ubuntu Linux, Windows 7 Vista)
9. ISO File (Image file for OS, For this you need to upload your ISO files in iso directory for specifc datastore)
10. Guest OS Version ID (module will auto fill this id on behalf of OS version)
11. Hide from order form (You can hide configure OS from order form)
Wiki template2.png

How to add more OS version?[edit]

Click on given link "Add more OS version" and then open the guestOsIdentifier.txt file (/modules/addons/vmware/guestOs/) in your editor. in this file you can add the more OS.
Copy the OS version and version id from given link and paste in this guestOsIdentifier.txt file according to OS family like (Windows/Linux)
Instructions for add new OS
Format like "OS Family-OS Version-OS Version ID".
Add all values with hyphen (-) separator
Os.png

VMware Name (Cloning VM)[edit]

A VMware name is a master copy of a virtual machine that can be used to create many clones. VMware name will be used during order process. Module will create the VM by cloning and assign the IP automatically.
1. Select vCenter (Your vCenter servers are those servers, you added under Server Setup tab)
2. Select Datacenter
3. Select Hostname
4. Select Resource Pool
5. Select Network Adapter
6. Select Datastore (Your host datastore, where ISO files exists)
7. Guest OS Family (Like Windows, Linux, Others)
8. Custom Name (Enter any custom name related to OS which you want to show on order form)
9. Select Sample VM (from which you want to create another VM's)
10. System Password (Sample VM root/administrator password)
11. Product (license) key (only required for Windows oldest version like Windows vista, etc)
12. IP Auto Customization (Auto provision IP/network)
13. From VM template (Enable, if you want to create VM from VM template)
14. Hide from order form (You can hide configure OS from order form)
Wiki template1.png

IP Mapping[edit]

In this section Admin can manage IPs, MAC, Netmask, Gateway and DNS according to datacenter. These IP, MAC address will be assigned to VM once order is completed. Admin will assign IP and MAC address (which he wants) to newly created VM manually.
1. Select vCenter (Your vCenter servers are those servers, you added under Server Setup tab)
2. Select Datacenter
3. Select Hostname
4. Enter random IP (if you want the random IP, then you need to tick this option)
5. IP (IP Pool / Random IP)
6. Mac Address (enter mac address with related IP, mac address for OVH server)
7. Gateway
8. DNS
9. Netmask
Wiki template4.png

Setting[edit]

Click on Update Datacenters button to update datacenters in product custom field.

Note: After configured the module with products, once click on this button to update the datacenters options with Datacenter product custom field.

Datacenter setting.png

Server (provisioning) Module[edit]

How to configure the server (provisioning) module with WHMCS?[edit]

Let's configure server (provisioning) module with WHMCS.

1. Login as WHMCS admin and then Go to Setup -> Products/Services. Afterwards, create a new test product group with your WHMCS and then create a new test product with this group

2. Now you need to configure welcome email template. Look for “Welcome Email ” Select email template name for “VMware Welcome Email”

3. Now, we have to activate the module in your WHMCS system under Module Settings tab

Server (provisioning) module configuration steps.

1. Select the Module Name “WGS VMware”
2. User defined Configurable Options (If you have enabled it then module will create the product configurable options and allow users to manage resources like (RAM, CPU, HDD, etc) from order page.)
3. Select VMname prefix (VM Name should be like Prefix_Customername_Serviceid).
4. Select Server (select API connection server, that you had created in addon module under Server Setup tab)
5. Memory MB (RAM)
6. Number of Additional IP's (How many number of additional IP's will be assigned to VM)
7. Number of CPU's (How many number of CPU will be assigned to VM)
8. Disk1- First disk partition for VM. It is required
9. Disk2- Second disk partition. (optional)
10. Disk3- Third disk partition.(optional)
11. Disk4- Third disk partition.(optional)
12. Bandwidth Limit (like 10 GB)
13. You can set Bandwidth alert. User will get an email alert in his inbox when user reaches this limit. (Say 85%, when user reaches 85% bandwidth )
14. Over bandwidth price (when user crosses the assigned limit then user creates the bill for over usage bandwidth)
15. Suspend on over usage (if you have enabled this option, then module will suspend the service on over usage)
16. Select Datastore
17. CPU Limit (MHz)
18. Enable console (https). Enable it, if your WHMCS running on HTTPS://
19. Enable DHCP (Enable if you are using DHCP)
20. Snap Shot Limit
21. Allow configurable options as additional resources (If you want to create pre-defined value product and want to use configurable options as additional resources).
22. Choose any option (when module create command will run)


Wiki template3.png

Order Process descriptions[edit]

The Module works in two ways: set product with fixed value by admin or user can choose the configuration like (RAM, CPU, HDD, etc) on their demand.

Fixed Products[edit]

1. Datacenter Name
2. Guest OS Family (Windows, Linux, Others)
3. Guest OS Version (Type of Operating System, like Window10, ubunut 14.10 etc)


Wiki template5.png

Configurable Options[edit]

1. Datacenter Name
2. Guest OS Family (Windows, Linux, Others)
3. Guest OS Version (Type of Operating System, like Windows10, ubuntu 14.10 etc)
4. RAM (GB)
5. Numbers of CPU's
6. Hard Disk Size
7. Bandwidth Size
8. Additional IP's
9. Numbers of snapshots
Order configurable.png

How your module looks and works[edit]

User can manage the following functionality from client area:-

  • Detail (Server Detail, Network detail, Additional Ip's list)
  • Data Usage (Usage graphs,disks)
  • Action (Power Off,Power On,Pause,Unpause,Soft Reboot,Hard Reboot)
  • VMware Tools (Mount,Unmount,Upgrade VMware Tools)
  • Snapshot (Create,Manage Snapshots)
  • Console

Detail (Server Detail)[edit]

User can view the Server detail.

Wiki template7.png

Data Usage[edit]

User can view the daily, monthly usage graphs and view the disks detail.

Vm graph.png

Action[edit]

User can manage Power Off ,Power On ,Pause ,Unpause ,Soft Reboot ,Hard Reboot and Re-install VM.

Wiki template6.png

VMware Tools[edit]

User can Mount,Unmount,Upgrade VMware Tools

Vm tool.png

Snapshot[edit]

User can create the VM snapshots and manage these snapshots.

Vm spshot.png

Console[edit]

User can login to VM console and manage without using SSH from this area

Wiki template8.png

How to handle the bandwidth over usage?[edit]

Our module provides a great feature to manage the over usage bandwidth. You can set the quota limit and bandwidth alert limit from module setup in WHMCS admin. If you set the alert limit (90%) when user reaches and crosses this limit, then our module sends a bandwidth notification email to the user. If user reaches and crosses the quota limit (like 1 GB), then our module will suspend the user service.

How to set the cron?[edit]

You need to set this cron (php -q /your whmcs dir path/crons/vmware_manage_bw.php) with your Cpanel.

How to assign the existing VM with WHMCS?[edit]

In this module you can assign your existing VM with your WHMCS user.

Go to WGS VMware addon module -> Assign Existing VM

1. User (WHMCS user)
2. Product (WHMCS products which has "WGS VMware" module assigned)
3. Payment method (select payment method to create the new order)
4. Billing cycle (select billing cycle to create the new order)
5. vCenter Server (select connection server)
6. Existing VM (Select VM, which you want to assign with new order service)
7. Guest OS Family (like Windows/Linux)
8. Guest OS version related to OS family
9. Datacenter (location where you want to install VM)
10. Server Name (where server VM will be located)
11. IP's (assign IP to this new VM)
12. Stop Invoice Creation (while assigning existing VM to WHMCS user, enable this option to stop invoice creation for this VM)
Wiki template9.png

How to assign the existing VM with existing WHMCS user service?[edit]

With our module, you can assign your existing VM with existing WHMCS user service. For this go to "Products/Services" tab with specific user service. Follow given below steps to configure it.

1. VMname (put you existing VMname, which you want to assign)
2. Select Datacenter
3. Select Guest OS family (Windows, Linux, Others)
4. Select Guest OS Version (Windows 2012 R2 64 bit, CentOS 4/5, etc)
5. Click on Save Changes button to assign VM.

Note: Fields VNC detail and Hostname should be empty while assigning existing VM.

Assign existing user.png