This template configures vThunder instance as a Server Load Balancer (SLB) to automate the scaling process allowing dynamic adjustment of servers based on the workload.
To configure vThunder as an SLB on Backend Autoscale, perform the following steps:
Before creating an automation account, configure the corresponding parameters in the
To configure the parameters, perform the following steps:
Download A10-vThunder_ADC-CONFIGURATION > CONFIG-SLB_ON_BACKEND-AUTOSCALE template from GitHub.
From Start menu, open PowerShell and navigate to this downloaded folder and open the CREATE_AUTOMATION_ACCOUNT_PARAM.json with a text editor.
NOTE: | Each parameter has a default value mentioned in the parameter file which can be modified as required. |
Configure the following parameters:
Resource Name |
Description |
---|---|
Automation Account |
Specify the automation account name. If the automation account does not exist, then a new automation account gets created inside resource group. If automation account already exists, then template gets auto-updated. If the automation account variable does not exist, then a new automation account variable gets created inside the automation account. If an automation account variable already exists, an error "The variable already exists" is prompted. "automationAccountName": "vth-amt-acc",
|
Location |
Specify the location. "location": "South Central US", |
Client Secret |
Specify the client secret, application ID, and tenant ID. To get these values, go to Home > Azure services > Azure Active Directory > App Registration > Owned applications > <application_name>. "clientSecret": "9-xxx~jIxxxEVyxxxxHNxxxOwv_xxxxZLxxxTM", "appId": "10724xxx-xxx-xxxx-xxxx-xxxx2c14726d", "tenantId": "91d27xxx-xxxx-xxxx-xxxx-xxxxf81fcb2f", |
Application ID | |
Tenant ID | |
VMSS |
Specify the server VMSS name. "vmssName": "vth-server-vmss", |
Management Interfaces |
Specify a unique network interface card for management traffic. "mgmtInterface1": "vth-inst1-mgmt-nic", "mgmtInterface2": "vth-inst2-mgmt-nic", |
vThunder instances |
Specify the virtual machine names. "vThunderName1": "vth-inst1", "vThunderName2": "vth-inst2", |
Resource Group |
Specify the resource group where virtual machine scale set having vThunder servers and resources created by the "resourceGroupName": "vth-rg1", |
Virtual Resource Group |
Specify the name of an existing resource group under which the virtual network is already created. "vnetresourceGroupName" : "<existing virtual network resource group name>", |
vThunder Username |
Specify a 'Read/Write/HM' privilege username. "vThUsername": "admin", |
Port List |
Specify port details. "portList":{ "value": [ { "port-number": 53, "protocol": "udp", "health-check-disable":1 }, { "port-number": 80, "protocol": "tcp", "health-check-disable":1 }, { "port-number": 443, "protocol": "tcp", "health-check-disable":1 } ] } |
Run the following command to create an automation account:
PS C:\Users\TestUser\Templates> .\CREATE_AUTOMATION_ACCOUNT_1.ps1
To verify the creation of an automation account, perform the following steps:
Figure 181 : Selected automation account - Overview window
Figure 182 : Selected automation account - Variables window
To change the Backend Autoscale vThunder instance password for the first-time, perform the following steps:
Run the following command to change the password:
PS C:\Users\TestUser\Templates> .\CHANGE_PASSWORD_2.ps1
NOTE: | It is highly recommended to change the default password provided by the A10 Networks Support when you log in the vThunder instance for the first time. |
Provide the default and new password when prompted:
Enter New Password:*********
Confirm New Password:*********
The default password is provided by the A10 Networks Support. The new password should follow the Default password policy. For more information, see Default Password Policy.
Verify if the timestamp in the Last modified column of the vThPassword variable is updated.
Figure 183 : Updated Variables window
To change the Backend Autoscale vThunder password subsequently, perform the following steps:
To configure vThunder as an SLB on-demand, perform the following steps:
Open the SLB_CONFIG_ONDEMAND_PARAM.json with a text editor.
NOTE: | Each parameter has a default value mentioned in the parameter file. |
Configure the following parameters:
Resource Name |
Description |
---|---|
Service Group List |
Specify the service group details. "serviceGroupList": { "value": [ { "name":"sg443", "protocol":"tcp", "health-check-disable":1 }, { "name":"sg53", "protocol":"udp", "health-check-disable":1 }, { "name":"sg80", "protocol":"tcp", "health-check-disable":1 } ] }, |
Virtual Server |
Specify the virtual server details. The virtual server default name is “vip”. The vip address is generated dynamically after deploying the vThunder instances. Thereafter, its default value under "virtualServerList": { "virtual-server-name": "vip", "ip-address": "10.0.2.5", "metadata": { "description": "virtual server is using VIP from ethernet 1 subnet" }, "value": [ { "port-number":53, "protocol":"udp", "ha-conn-mirror":1, "auto":1, "service-group":"sg53" }, { "port-number":80, "protocol":"http", "auto":1, "service-group":"sg80" }, { "port-number":443, "protocol":"https", "auto":1, "service-group":"sg443" } ] } |
To get the vip address after deploying the vThunder instances, perform the following steps:
vth-inst1
.vip
. vth-inst1-datain
-nic
.Figure 184 : Virtual machine - Networking window - Datain NIC tab
ip-address
value under virtualServerList
with this vip
. "virtualServerList": {
"virtual-server-name": "vip",
"ip-address": "10.0.2.5
",
"metadata": {
"description": "virtual server is using VIP from ethernet 1 subnet"
},
NOTE: | ha-conn-mirror does not work on port 80 and 443. |
Run the following command to configure vThunder instance as an SLB:
PS C:\Users\TestUser\A10-vThunder_ADC-CONFIGURATION\BASIC-SLB> .\SLB_CONFIG_ONDEMAND_3.ps1
Provide the correct vThunder instance password when prompted:
Enter New Password:*********
If the SLB is configured successfully, the following message is displayed:
SLB Server Host IP: 10.0.3.7 Virtual Server Name: vip Resource Group Name: vth-rg1
vThunder1 Public IP: 13.85.81.137
vThunder2 Public IP: 13.85.81.113
Configuring vm: vth-inst1
configured ethernet- 1 ip
configured ethernet- 2 ip Configured server Configured service group 0 Configured virtual server SSL Configured. Configurations are saved on partition: shared
Configured vThunder Instance 1
Configuring vm: vth-inst2
configured ethernet- 1 ip
configured ethernet- 2 ip Configured server Configured service group 0 Configured virtual server SSL Configured. Configurations are saved on partition: shared
Configured vThunder Instance 2
To create the SLB-Config runbook, perform the following steps:
Figure 185 : Selected automation account window
Figure 186 : Selected automation account - Runbooks window
Figure 187 : Create a runbook window
Figure 188 : Edit PowerShell Runbook window
NOTE: | It may take the system a few minutes to display the edit window. |
To verify that the virtual machine instances are running, perform the following steps:
Figure 189 : VMSS window
To create a webhook, perform the following steps:
PS C:\Users\TestUser\Templates> .\CREATE_WEBHOOK_4.ps1 -runBookName "<runbook_name>"
Example:
PS C:\Users\TestUser\Templates> .\CREATE_WEBHOOK_4.ps1 -runBookName "SLB-Config"
After the webhook installation is complete, the webhook url is displayed.
Save this URL : https://fa72c8e5-xxxx-xxxx-9dc5-b4a71eec0a95.webhook.scus.azure-automation.net/webhooks?token=Q*****pG4UEOScfqdEGEAkqJPgdK%2bOpusoUAWk*****%3d
vth-server-vmss
.Figure 190 : VMSS-Scaling - Notify tab
To verify the creation of runbook job, perform the following steps:
SLB-Config
.Figure 191 : Selected automation account - Jobs window
Figure 192 : Selected runbook job window