Multi-Node Configuration: Setting up and Installing

Multi-Node Configuration: Setting up and Installing

The following describes the steps to set up and install Resonate RFID Reader Management in a multi-node configuration. You should perform them as
root
or a user with
sudo
privileges.
When running the online installer, you are prompted for your username and password to access the Zebra Artifactory Repository. As your password, pass the identity token that you generated in Creating an Identity Token.
  1. Ensure that all systems intended for the cluster meet the prerequisites for a multi-node configuration, especially ensuring that their K8s ports permit access to and from the other nodes in the cluster. Refer to Preparing for Installation.
  2. On all the systems, extract the files from the setup tar file:
    • For the online installer:
      tar trifecta-installer-k8s-<VERSION>.<BUILD NUMBER>.tar.gz
    • For the offline installer:
      tar trifecta-installer-k8s-<VERSION>.<BUILD NUMBER>-offline.tar.gz
    This extracts
    setup.sh
    ,
    trifecta.tar
    , and
    lb.yml
    .
  3. Primary Node - Initial Setup
  4. On the primary node, run the following command:
    sudo -E ./setup.sh -m <N> -b <DEVICE> [-i <IP>]
    Replace
    <N>
    with the number of nodes intended for the cluster and
    <DEVICE>
    with the path of the block device for storage. If you do not have a load balancer (bare metal), use the -i option and replace
    <IP>
    with a unique external IP address to use for the cluster, on the same subnet as the nodes, and with a DNS record; this enables the
    metalLB
    load balancer. For example, to set up a 3-node cluster with free storage on /dv/nvme1n1 and without a preexisting load balancer, using 10.10.10.13 as the IP of the
    metalLB
    load balancer, the command would be:
    sudo -E ./setup.sh -m 3 -b /dev/nvme1n1 -i 10.10.10.13
    For additional information and options, refer to setup.sh.
    This command ensures that the system meets prerequisites, it creates the user
    trif-user
    , and it extracts the installation files (including
    install.sh
    ) from
    trifecta.tar
    into the
    trif-user
    's home directory (/opt/zebra/trifecta). It displays a success message when it completes successfully.
  5. Secondary Nodes - Setup
  6. On each secondary node, run the following command:
    sudo -E ./setup.sh --microk8s-only
    This installs only microk8s on the system.
  7. On the primary node, run the following command as many times as there are secondary nodes:
    sudo -E /snap/bin/microk8s add-node
    This command returns a token command to run on one of the secondary nodes. You cannot reuse this token command on all secondary nodes; each node requires a unique one. Take note of the token command that each call returns.
  8. On each of the secondary nodes, run a different token command from the previous step (obtained from the primary node). It should look similar to the following:
    sudo -E /snap/bin/microk8s join <IP OR HOSTNAME>:25000/<TOKEN>
    There is no need to wait for a node to join the cluster before adding the next node. You can add them in parallel.
  9. On each secondary node, after it joins the cluster, run the following command to set up its storage:
    sudo -E ./setup.sh --storage-only -b <DEVICE>
    Replace <DEVICE> with the path of the block device of the secondary node. This generally resembles
    /dev/
    which might be
    /dev/sdb
    ,
    /dev/nvme1n1
    , or something similar.
  10. On the primary node, run the following command to finalize the setup of the cluster:
    sudo -E ./setup.sh --finalize
  11. Installation
  12. On the primary node, switch users to the created user
    trif-user
    :
    sudo -E su - trif-user
  13. Run the following command to begin the installation:
    ./install.sh -h <RESONATE SERVER FQDN> -m prod-multi-node --smtp-server <SMTP SERVER FQDN/IP> --admin-email <EMAIL ADDRESS>
    Replace
    <RESONATE SERVER FQDN>
    with the external hostname (FQDN) of the server (cluster),
    <SMTP SERVER FQDN/IP>
    with the FQDN or IP address of the SMTP server, and <EMAIL ADDRESS> with the administrator's email address for receiving notifications. If using your own load balancer, set the FQDN of the Resonate server to the FQDN of the load balancer. For additional script information and options, refer to install.sh.
    The installation sets up the necessary Kubernetes resources (such as pods, services, and deployments) required for Resonate RFID Reader Management to operate. It can take anywhere from 10 to 20 minutes. It displays
    Installation complete
    when it completes successfully and Resonate RFID Reader Management is operational.
  14. Verify that Resonate RFID Reader Management is operational. Refer to Validating That Resonate Is Operational.
When
Resonate
is installed and operational, its services are running; you can now access and use the software through the Resonate web interface. You should receive an email at the specified administrator address with a web link to the newly installed Resonate RFID Reader Management platform (at the FQDN that you provided during installation), requesting you to set the administrator’s password.
If your SMTP server uses a custom Certificate Authority (CA), you must first configure Keycloak to trust the certificate on your SMTP server before you receive the email; for information, refer to Keycloak and Using a SMTP Server with Custom CA.