Multiple Node Installation (High Availability)

Prerequisites

Firewall Rules for Internal Communication
Note: We recommend running the K3s nodes in a 10Gb low latency private network for the maximum security and performance.
K3s needs the following ports to be accessible (Inbound and Outbound) by all other nodes running in the same cluster:
Table 1.
Protocol Port Description
TCP 6443 Kubernetes API Server
UDP 8472 Required for Flannel VXLAN
TCP 2379-2380 embedded etcd
TCP 10250 metrics-server for HPA
TCP 9796 Prometheus node exporter
TCP 80 Private Docker Registry
Note: The ports above should not be publicly exposed as they will open up your cluster to be accessed by anyone. Make sure to always run your nodes behind a firewall/security group/private network that disables external access to the ports mentioned above.
All nodes in the cluster must have:
  1. Domain Name Service (DNS) configured
  2. Network Time Protocol (NTP) configured
  3. Fixed private IPv4 address
  4. Globally unique node name (use --node-name when installing K3s in a VM to set a static node name)

Firewall Rules for External Communication

The following port must be publicly exposed in order to allow users to access Forcepoint DSPM:
Table 2.
Protocol Port Description
TCP 443 FDC backend

The user must not access the K3s nodes directly, instead, there should be a load balancer sitting between the end user and all the K3s nodes (master and worker nodes):

The load balancer must operate at Layer 4 of the OSI model and listen for connections on port 443. After the load balancer receives a connection request, it selects a target from the target group (which can be any of the master or worker nodes in the cluster) and then attempts to open a TCP connection to the selected target (node) on port 443.

The load balancer must have health checks enabled which are used to monitor the health of the registered targets (nodes in the cluster) so that the load balancer can send requests to healthy nodes only.

The recommended health check configuration is:
  • Timeout: 10 seconds
  • Healthy threshold: 3 consecutive health check successes
  • Unhealthy threshold: 3 consecutive health check failures
  • Interval: 30 seconds
  • Balance mode: round-robin

VM Count

At least 4 machines are required to provide high availability of the Forcepoint platform. The HA setup supports a single-node failure.