Deploy a high availability pair on AWS

You can configure two NetScaler VPX instances on AWS as a high-availability (HA) active-passive pair. In this pair, one instance configured as the primary node and the other as the secondary node. The primary node accepts connections and manages servers while the secondary node monitors the primary. If the primary node, for any reason, is unable to accept connections, the secondary node takes over.

For more information on HA, see High availability.

Before you start your deployment, read the following topics:

The following figure shows an example of the HA deployment architecture for NetScaler VPX instances on AWS.

Figure 1. A NetScaler VPX HA Pair on AWS

HA-image

You can deploy a VPX HA pair on AWS in two ways:

  • Create the instances with IAM role manually by using the AWS Management Console and then configure the instances as an HA pair.
  • Automate the HA deployment by using the Citrix CloudFormation template.

The CloudFormation template significantly decreases the number of steps involved for creating an HA pair, and it automatically creates an IAM role. This section shows how to deploy a NetScaler VPX HA (active-passive) pair by using the Citrix CloudFormation template.

Keep the following points in mind while deploying two NetScaler VPX instances as an HA pair.

Points to note

  • HA on AWS requires the primary node to have at least two ENIs - one for management and the other for data traffic. And the secondary node to have one management ENI. However, for security purposes, create three ENIs on the primary node, because this setup allows you to segregate private and public network (recommended).
  • The secondary node always has one ENI interface (for management) and the primary node can have up to four ENIs.
  • The NSIP addresses for each VPX instance in a high availability pair must be configured on the default ENI of the instance.
  • Amazon does not allow any broadcast/multicast packets in AWS. As a result, in an HA setup, data-plane ENIs are migrated from the primary to the secondary VPX instance when the primary VPX instance fails.
  • Because the default (management) ENI cannot be moved to another VPX instance, do not use the default ENI for client and server traffic (data-plane traffic).
  • The message AWSCONFIG IOCTL NSAPI_HOTPLUG_INTF success output 0 in the /var/log/ns.log indicates that the two data ENIs have successfully attached to the secondary instance (the new primary).
  • Failover might take up to 20 seconds due to the AWS detach/attach ENI mechanism.
  • Upon failover, the failed instance always restarts.
  • The heartbeat packets are received only on the management interface.
  • The configuration file of the primary and secondary VPX instances is synchronized, including the nsroot password. The nsroot password of the secondary node is set to that of the primary node, after the HA configuration synchronizes.
  • To access the AWS API servers, either the VPX instance must have a public IP address assigned or routing must be set up correctly at VPC subnet level pointing to internet gateway of the VPC.
  • Nameservers/DNS servers are configured at VPC level using DHCP options.
  • The Citrix CloudFormation template does not create an HA setup between different availability zones.
  • The Citrix CloudFormation template does not create an INC mode.
  • The AWS debug messages are available in the log file, /var/log/ns.log, on the VPX instance.

Deploy a high availability pair by using the Citrix CloudFormation template

Before start the CloudFormation template, ensure that you complete the following requirements:

  • A VPC
  • Three subnets within the VPC
  • A security group with UDP 3003, TCP 3009–3010, HTTP, SSH ports open
  • A key pair

Note

The Citrix CloudFormation template automatically creates an IAM role. Existing IAM roles do not appear in the template.

To launch the Citrix CloudFormation template:

  1. Log on to the AWS marketplace by using your AWS credentials.
  2. In the search field, type NetScaler ADC VPX to search for the Citrix ADC AMI, and click Go.
  3. On the search result page, click the desired Citrix ADC VPX offering.
  4. Click the Pricing tab, to go to Pricing Information.
  5. Select the region and Fulfillment Option as Netscaler AWS-VPX Cluster.
  6. Click Continue to Subscribe.
  7. Check the details in the Subscribe page and click Continue to Subscribe.
  8. Select Fulfillment Option as CloudFormation Template.

Localized image

  1. Select Software Version and click Continue to Launch.

  2. Under Choose Action, select Launch CloudFormation, and click Launch.

  3. The Select Template page appears. Click Next.

  4. The Specify Details appears. Enter the following details:

    a. Type a Stack name. The name must be within 25 characters.

    b. Under High Availability Configuration, select Yes from the menu for Create HA pair?.

    c. Under Virtual Private Network Configuration:

    • Select the VPC that you’ve already created for VPC ID.

    • Type Remote SSH CIDR IP.

    • Type Remote HTTP CIDR IP.

    • Type Remote HTTPS CIDR IP.

    • Select the key pair that you’ve already created from the menu for Key Pair.

    d. Under Network Interface Configuration:

    • Select Management Subnetwork, Client Subnetwork, and Server Subnetwork. Ensure that you select the correct subnetworks you created within the VPC that you selected under VPC ID in step c.

    • Add Primary Management IP, Secondary Management IP, Client IP, and Server IP. The IP addresses must belong to the same subnets of the respective subnetworks. Alternatively, you can let the template assign the IP addresses automatically.

    e. Under Other Parameters:

    • Select m4.large for Instant Type.

    • Select default for Tenancy Type.

    f. Click Next.

  5. The Options page appears. (This page is optional.). Click Next.

  6. The Review page appears. Take a moment to review the settings and make necessary changes if necessary.

  7. Select the I acknowledge that AWS CloudFormation might create IAM resources. check box, and then click Create.

  8. The CREATE-IN-PROGRESS status appears. Wait until the status is CREATE-COMPLETE. If the status does not change to “COMPLETE,” check the Events tab for the reason of failure and recreate the instance with proper configurations.

Localized image

  1. After an IAM resource is created, go to EC2 Management Console > Instances. The two VPX instances created with an IAM role appear. The primary node is created with three private IP addresses and three network interfaces.

AWS HA

The secondary node is created with one private IP address and one network interface.

Note

The secondary node is created with one interface by default in AWS. During failover, the interface from the primary node gets attached to the secondary node (the new primary node) and gets detached from the original primary node (the new secondary node).

  1. Log on to the primary node with user name nsroot and the instance ID as the password. From the GUI, go to System > High Availability. The NetScaler VPX HA pair appears.

Next, configure the HA pairing on both the instances. Configure the instance with three ENIs before configuring HA on the instance with one ENI). Use the add HA node command, from within the VPX CLI, or from the GUI.

add HA node <private IP of the first instance>

add HA node <private IP of the second instance>

After you run the “add HA node” commands, the two nodes form an HA pair, and configuration information is synchronized between the two VPX instances.

Configuring SR-IOV on a high availability setup

Support for SR-IOV interfaces in a high availability setup is available from NetScaler release 12.0 57.19 onwards. For more information about how to configure SR-IOV, see Configuring NetScaler VPX instances to Use SR-IOV Network Interface.