Alibaba Cloud Virtual Machines For WHMCS
From ModulesGarden Wiki
(Difference between revisions)
|
|
Line 341: |
Line 341: |
| |} | | |} |
| {| | | {| |
− | |style="padding: 0px 0px 20px 15px;"|'''22. Now, you can start configuring the settings of the server you sell.''' | + | |style="padding: 0px 0px 20px 15px;"|'''22. Now, you can start configuring the settings of the server you sell.'''<br> |
− | |}
| + | The first section is dedicated to general configuration. Define the settings of following options: |
− | {|
| + | |
− | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_22.png]]
| + | |
− | |}
| + | |
− | {|
| + | |
− | |style="padding: 0px 0px 15px 15px;"|'''21. The first section is dedicated to general configuration. Define the settings of following options:'''
| + | |
| | | |
| * '''Burstable Instance''' - enable to allow to create burstable instances ''(addons)'' | | * '''Burstable Instance''' - enable to allow to create burstable instances ''(addons)'' |
Line 389: |
Line 384: |
| |} | | |} |
| {| | | {| |
− | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_23.png]] | + | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_22.png]] |
| |} | | |} |
| {| | | {| |
Line 406: |
Line 401: |
| |} | | |} |
| {| | | {| |
− | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_24.png]] | + | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_23.png]] |
| |} | | |} |
| {| | | {| |
Line 415: |
Line 410: |
| |} | | |} |
| {| | | {| |
− | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_25.png]] | + | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_24.png]] |
| |} | | |} |
| {| | | {| |
Line 421: |
Line 416: |
| |} | | |} |
| {| | | {| |
− | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_26.png]] | + | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_25.png]] |
| |} | | |} |
| {| | | {| |
Line 427: |
Line 422: |
| |} | | |} |
| {| | | {| |
− | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_27.png]] | + | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_26.png]] |
| |} | | |} |
| {| | | {| |
Line 434: |
Line 429: |
| |} | | |} |
| {| | | {| |
− | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_28.png]] | + | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_27.png]] |
| |} | | |} |
| {| | | {| |
Line 440: |
Line 435: |
| |} | | |} |
| {| | | {| |
− | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_29.png]] | + | |style="padding: 0px 0px 20px 25px;"|[[File:ACV_28.png]] |
| |} | | |} |
| <!-- | | <!-- |
Revision as of 11:35, 22 February 2023
Alibaba Cloud Virtual Machines For WHMCS will boost your provisioning business by allowing automated management of Alibaba instances in your WHMCS system.
Your clients will be empowered to remotely start, stop, and reboot the server, as well as preview the assignment of IP addresses.
In addition, the module will let you easily control product features, and supervise the status of each sold machine.
|
✔ Create/Suspend/Unsuspend/Terminate Server
|
✔ Start/Stop/Reboot Server
|
✔ View Server Status And Details
|
✔ View Assigned Network Interfaces And IP Addresses Details
|
✔ Configure Product Details:
|
✔ Choose Amazon Machine Image (AMI)
|
✔ Select From Amazon Database
|
✔ Add Own Image By Providing AMI ID
|
✔ Provide Custom Names For Added Images
|
✔ Define Number Of Firewall Rules
|
✔ Define Number Of IPv4 Addresses
|
✔ Toggle Capacity Reservation
|
✔ Toggle API Request Logging
|
✔ Provide User Data Script
|
✔ Define Client Area Configuration
|
✔ Enable Firewall Configuration
|
✔ Generate Configurable Options
|
✔ Run API Connection Test
|
✔ Start/Stop/Reboot Server
|
✔ View Server Status And Details
|
✔ View Assigned Network Interfaces And IP Addresses Details
|
✔ Create/Manage Firewall Rules
|
✔ Provide SSH Key During Order
|
✔ Provide SSH Key To Decode Windows Password
|
✔ Get/Provide SSH Key For Already Created Instance
|
✔ Amazon Machine Image (AMI)
|
✔ Number Of IPv4 Addresses
|
✔ Number Of Firewall Rules
|
✔ Supports PHP 7.4 Up To PHP 8.1
|
✔ Supports WHMCS Themes "Six" And "Twenty-One"
|
✔ Supports WHMCS V8.4 And Later
|
Installation and Configuration
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 Alibaba 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/AlibabaCloudVirtualMachines/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.
You can find your license key in our client area → 'My Products'.
|
5. Now, set up the 'storage' folder as recursively writable.
This folder is available at '/yourWHMCS/modules/servers/AlibabaCloudVirtualMachines/'.
|
6. The last step is setting up the queue cron job.
It will be used to execute module commands such as: create, terminate or change package.
php -q /yourWHMCS/modules/servers/AlibabaCloudVirtualMachines/cron/cron.php queue
It is suggested to run the cron every 5 minutes.
|
Configuration of Server
Before you can go on, you must generate your Alibaba Cloud Virtual Machines access details. You will need them to connect with the server successfully.
Underneath, you will find instructions where to find them.
|
8. Now, you need to move to the 'Console', press the adequate button and you will be redirected there immediately.
|
9. Hover over your 'Main Account' icon in the top right corner of the screen, a dropdown menu will appear. Press the 'AccessKey Management' selection.
|
10. You will be moved to 'AccessKey Pair section. There, you will be asked to confirm that you wish to 'Use Current AccessKey Pair'. Press the button to get access.
|
11. If you do not have yet any active keys, press 'Create AccessKey' button to generate a new set of details.
|
12. A modal with AccessKey ID and AccessKey Secret will appear, so copy them and keep safe. You may also download a file with the details.
|
Note that you can find the corresponding secret key later on, it will be accessible next to the Key ID in the panel.
|
13. Now that you have you access keys, you may move back to your WHMCS. Proceed to 'System Settings' → 'Servers' and press 'Add New Server'.
|
14. Next, enter your server name, fill in the 'Hostname' field, you may provide any data here, the provided content is not used in any way by the module.
Move to the "Server Details", select 'Alibaba Cloud Virtual Machines' from the 'Module' field.
Provide the previously generated access keys into 'Access Key ID' and 'Secret Access Key' fields. Then check the connection. If successful, save the changes.
Note: Described scenario for the "Advanced mode".
|
15. It is time to create a server group. To do so, click on 'Create New Group' .
|
16. Enter a name, click on your previously created server, press 'Add' and afterward 'Save Changes' .
|
Configuration of Product
17. In order to create and configure a product, go to 'Setup' → 'Products/Services' → 'Products/Services'.
Click on 'Create a New Group'.
|
18. Enter your product group name and press 'Save Changes'.
|
19. Once you have a product group, you can create a new product.
To do so, first click on 'Create a New Product'.
|
20. Afterward, choose your product type, enter your product name, choose module and the product group from the dropdown menus. Press 'Continue'.
|
21. 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.
|
|
22. Now, you can start configuring the settings of the server you sell.
The first section is dedicated to general configuration. Define the settings of following options:
- Burstable Instance - enable to allow to create burstable instances (addons)
- Billing Method - select between:
- "Subscription" - pay upfront and then use the service over a period of time
- "Pay-as-you-go" - pay for resources after you use the resources
- Change to "Subscription" - if enabled, the billing method will be automatically changed to "Subscription" on renewal
- Billing Period - (for "Subscription" method) Billing period to charge for the instances billed as subscription
- Region - select a region to deploy the resource
- Instance Image - choose image that will be installed on the instance
- Instance Type - select instance type based on the requirements of the application or software that you plan to run on your instance
- Security Groups - A named set of allowed inbound network connections for an instance. Each security group consists of a list of protocols, ports, and IP address ranges.
- Public IPv4 Address - enable public IPv4 addresses
- Usage Billing Method - Select between two available method: Pay-by-bandwidth and Pay-by-traffic.
- Peak Bandwidth [Mb/s] - Set the Peak Bandwidth value in Mb/s. A peak bandwidth is the upper limit placed on the outbound bandwidth of an instance.
- User Data - You can specify user data to configure an instance or run a configuration script during launch. This field is optional.
Tutorial on how to use this option can be found here.
- User Data File - Choose the execution script which will be used to configure the virtual machine on the first boot. Go here to find more information about how to use these scripts.
Note: User Data scripts are optional for product configuration if you do not want to use them, simply set this field to the 'Do not use' option.
- vSwitch - assign server to a vSwitch
- I/O Optimized Instance - enable if you aim to create an I/O optimized instance
- Welcome Email Template - choose an email template that will be sent to a client when the VM is created.
- Volume Size [GB] - Data Disks sizes can be between 20GB and 32TB.
- Random Domain Prefix - Enter the domain prefix that will be used when the domain is not provided
- Override Username - If specified, WHMCS generated username will be overwritten with this value
|
|
22. Enable features that will be available for your clients :
- Start
- Stop
- Restart
- Shut Down
- Reset Instance Password
- NoVNC Console
- Public IP Addresses
- Network Interfaces
- IPv6 Addresses
- Scheduled Tasks
- Instance Details: Status, Password, Instance ID, Image ID, Instance Type, Operating System, Memory, Core Count, Threads per Core, Tags
|
23. The following section is dedicated to Images.
Here, you may look for and then select single images to be added to the list. They will be available to choose from in the 'Instance Image' field in the main configuration of the product.
First of all, enter as many details as possible to find the images you are interested in. Press search button when ready.
|
When the list of available images appears, press 'Add' next to the one you wish to add to the list of selected.
|
Enter a custom name in the 'Configurable Option Name' if you wish to change it and confirm the action.
|
On the list of selected, there are all images that you have added, and which will be available to select from when setting up the 'Instance Image' configuration field.
It is also possible to add images manually here. Simply enter the image ID.
|
When found, press the 'Add' button.
|
23. 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' button and select which options you want to generate. 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.
|
User Data Scripts
User data is arbitrary data that can be executed during Amazon EC2 virtual machine creation, typically during the first boot of the server. This allows you to perform tasks or run scripts as the root user which can be extremely useful when provisioning a server.
You can provide your own scripts using 'cloud-config' or 'Bash', keep in mind that module parameters are supported and may be used in the script files. By default, we provide two exemplary scripts for changing the OS password or inserting SSH key, which you can use as a reference.
The script you want to include has to be located in the '/your_whmcs/modules/servers/AwsEc2/storage/userDataFiles/' directory and may not exceed 64 KiB in size.
|
Once you create your own script, it can be chosen for product execution.
You can provide multiple scripts for configurable options, but only one can be chosen for Amazon EC2 server creation.
If you would like to execute several different scripts at once, you should try combining them within a single file.
|
Management
Admin Area
Alibaba Cloud Virtual Machines For WHMCS allows you to monitor and manage your customer server instance from the admin area of your WHMCS system.
This includes supervision of such features as:
- Configurable options which enable you to view the chosen server details
- Module commands to allow easy and quick management of the server
Important: In order to successfully complete the change package action, the machine must be previously stopped by your client.
- Service actions, including: Start, Stop and Reboot the server
- Instance details that provide the current status, resources and options set.
- Interfaces details
- List of scheduled tasks with their specified type, status and date.
|
Ordering
Thanks 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 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 Alibaba 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:
The above-mentioned information has to be consistent with the data from your Amazon EC2 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' .
|
|
3. If the completed data is correct, after refreshing the page, you will see the attached instance from Amazon EC2. 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 Amazon EC2.
|
Client Area
The client area interface of Alibaba Cloud should look like the one on the screen below.
As you can see, the control panel contains useful details of the managed server.
The module allows your customers to easily start, stop, restart and reset the instance password through pressing the corresponding buttons.
Clients can also check the server status with its details, view assigned network interfaces and assigned IP addresses details as well as control the list of currently scheduled tasks.
|
Tips
1. You must firstly stop the machine to let the change package action be successfully completed.
|
2. In case you need to generate any of the configurable options once again, you must delete the previously created one. Only then it will be possible to generate a new configurable option. Read more about configurable options here.
|
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.
|