Personal tools
Namespaces

Variants
Actions

Google Cloud Virtual Machines For WHMCS

From ModulesGarden Wiki
(Difference between revisions)
Jump to: navigation, search
(About Google Cloud Virtual Machines For WHMCS)
 
(28 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<meta name="keywords" content="google cloud virtual machines for whmcs, google cloud virtual machines configuration, whmcs google cloud virtual machines management, whmcs google cloud virtual machines installation, whmcs google cloud virtual machines common problems, about whmcs google cloud virtual machines, whmcs google cloud virtual machines documentation, whmcs google cloud virtual machines faq, whmcs google cloud virtual machines help, whmcs google cloud virtual machines guide, whmcs google cloud virtual machines wiki, whmcs google cloud virtual machines tutorial, whmcs google cloud virtual machines tips, whmcs google cloud virtual machines wiki, google vps, google instance, google instances, google vm, google virtual private servers"></meta>
+
<meta name="keywords" content="google cloud virtual machines for whmcs, whmcs google cloud virtual machines configuration, whmcs google cloud virtual machines management, whmcs google cloud virtual machines installation, whmcs google cloud virtual machines common problems, about whmcs google cloud virtual machines, whmcs google cloud virtual machines documentation, whmcs google cloud virtual machines faq, whmcs google cloud virtual machines help, whmcs google cloud virtual machines guide, whmcs google cloud virtual machines wiki, whmcs google cloud virtual machines tutorial, whmcs google cloud virtual machines tips"></meta>
 
<meta name="description" content="ModulesGarden Wiki Contains All The Information You Need About The Google Cloud Virtual Machines For WHMCS For WHMCS Module."></meta>
 
<meta name="description" content="ModulesGarden Wiki Contains All The Information You Need About The Google Cloud Virtual Machines For WHMCS For WHMCS Module."></meta>
  
Line 24: Line 24:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Choose Region
+
|style="padding: 0px 0px 0px 45px;"|✔ Define Machine Settings:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Choose Zone
+
|style="padding: 0px 0px 0px 60px;"|✔ Choose Region
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Provide Hostname Prefix
+
|style="padding: 0px 0px 0px 60px;"|✔ Choose Zone
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Choose Machine Type
+
|style="padding: 0px 0px 0px 60px;"|✔ Provide Hostname Prefix
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Choose OS Distribution
+
|style="padding: 0px 0px 0px 60px;"|✔ Choose Machine Type
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Choose Image
+
|style="padding: 0px 0px 0px 60px;"|✔ Choose Machine Template
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Choose Disk Type
+
|style="padding: 0px 0px 0px 60px;"|✔ Choose OS Distribution
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Provide Disk Size
+
|style="padding: 0px 0px 0px 60px;"|✔ Choose Image
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Provide Network Tags
+
|style="padding: 0px 0px 0px 60px;"|✔ Choose Disk Type
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Choose User Data
+
|style="padding: 0px 0px 0px 60px;"|✔ Provide Disk Size
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Choose Network And Network Tier
+
|style="padding: 0px 0px 0px 60px;"|✔ Provide Network Tags
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Choose User Data
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Define Custom Machine Settings:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Series
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Number Of Cores
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Memory
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Choose Client Area Features:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Snapshots
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Graphs
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Define Network Settings:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Select Network And Network Tier
 
|}
 
|}
 
{|
 
{|
 
|style="padding: 0px 0px 0px 45px;"|✔ Toggle IPv4 Address
 
|style="padding: 0px 0px 0px 45px;"|✔ Toggle IPv4 Address
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Select Custom Subnet
 
|}
 
|}
 
