Deploying a Conferencing Node in AWS

After deploying the Management Node you can deploy one or more Conferencing Nodes in AWS to provide conferencing capacity.

Task summary

Deploying a Conferencing Node in AWS consists of the following steps:

  1. In the AWS management console, select the same AWS region in which the Management Node is deployed and use the launch wizard to create an instance of a Conferencing Node.
  2. Search the Community AMIs section for the relevant Pexip Infinity Conferencing Node AMI.
  3. Ensure that the instance is run as a dedicated host (tenancy), is associated with a suitable security group, and that an SSH key pair has been associated with the instance.
  4. After the instance has booted, perform a configuration-only deployment on the Management Node to inform it of the new Conferencing Node.
  5. Upload the resulting XML document to the new Conferencing Node.
  6. Configure the Conferencing Node's static NAT address, if you have a assigned a public IP address to the instance.

These steps are described below in more detail.

Task breakdown

  1. In the AWS management console, ensure that you have selected the same AWS region in which the Management Node is deployed.
  2. From the EC2 dashboard, select Launch Instance.

    This launches the wizard in which you will select and configure your image.

  3. Complete Step 1: Choose an Amazon Machine Image (AMI):
    1. Select Community AMIs.
    2. Search the Community AMIs section for "Pexip".
    3. Select Pexip Infinity Configuration Node <version> build <build_number> where <version> is the software version you want to install.
  4. Complete Step 2: Choose an Instance Type:
    1. We recommend using a c4.2xlarge instance type for the Conferencing Node.
    2. Select Next: Configure Instance Details.
  5. Complete Step 3: Configure Instance Details:

    1. Complete the following fields (leave all other settings as default):

      Number of instances 1
      Subnet Use default subnet.
      Auto-assign Public IP

      Enable or disable this option according to whether you want the node to be reachable from a public IP address.

      You must assign a static public/external IP address to the Conferencing Node if you want that node to be able to host conferences that are accessible from devices in the public internet.

      Your subnet may be configured so that instances in that subnet are assigned a public IP address by default.

      If you want to assign a persistent public IP address (an Elastic IP Address) you can do this after the instance has been launched.

      Primary IP

      Either leave as Auto-assign or, if required, specify your desired IP address.

      (AWS reserves the first four IP addresses and the last one IP address of every subnet for IP networking purposes.)

      Tenancy Select Dedicated host.
    2. Select Next: Add Storage.
  6. Complete Step 4: Add Storage:
    1. Accept the default settings (the Pexip AMI sets these defaults appropriately for a Conferencing Node).
    2. Select Next: Tag Instance.
  7. Complete Step 5: Tag Instance:
    1. You can optionally add tags to your instance, if you want to categorize your AWS resources.
    2. Select Next: Configure Security Group.
  8. Complete Step 6: Configure Security Group:
    1. Select and assign your security group to your Conferencing Node instance.
    2. Select Review and Launch.
  9. Complete Step 7: Review Instance Launch:
    1. This step summarizes the configuration details for your instance.

      You may receive a warning that your security group is open to the world. This is to be expected if you are deploying a public or hybrid Conferencing Node that is intended to be accessible to publicly-located clients.

    2. Select Launch.
  10. You are now asked to select an existing key pair or create a new key pair:
    1. Select the key pair that you want to associate with this instance, and acknowledge that you have the private key file.

      (Note that you will not be required to SSH into Conferencing Node instances.)

    2. Select Launch instances.

      The Launch Status screen is displayed.

  11. Select View Instances to see all of your configured instances and ensure that your Instance State is running.

    The status screen also indicates the private IP address, and public IP address if appropriate, of the instance.

  12. Make a note of the Private IP address that has been assigned to the new Conferencing Node.
  13. Perform a configuration-only deployment of the new Conferencing Node:

    1. Log in to the Pexip Infinity Administrator interface on the Management Node.
    2. Go to Platform configuration > Conferencing Nodes.
    3. Select Add Conferencing Node.
    4. For deployment type, choose Generic (configuration-only) and select Next.
    5. Enter the details of the new Conferencing Node, including:

      IPv4 address

      Enter the Private IP address that AWS has assigned to the new Conferencing Node.

      Network mask

      The netmask depends upon the subnet selected for the instance. The default AWS subnet has a /20 prefix size which is a network mask of 255.255.240.0.

      Gateway IP address

      The gateway address is the first usable address in the subnet selected for the instance (e.g. 172.31.0.1 for a 172.31.0.0/20 subnet).

      You must also specify other fields such as the Name, Role, Hostname, Domain, System location and assign a TLS certificate. These fields are listed below.

    6. Select Finish.
    7. Select Download Conferencing Node Configuration and save the XML configuration file.

      A zip file with the name pexip-<hostname>.<domain>.xml will be downloaded.

  14. You must now upload the XML configuration file to the new Conferencing Node:

    1. Browse to https://<conferencing-node-ip-address>:8443/ and use the form provided to upload the XML configuration file to the Conferencing Node VM.

      If you cannot access the Conferencing Node, check that you have allowed the appropriate source addresses in your security group inbound rules for management traffic. In public deployments and where there is no virtual private network, you need to use the public address of the node.

      1. Select Choose File and select the XML configuration file.
      2. Select Upload.
    2. The Conferencing Node will apply the configuration and then reboot. When it has rebooted, it will connect to the Management Node.

      You can close the browser window used to upload the file.

  15. If you want the node to have a persistent public IP address you can assign an Elastic IP address to the Conferencing Node. To do this, use the Elastic IPs option in the Amazon VPC console.

    Note that the public IP address assigned when the instance was launched (if Auto-assign Public IP was selected), will always be available and will not change while the instance remains running. A new (different) public IP address is only assigned if the instance is stopped and restarted.

  16. Configure the Conferencing Node's static NAT address, if you have a assigned a public IP address to the instance:

    1. Log in to the Pexip Infinity Administrator interface on the Management Node.
    2. Go to Platform configuration > Conferencing Nodes and select the Conferencing Node.
    3. Configure the Static NAT address as the instance's public IP address (either the auto-assigned public address or the Elastic IP address as appropriate).

After deploying a new Conferencing Node, it takes approximately 5 minutes before the node is available for conference hosting and for its status to be updated on the Management Node. Until it is available, the Management Node will report the status of the Conferencing Node as having a last contacted and last updated date of "Never". "Connectivity lost between nodes" alarms relating to that node may appear temporarily.

To look at the steps taken in setting up an example lab deployment of a Management Node in AWS, see https://www.graham-walsh.com/deploying-pexip-in-amazon-web-services-part-1/, and to see an example of deploying a Conferencing Node in AWS, see https://www.graham-walsh.com/deploying-pexip-in-amazon-web-services-part-2/.