The on demand consumption model has become a de facto standard in cloud computing. To support this model in the OpenStack cloud environment, NetScaler MAS supports autoprovisioning of NetScaler VPX instances on a NetScaler SDX appliance to load balance applications deployed in OpenStack clouds.
For example, if a cloud service provider has built a cloud using OpenStack and serving their customers by providing on demand computing, storage and networking services, the networking services can include allocation of NetScaler instance on demand to customers who are deploying applications in the cloud. With NetScaler VPX instances provisioned on NetScaler SDX, customers can get the benefits of NetScaler MPX, such as high scale and performance, and the benefits of NetScaler VPX, such as flexibility.
Before autoprovisioning a NetScaler VPX instance on NetScaler SDX, verify that the following prerequisites have been met:
NetScaler LBaaS v2 drivers are installed in OpenStack.
NetScaler MAS is installed and registered with OpenStack.
NetScaler SDX has been added to MAS.
In MAS, navigate to Orchestration > OpenStack > Deployment and select the management network to which NetScaler SDX is connected.
Log on to MAS, go to Orchestration > Cloud Orchestration > Service Packages, and click Add to create a new Service Package.
Enter the name of the package, and set NetScaler Instance Allocation to Dedicated or Partition, NetScaler Instance Provisioning to create instance OnDemand, and Auto- provision platform to NetScaler SDX.
Enter the values for Bandwidth, Number of connections, Maximum number of instances to Auto provision, CPU cores per instance, total Memory per instance, SSL chips per instance, throughput required, and NetScaler VPX version.
Click the Add button to populate the available SDX devices. Then, click the plus (+) icon next to each IP address, to add that NetScaler SDX appliance to the service package, and then click Continue.
Under Assign Placement Policies/OpenStack Tenants, select OpenStack tenants and click Add to populate the list of tenants.
For each tenant, click the plus (+) icon and assign the tenant to a service package. Click Continue, and then click Done to finish the creation of a service package.
The tenants assigned to the service package will try to consume NetScaler load balancing as a service from OpenStack. Before any LBaaS commands can be executed, you have to set the environment variables. For each tenant, open an SSH session and enter the following commands:
export OS_USERNAME=<username>
export OS_PASSWORD=<password>
export OS_TENANT_NAME=<projectName>
export OS_AUTH_URL=https://<KeystoneIP:portNumber>/v2.0
Enter the following command to create a load balancer:
$neutron lbaas-loadbalancer-create --name <loadbalancer-name> <subnet-name> --provider netscaler
Enter the following command to check the provisioning status of the newly created load balancer:
$neutron lbaas-loadbalancer-list
Note: You can verify the status of the load balancer at each stage, after the creation of listener, pool, or members.
Enter the following command to create a listener:
$neutron lbaas-listener-create --loadbalancer <loadbalancer-name> --name <listener-name> -- protocol <protocol_type> --protocol-port <port_number>
Enter the following command to create a pool:
$neutron lbaas-pool-create --lb-algorithm <algorithm_type> --listener <listener-name> --protocol
<protocol_type> --name <pool-name>
Add members to the pool. To add a member, enter the following command:
$neutron lbaas-member-create --subnet <subnet-name> --address <ip-address of the web server> -- protocol-port <port_number> <pool-name>
Log on to the NetScaler GUI and go to Infrastructure > Instances > NetScaler VPX to see the newly created VPX instance and the service package to which it is bound.
Scroll bar to left to see the service package information.
Go to Applications, Load Balancing and verify the newly created virtual servers, Service Groups
and Content Switching Servers on the VPX instance.
Once the VPX is created and all the configurations are done, it is ready to serve the traffic.