{|
 
{|
Line 69: Line 102:
 
{|
 
{|
 
|style="padding: 10px 0px 0px 30px;"|✔ Start/Stop/Reboot Server
 
|style="padding: 10px 0px 0px 30px;"|✔ Start/Stop/Reboot Server
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Download RDP File (Windows-based Instances)
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Reset Password
 
|}
 
|}
 
{|
 
{|
Line 77: Line 116:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Create/Restore/Delete Disk Snapshots
+
|style="padding: 0px 0px 0px 30px;"|✔ Create/Restore/Delete Snapshots
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ View Usage Graphs Of CPU/Network/Disks
 
|}
 
|}
 
{|
 
{|
Line 88: Line 130:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 30px;"|✔ Image
+
|style="padding: 0px 0px 0px 30px;"|✔ Machine Template
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Image
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Custom Machine Series
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Custom Machine Cores
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Custom Machine Memory [MB]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Disk Type
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Disk Size [GB]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 10px 30px;"|✔ IPv4
 
|}
 
|}
  
Line 103: Line 166:
 
{|
 
{|
 
|style="padding: 0px 0px 0px 30px;"|✔ Deep Learning on Linux
 
|style="padding: 0px 0px 0px 30px;"|✔ Deep Learning on Linux
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Fedora
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Fedora Core OS
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ OpenSUSE Linux
 
|}
 
|}
 
{|
 
{|
Line 109: Line 181:
 
{|
 
{|
 
|style="padding: 0px 0px 0px 30px;"|✔ Red Hat Enterprise Linux for SAP
 
|style="padding: 0px 0px 0px 30px;"|✔ Red Hat Enterprise Linux for SAP
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Rocky Linux Cloud
 
|}
 
|}
 
{|
 
{|
Line 121: Line 196:
 
{|
 
{|
 
|style="padding: 0px 0px 0px 30px;"|✔ Ubuntu
 
|style="padding: 0px 0px 0px 30px;"|✔ Ubuntu
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Ubuntu Pro
 
|}
 
|}
 
{|
 
{|
Line 126: Line 204:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 30px;"|✔ Any Other OS Platforms When Made Available By Google Cloud
+
|style="padding: 0px 0px 0px 30px;"|✔ Any Other OS Platforms When Made Available By Google Cloud
 +
|}
 +
{|
 +
|style="padding: 0px 0px 10px 30px;"|✔ Custom Images Uploaded By Admin To Google Cloud Platform
 
|}
 
|}
  
Line 134: Line 215:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 7.1 Up To PHP 7.4
+
|style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 8.1 Back To PHP 7.4
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS Themes "Six" And "Twenty-One"
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS Template Six
+
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V8.10 Back To WHMCS V8.6
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V7.9 And Later
+
|style="padding: 0px 0px 0px 30px;"|✔ Requires ionCube Loader V12 Or Later
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 30px;"|✔ Easy Module Upgrade To [https://www.modulesgarden.com/products/whmcs/google-cloud-virtual-machines#open-source-version Open Source Version]
+
|style="padding: 0px 0px 30px 30px;"|✔ Easy [https://www.docs.modulesgarden.com/How_To_Upgrade_WHMCS_Module Module Upgrade] To [https://www.modulesgarden.com/products/whmcs/google-cloud-virtual-machines#open-source-version Open Source Version]
 
|}
 
|}
  
Line 225: Line 309:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''11. It is time to specify service account permissions. So, select the '' 'Compute Admin' '' role from the dropdown menu and click '' 'Continue' ''.  
+
|style="padding: 0px 0px 1px 15px;"|'''11. It is time to specify service account permissions. So, select the '' 'Compute Admin' '' role from the dropdown menu and click '' 'Continue' ''. <br/>
 +
'''''Note:''' if any errors with API connection occur, please add another role: ''' 'Owner' '''. Check [[#Common_Problems|common problems]] section to learn more.''
 
|}
 
|}
 
{|
 
{|
Line 309: Line 394:
 
* '' '''Configuration:''' ''
 
* '' '''Configuration:''' ''
 
** '''Region''' - is a particular geographical location where you can host your resources. Each region consists of one or more zones.  
 
** '''Region''' - is a particular geographical location where you can host your resources. Each region consists of one or more zones.  
** '''Hostname Prefix''' - you can provide a hostname prefix.
+
** '''Random Domain Prefix''' - enter here the domain prefix for instances where a specific domain is not provided. Only valid hostname characters, including letters (a-z), numbers (0-9), and hyphens (-), are permitted.
 +
** ''' Machine Template''' - select a template to create a new VM based on the selected machine template. Note that only new VMs can be created based on templates, this option is not related to upgrades.
 
** '''OS Distribution''' - choose a preferred OS distribution from the dropdown menu.
 
** '''OS Distribution''' - choose a preferred OS distribution from the dropdown menu.
 
** '''Disk Type''' - Standard persistent disks are efficient and practical for handling sequential read/write operations while SSD persistent disks are dedicated to enterprise applications <br/>and high-performance database needs that demand lower latency and more IOPS.  
 
** '''Disk Type''' - Standard persistent disks are efficient and practical for handling sequential read/write operations while SSD persistent disks are dedicated to enterprise applications <br/>and high-performance database needs that demand lower latency and more IOPS.  
Line 318: Line 404:
 
** ''' Tags ''' - you may fill in network tags separated by commas or spaces.  
 
** ''' Tags ''' - you may fill in network tags separated by commas or spaces.  
 
** ''' User Data ''' - choose the '' 'cloud-config' '' file or '' 'Bash' '' script which may be used to configure the virtual machine on the first boot.  
 
** ''' User Data ''' - choose the '' 'cloud-config' '' file or '' 'Bash' '' script which may be used to configure the virtual machine on the first boot.  
 +
* '' '''Custom Machine Settings:''' ''
 +
** '''Series''' - Select the custom machine type from available.
 +
** '''Number Of Cores''' -  Define the number of cores that will be used.
 +
** '''Memory [MB]''' - Define the allocated memory amount for the machine, use MBs.
 
* '' '''Client Area Features:''' ''
 
* '' '''Client Area Features:''' ''
** '''Snapshots''' - enable if you want clients to access the '' 'Disk Snapshots' '' section in the client area.  
+
** '''Snapshots''' - enable if you want clients to access the '' 'Snapshots' '' section in the client area.
 +
** '''Graphs''' -  enable to assure access to the '' 'Graphs' '' section in the client area.  
 
* '' '''Network:''' ''
 
* '' '''Network:''' ''
 
** '''Network''' - choose a network.  
 
** '''Network''' - choose a network.  
** '''Network Tier''' - there are two tiers available, '' 'Standard' '' and the '' ' Premium' '' one. More about differences between them can be found [https://cloud.google.com/network-tiers here]
+
** '''Network Tier''' - there are two tiers available, '' 'Standard' '' and the '' ' Premium' '' one. More about the differences between them can be found [https://cloud.google.com/network-tiers here]
 
** '''IPv4 Address ''' - you can enable the IPv4 Address.
 
** '''IPv4 Address ''' - you can enable the IPv4 Address.
 +
** '''Custom Subnet''' - select the 'Custom Subnet' option when manually configuring VMs. Enable this setting during subnet creation. If a custom subnet is chosen, the selection will override any declaration in the 'Network' field.
 
|}
 
|}
 
{|
 
{|
Line 337: Line 429:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"| Now, select which options you want to generate and confirm by clicking '' 'Create' ''.<br/> Note that the configuration for disabled options will still be taken from the configuration of the main product.<br/>More information about how to use configurable options can be found [https://www.docs.modulesgarden.com/General#How_To_Use_Configurable_Options here] or in the official WHMCS [https://docs.whmcs.com/Addons_and_Configurable_Options documentation].
+
|style="padding: 0px 0px 15px 15px;"| Now, select which options you want to generate and confirm by clicking '' 'Create' ''.<br/> Note that the configuration for disabled options will still be taken from the configuration of the main product.<br/>More information about how to use configurable options can be found [https://www.docs.modulesgarden.com/General#How_To_Use_Configurable_Options here] or in the official WHMCS [https://docs.whmcs.com/Addons_and_Configurable_Options documentation].<br/>
 +
'' '''Important:''' Remember that you may enable either '''Machine Type''' configurable option or '''Custom Machine Series''' with its sub-options.''
 
|}
 
|}
 
{|
 
{|
Line 404: Line 497:
 
|style="padding: 10px 0px 15px 15px;"|The client area interface of Google Cloud Virtual Machines For WHMCS looks like below.<br/>As you can see, the control panel contains useful details of the managed server.<br />
 
|style="padding: 10px 0px 15px 15px;"|The client area interface of Google Cloud Virtual Machines For WHMCS looks like below.<br/>As you can see, the control panel contains useful details of the managed server.<br />
 
The module allows your customers to easily start, stop and reboot their server instance through pressing the appropriate buttons.<br />
 
The module allows your customers to easily start, stop and reboot their server instance through pressing the appropriate buttons.<br />
 +
It is also possible to download the RDP file and reset the password, just press adequate buttons.
 
|}
 
|}
 
{|
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:GC_30.png]]
 
|style="padding: 0px 0px 30px 25px;"|[[File:GC_30.png]]
 
|}
 
|}
===Disk Snapshots===
+
===Snapshots===
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|In the '' 'Disk Snapshots' '' section, you may create a new snapshot as well as manage the existing ones.  
+
|style="padding: 10px 0px 15px 15px;"|In the '' 'Snapshots' '' section, you may create a new snapshot as well as manage the existing ones.  
 
|}
 
|}
 
{|
 
{|
Line 426: Line 520:
 
{|
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:GC_30_3.png]]
 
|style="padding: 0px 0px 30px 25px;"|[[File:GC_30_3.png]]
 +
|}
 +
===Graphs===
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|The '' 'Graphs' '' section grants quick preview of the CPU, Networ and Disks utilization.<br/>
 +
Take a look at the available graphs to get the gist.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:GC_30_4.png]]
 
|}
 
|}
  
 
=Update Instructions=
 
=Update Instructions=
 
{|
 
{|
|style="padding: 10px 0px 30px 15px;"|An essential guidance through the process of updating the module is offered '''[https://www.docs.modulesgarden.com/How_To_Update_WHMCS_Module here]'''.<br/><br/>
+
|style="padding: 10px 0px 30px 15px;"|An essential guidance through the process of updating the module is offered '''[https://www.docs.modulesgarden.com/How_To_Update_WHMCS_Module here]'''.<br/>
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!<br/>
+
Ensure successful completion of the module update by carefully following each step, thereby preventing data loss or any unforeseen issues.<br/> Additionally, you will find a current list of supplementary actions necessary for a smooth update process there.
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.<br/>
+
|}
 +
=Upgrade Guide=
 +
{|
 +
|style="padding: 10px 0px 30px 15px;"|Seeking a solution that offers greater flexibility, customization tailored to your precise needs, and unrestricted availability?<br/> There is an option that not only proves to be cost-effective in the long run but also includes prioritized support services, making it a truly valuable investment.<br/>
 +
 
 +
Opt for the [https://www.modulesgarden.com/products/whmcs/google-cloud-virtual-machines#open-source-version Open Source version] of your Google Cloud Virtual Machines For WHMCS module to unlock these benefits.<br/> Simply click on either the '''Get Source Code''' or '''Upgrade To Lifetime''' button found on the product's page in our client area to complete the one-step upgrade process, with a '''dedicated discount''' already applied.<br/>  
 +
 
 +
Follow a [https://www.docs.modulesgarden.com/How_To_Upgrade_WHMCS_Module comprehensive guide] covering the transition process, the advantages it brings, and step-by-step instructions on what to do next after the order has been successfully finalized.
 
|}
 
|}
  
 
=Common Problems=
 
=Common Problems=
 
{|
 
{|
|style="padding: 10px 0px 30px 15px;"|'''1. When you have problems with connection, check whether your SELinux or firewall does not block ports.'''
+
|style="padding: 10px 0px 10px 15px;"|'''1. When you have problems with connection, check whether your SELinux or firewall does not block ports.'''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|2. '''User permissions errors:''' in case you encounter errors connected with access to API, make sure the user has appropriate permissions ''(Owner)'' set up in the Google Cloud panel. <br/>Change the permissions here:
 +
* Google Cloud → Dashboard → Go to project settings
 +
* IAM and admin → IAM
 +
* Find the user and edit the principal permissions
 +
* Add new role: '''Owner''' ''(Full access to most Google Cloud resources)'' and save the changes
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:GC_30_5.png]]
 
|}
 
|}

Latest revision as of 13:53, 26 April 2024

Contents

[edit] About Google Cloud Virtual Machines For WHMCS

Google Cloud Virtual Machines For WHMCS is a carefully and thoroughly planned module that allows you to provision and have charge of Google Cloud instances directly from your WHMCS system.
Your customers will be entitled to carry out all key actions such as start, stop, and reboot the server remotely.
What is more, you may easily oversee product features and monitor the status of each sold machine.
  • Admin Area Features:
✔ Create/Suspend/Unsuspend/Terminate Server
✔ Start/Stop/Reboot Server
✔ View Server Status And Details
✔ View Assigned Private And Public IP Addresses
✔ Configure Product Details:
✔ Define Machine Settings:
✔ Choose Region
✔ Choose Zone
✔ Provide Hostname Prefix
✔ Choose Machine Type
✔ Choose Machine Template
✔ Choose OS Distribution
✔ Choose Image
✔ Choose Disk Type
✔ Provide Disk Size
✔ Provide Network Tags
✔ Choose User Data
✔ Define Custom Machine Settings:
✔ Series
✔ Number Of Cores
✔ Memory
✔ Choose Client Area Features:
✔ Snapshots
✔ Graphs
✔ Define Network Settings:
✔ Select Network And Network Tier
✔ Toggle IPv4 Address
✔ Select Custom Subnet
✔ Generate Configurable Options
✔ Run API Connection Test
  • Client Area Features:
✔ Start/Stop/Reboot Server
✔ Download RDP File (Windows-based Instances)
✔ Reset Password
✔ View Server Status And Details
✔ View Assigned Private And Public IP Addresses
✔ Create/Restore/Delete Snapshots
✔ View Usage Graphs Of CPU/Network/Disks
✔ Provide SSH Key During Order
  • Configurable Options:
✔ Machine Type
✔ Machine Template
✔ Image
✔ Custom Machine Series
✔ Custom Machine Cores
✔ Custom Machine Memory [MB]
✔ Disk Type
✔ Disk Size [GB]
✔ IPv4
  • Available Images:
✔ CentOS
✔ Container Optimized OS
✔ Debian
✔ Deep Learning on Linux
✔ Fedora
✔ Fedora Core OS
✔ OpenSUSE Linux
✔ Red Hat Enterprise Linux
✔ Red Hat Enterprise Linux for SAP
✔ Rocky Linux Cloud
✔ SQL Server on Windows Server
✔ SUSE Linux Enterprise Server
✔ SUSE Linux Enterprise Server for SAP
✔ Ubuntu
✔ Ubuntu Pro
✔ Windows Server
✔ Any Other OS Platforms When Made Available By Google Cloud
✔ Custom Images Uploaded By Admin To Google Cloud Platform
  • General Info:
✔ Multi-Language Support
✔ Supports PHP 8.1 Back To PHP 7.4
✔ Supports WHMCS Themes "Six" And "Twenty-One"
✔ Supports WHMCS V8.10 Back To WHMCS V8.6
✔ Requires ionCube Loader V12 Or Later
✔ Easy Module Upgrade To Open Source Version

[edit] Installation and Configuration

This tutorial will show you how to successfully install and configure Google Cloud Virtual Machines For WHMCS smoothly.

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

[edit] Installation

1. Log in to our client area and download the module.
GC 1.png
2. Upload and extract the extension into the main WHMCS directory.

Extracted files in your WHMCS directory should look like this:

GC 2.png
3. When you install Google Cloud Virtual Machines For WHMCS for the first time, you have to rename the 'license_RENAME.php' file.

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

GC 3.png
4. In order to configure your license key, you have to edit the previously renamed 'license.php' file.

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

GC 4.png
5. Now, set up the 'storage' folder as recursively writable.

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

GC 5.png

[edit] Configuration of Server

Before you can go on, you must generate your access details. You will need them to connect with the server successfully.

Underneath, you will find instructions where to find them.

6. Firstly, log in to your account and go to https://cloud.google.com/.

Click 'Go to APIs overview' as presented below.

GC 6.png
7. Now, go to the 'Credentials' section.
GC 7.png
8. Click 'Create Credentials' .
GC 8.png
9. Here, choose the 'Service account' type.
GC 9.png
10. In this part, you need to complete your service account name. Once ready, press 'Create' .
GC 10.png
11. It is time to specify service account permissions. So, select the 'Compute Admin' role from the dropdown menu and click 'Continue' .

Note: if any errors with API connection occur, please add another role: 'Owner' . Check common problems section to learn more.

GC 11.png
12. In this step, you have to create your key. Click the appropriate button as shown below.
GC 12.png
13. Select the key type. It is recommended to use the 'JSON' type. Finally, click 'Create' .

Important! Once you proceed, the file with your private key will be downloaded to your computer.
Remember to store this file in a secure place because it is not possible to regain the key when the file is lost.

GC 13.png
14. Now, log in to your WHMCS and proceed to 'Setup' 'Products/Services' 'Servers' and press 'Add New Server'.
GC 14.png
15. Next, enter your server 'Name' , 'Hostname' , 'IP Address' and select 'Google Cloud Virtual Machines' from the 'Module' field.

Now, provide your Google Cloud project ID as 'Username' and paste the content of the previously downloaded file with your key details in the 'Access Hash' field.
Finally, check the 'Test Connection' and save the changes.

GC 15.png
16. It is time to create a server group. To do so, click on 'Create New Group' .
GC 16.png
17. Enter a name, click on your previously created server, press 'Add' and afterward 'Save Changes' .
GC 17.png

[edit] Configuration of Product

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

Click on 'Create a New Group'.

GC 18.png
19. Enter your product group name and press 'Save Changes'.
GC 19.png
20. Once you have a product group, you can create a new product.

To do so, first click on 'Create a New Product'.

GC 20.png
21. Afterward, choose your product type, enter your product name, choose module and the product group from the dropdown menus. Press 'Continue'.
GC 21.png
22. Now, go to the 'Module Settings' section, choose your previously created server group from the dropdown menu.

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

GC 22.png
23. Now, let's start configuring the settings of the server that you sell.
  • Configuration:
    • Region - is a particular geographical location where you can host your resources. Each region consists of one or more zones.
    • Random Domain Prefix - enter here the domain prefix for instances where a specific domain is not provided. Only valid hostname characters, including letters (a-z), numbers (0-9), and hyphens (-), are permitted.
    • Machine Template - select a template to create a new VM based on the selected machine template. Note that only new VMs can be created based on templates, this option is not related to upgrades.
    • OS Distribution - choose a preferred OS distribution from the dropdown menu.
    • Disk Type - Standard persistent disks are efficient and practical for handling sequential read/write operations while SSD persistent disks are dedicated to enterprise applications
      and high-performance database needs that demand lower latency and more IOPS.
    • Zone - is a location within a region. Once the 'Region' is selected, then you can define a zone.
    • Machine Type - you can choose from many predefined machine types in each machine type family.
    • Image - select a preferred OS image.
    • Disk Size - provide the disk size in GB.
    • Tags - you may fill in network tags separated by commas or spaces.
    • User Data - choose the 'cloud-config' file or 'Bash' script which may be used to configure the virtual machine on the first boot.
  • Custom Machine Settings:
    • Series - Select the custom machine type from available.
    • Number Of Cores - Define the number of cores that will be used.
    • Memory [MB] - Define the allocated memory amount for the machine, use MBs.
  • Client Area Features:
    • Snapshots - enable if you want clients to access the 'Snapshots' section in the client area.
    • Graphs - enable to assure access to the 'Graphs' section in the client area.
  • Network:
    • Network - choose a network.
    • Network Tier - there are two tiers available, 'Standard' and the ' Premium' one. More about the differences between them can be found here
    • IPv4 Address - you can enable the IPv4 Address.
    • Custom Subnet - select the 'Custom Subnet' option when manually configuring VMs. Enable this setting during subnet creation. If a custom subnet is chosen, the selection will override any declaration in the 'Network' field.
GC 23.png
24. 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.
If you decide to use configurable options, press on the 'Create Configurable Options' button.

GC 25.png
Now, select which options you want to generate and confirm by clicking 'Create' .
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.

Important: Remember that you may enable either Machine Type configurable option or Custom Machine Series with its sub-options.

GC 26.png

[edit] SSH Keys

In the 'Custom Fields' tab you will find the 'SSH Public Key' field which is displayed to clients on the order form by default.

Your SSH key must be an RSA key with a key size of either 2048 bits or 4096 bits.
If you would like to limit the possibility of entering the key e.g. only to the 'ssh-rsa' format, you can use the regular expression in the validation field, such as:

#ssh-rsa AAAA[0-9A-Za-z+/]+[=]{0,3}( [^@]+@[^@]+)?# 

Remember that API allows such action only once, during the initial VM creation.
Note: If you disable the 'Show on Order Form' option, a client will not be able to provide SSH Key while placing an order.

GC 27.png

[edit] Management

[edit] Admin Area

Google Cloud Virtual Machines For WHMCS allows you to supervise and manage your customer server instance from the admin area of your WHMCS system.

This includes supervision of such features as:

  1. Configurable options which enable you to view the chosen server details
  2. Module commands to allow easy and quick management of the server
  3. Service actions, including: Start, Stop and Reboot the server
  4. Instance details that provide the current status, resources and options set.
  5. Network Interface section that informs about the chosen network, private and public IPs.
  6. Disk section that gathers all the information about the disk.
GC 28.png

[edit] Ordering

Thanks to configurable options, you are able to offer a product which your clients can match to their needs.
Additionally, you are able to set up pricing for each configurable option, which makes your offer even more competitive.

At this moment you also have to provide the SSH key. Note that this key should be in one of the OpenSSH standard formats which are supported by API, e.g. ssh-rsa.

GC 29.png

[edit] 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 Google Cloud 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
  • Region
  • Zone

The above-mentioned information has to be consistent with the data from your Google Cloud 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' .

Photo 5.png
3. If the completed data is correct, after refreshing the page, you will see the attached instance from Google Cloud.
Important! Remember to manually add other missing parameters of the instance such as domains, credentials, IP Addresses, configurable options, SSH Key, billing cycle, etc. so they match the parameters of the attached instance from Google Cloud.

[edit] Client Area

The client area interface of Google Cloud Virtual Machines For WHMCS looks like below.
As you can see, the control panel contains useful details of the managed server.

The module allows your customers to easily start, stop and reboot their server instance through pressing the appropriate buttons.
It is also possible to download the RDP file and reset the password, just press adequate buttons.

GC 30.png

[edit] Snapshots

In the 'Snapshots' section, you may create a new snapshot as well as manage the existing ones.
GC 30 1.png
Simply, click on the 'Create Snapshot' button, then provide a name of this new snapshot. Please wait a while until the process is completed.
GC 30 2.png
Moreover, you can restore (1) or delete (2) a particular snapshot if it is no longer needed.
GC 30 3.png

[edit] Graphs

The 'Graphs' section grants quick preview of the CPU, Networ and Disks utilization.

Take a look at the available graphs to get the gist.

GC 30 4.png

[edit] Update Instructions

An essential guidance through the process of updating the module is offered here.

Ensure successful completion of the module update by carefully following each step, thereby preventing data loss or any unforeseen issues.
Additionally, you will find a current list of supplementary actions necessary for a smooth update process there.

[edit] Upgrade Guide

Seeking a solution that offers greater flexibility, customization tailored to your precise needs, and unrestricted availability?
There is an option that not only proves to be cost-effective in the long run but also includes prioritized support services, making it a truly valuable investment.

Opt for the Open Source version of your Google Cloud Virtual Machines For WHMCS module to unlock these benefits.
Simply click on either the Get Source Code or Upgrade To Lifetime button found on the product's page in our client area to complete the one-step upgrade process, with a dedicated discount already applied.

Follow a comprehensive guide covering the transition process, the advantages it brings, and step-by-step instructions on what to do next after the order has been successfully finalized.

[edit] Common Problems

1. When you have problems with connection, check whether your SELinux or firewall does not block ports.
2. User permissions errors: in case you encounter errors connected with access to API, make sure the user has appropriate permissions (Owner) set up in the Google Cloud panel.
Change the permissions here:
  • Google Cloud → Dashboard → Go to project settings
  • IAM and admin → IAM
  • Find the user and edit the principal permissions
  • Add new role: Owner (Full access to most Google Cloud resources) and save the changes
GC 30 5.png
Navigation
WHMCS Modules
WHMCS Widgets
Translations
cPanel Modules
General
FAQ
Community
Google Cloud Virtual Machines For WHMCS