Google Cloud Virtual Machines For WHMCS
(→Configuration of Server) |
|||
Line 46: | Line 46: | ||
{| | {| | ||
|style="padding: 0px 0px 0px 45px;"|✔ Provide Disk Size | |style="padding: 0px 0px 0px 45px;"|✔ Provide Disk Size | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Provide Network Tags | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Choose User Data | ||
|} | |} | ||
{| | {| | ||
Line 69: | Line 75: | ||
{| | {| | ||
|style="padding: 0px 0px 0px 30px;"|✔ View Assigned Private And Public IP Addresses | |style="padding: 0px 0px 0px 30px;"|✔ View Assigned Private And Public IP Addresses | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Create/Restore/Delete Disk Snapshots | ||
|} | |} | ||
{| | {| | ||
Line 125: | Line 134: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 7.1 Up To PHP 7. | + | |style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 7.1 Up To PHP 7.4 |
|} | |} | ||
{| | {| | ||
Line 131: | Line 140: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V7. | + | |style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V7.9 And Later |
|} | |} | ||
{| | {| | ||
Line 298: | Line 307: | ||
{| | {| | ||
|style="padding: 0px 0px 15px 15px;"|'''23. Now, let's start configuring the settings of the server that you sell.'''<br /> | |style="padding: 0px 0px 15px 15px;"|'''23. Now, let's start configuring the settings of the server that you sell.'''<br /> | ||
− | * '''Region''' - is a particular geographical location where you can host your resources. Each region consists of one or more zones. | + | * '' '''Configuration:''' '' |
− | + | ** '''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. | + | ** '''Hostname Prefix''' - you can provide a hostname prefix. |
− | + | ** '''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. |
− | + | ** '''Zone''' - is a location within a region. Once the '' 'Region' '' is selected, then you can define a zone. | |
− | * '''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. | + | ** '''Machine Type''' - you can choose from many predefined machine types in each machine type family. |
− | + | ** '''Image''' - select a preferred OS image. | |
− | * '''Zone''' - is a location within a region. Once the '' 'Region' '' is selected, then you can define a zone. | + | ** ''' Disk Size''' - provide the disk size in GB. |
− | + | ** ''' Tags ''' - you may fill in network tags separated by commas or spaces. | |
− | * '''Machine Type''' - you can choose from many predefined machine types in each machine type family. | + | ** ''' User Data ''' - choose the '' 'cloud-config' '' file or '' 'Bash' '' script which may be used to configure the virtual machine on the first boot. |
− | + | * '' '''Client Area Features:''' '' | |
− | * '''Image''' - select a preferred OS image. | + | ** '''Snapshots''' - enable if you want clients to access the '' 'Disk Snapshots' '' section in the client area. |
− | + | * '' '''Network:''' '' | |
− | * ''' Disk Size''' - provide the disk size in GB. | + | ** '''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''' - choose a network. | + | ** '''IPv4 Address ''' - you can enable the IPv4 Address. |
− | + | ||
− | * '''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] | + | |
− | + | ||
− | * '''IPv4 Address ''' - you can enable the IPv4 Address. | + | |
|} | |} | ||
{| | {| | ||
Line 377: | Line 382: | ||
{| | {| | ||
|style="padding: 0px 0px 30px 25px;"|[[File:GC_29.png]] | |style="padding: 0px 0px 30px 25px;"|[[File:GC_29.png]] | ||
+ | |} | ||
+ | ===Importing Existing Instance=== | ||
+ | {| | ||
+ | |style="padding: 10px 0px 15px 15px;"|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. <br/> Take the following steps to make sure that the process will be carried out properly. <br/> | ||
+ | 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' ''. <br/> '''What is important, do not perform the '' 'Create' '' action.''' The status has to remain as '' 'Pending' ''. <br/> More info about placing orders can be found [https://docs.whmcs.com/Order_Management#Placing_an_Order here]<br/> | ||
+ | 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. <br/> '''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. <br/> If you completed the required data, now change the status from '' 'Pending' '' to '' 'Active' '' and '' 'Save Changes' ''. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:Photo_5.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|3. If the completed data is correct, after refreshing the page, you will see the attached instance from Google Cloud. <br/> '''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. | ||
|} | |} | ||
Line 386: | Line 407: | ||
{| | {| | ||
|style="padding: 0px 0px 30px 25px;"|[[File:GC_30.png]] | |style="padding: 0px 0px 30px 25px;"|[[File:GC_30.png]] | ||
+ | |} | ||
+ | ===Disk 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: 0px 0px 20px 25px;"|[[File:GC_30_1.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|Simply, click on the '' 'Create Snapshot' '' button, then provide a name of this new snapshot. Please wait a while until the process is completed. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:GC_30_2.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|Moreover, you can restore (1) or delete (2) a particular snapshot if it is no longer needed. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:GC_30_3.png]] | ||
|} | |} | ||
Revision as of 15:26, 7 October 2020
Contents |
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: |
✔ Choose Region |
✔ Choose Zone |
✔ Provide Hostname Prefix |
✔ Choose Machine Type |
✔ Choose OS Distribution |
✔ Choose Image |
✔ Choose Disk Type |
✔ Provide Disk Size |
✔ Provide Network Tags |
✔ Choose User Data |
✔ Choose Network And Network Tier |
✔ Toggle IPv4 Address |
✔ Generate Configurable Options |
✔ Run API Connection Test |
- Client Area Features:
✔ Start/Stop/Reboot Server |
✔ View Server Status And Details |
✔ View Assigned Private And Public IP Addresses |
✔ Create/Restore/Delete Disk Snapshots |
✔ Provide SSH Key During Order |
- Configurable Options:
✔ Machine Type |
✔ Image |
- Available Images:
✔ CentOS |
✔ Container Optimized OS |
✔ Debian |
✔ Deep Learning on Linux |
✔ Red Hat Enterprise Linux |
✔ Red Hat Enterprise Linux for SAP |
✔ SQL Server on Windows Server |
✔ SUSE Linux Enterprise Server |
✔ SUSE Linux Enterprise Server for SAP |
✔ Ubuntu |
✔ Windows Server |
✔ Any Other OS Platforms When Made Available By Google Cloud |
- General Info:
✔ Multi-Language Support |
✔ Supports PHP 7.1 Up To PHP 7.4 |
✔ Supports WHMCS Template Six |
✔ Supports WHMCS V7.9 And Later |
✔ Easy Module Upgrade To Open Source Version |
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. |
Installation
1. Log in to our client area and download the module. |
![]() |
2. Upload and extract the extension into the main WHMCS directory. Extracted files in your WHMCS directory should look like this: |
![]() |
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'. |
![]() |
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. |
![]() |
5. Now, set up the 'storage' folder as recursively writable. This folder is available at '/yourWHMCS/modules/servers/GoogleCloudVirtualMachines/'. |
![]() |
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. |
![]() |
7. Now, go to the 'Credentials' section. |
![]() |
8. Click 'Create Credentials' . |
![]() |
9. Here, choose the 'Service account' type. |
![]() |
10. In this part, you need to complete your service account name. Once ready, press 'Create' . |
![]() |
11. It is time to specify service account permissions. So, select the 'Compute Admin' role from the dropdown menu and click 'Continue' . |
![]() |
12. In this step, you have to create your key. Click the appropriate button as shown below. |
![]() |
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. |
![]() |
14. Now, log in to your WHMCS and proceed to 'Setup' → 'Products/Services' → 'Servers' and press 'Add New Server'. |
![]() |
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. |
![]() |
16. It is time to create a server group. To do so, click on 'Create New Group' . |
![]() |
17. Enter a name, click on your previously created server, press 'Add' and afterward 'Save Changes' . |
![]() |
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'. |
![]() |
19. Enter your product group name and press 'Save Changes'. |
![]() |
20. Once you have a product group, you can create a new product. To do so, first click on 'Create a New Product'. |
![]() |
21. Afterward, choose your product type, enter your product name, choose module and the product group from the dropdown menus. Press 'Continue'. |
![]() |
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. |
![]() |
23. Now, let's start configuring the settings of the server that you sell.
|
![]() |
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. |
![]() |
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. |
![]() |
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. #ssh-rsa AAAA[0-9A-Za-z+/]+[=]{0,3}( [^@]+@[^@]+)?# Remember that API allows such action only once, during the initial VM creation. |
![]() |
Management
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:
|
![]() |
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. |
![]() |
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' .
The above-mentioned information has to be consistent with the data from your Google Cloud panel. Now, complete these fields as presented below. |
![]() |
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. |
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. |
![]() |
Disk Snapshots
In the 'Disk Snapshots' section, you may create a new snapshot as well as manage the existing ones. |
![]() |
Simply, click on the 'Create Snapshot' button, then provide a name of this new snapshot. Please wait a while until the process is completed. |
![]() |
Moreover, you can restore (1) or delete (2) a particular snapshot if it is no longer needed. |
![]() |
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! |
Common Problems
1. When you have problems with connection, check whether your SELinux or firewall does not block ports. |