Installation, updates & backup
High availability with three nodes and behaviour on node failure
What a three-node cluster protects against, what happens on a failure and where the limits are.
What it is for
With three nodes the cluster control plane survives the failure of one node, and the volumes exist as copies on several nodes. If a node fails, Kubernetes restarts the affected services on another node, and the storage attaches a copy of the volume there.
The application services and the data services (MariaDB, Elasticsearch, RabbitMQ) each run as one instance. Until a service is ready again on another node, it is interrupted. Expect a few minutes. This chapter describes how to plan a three-node cluster and what to do after a failure.
Prerequisites
- Three EasyUC appliances in the same network segment, without filtering between them.
- A common internal time source for all three nodes.
- Enough storage per node for the copies of the volumes.
- DNS names for the web interfaces and the CUCM targets that can be moved to another node. There is no shared virtual IP address.
- For Teams: a public address or 1:1 NAT to the node the SBC runs on, and a plan for changing that mapping.
Step by step: build a three-node cluster
Step by step: after a node failure
Fields and options
| Field / action | Meaning and use |
|---|---|
| 1 node | No redundancy in the cluster. Protection comes from virtualisation (hypervisor high availability, snapshots) and from backups. |
| 2 nodes | Does not tolerate a failure of the control plane: etcd needs a majority of the nodes. |
| 3 nodes | The control plane tolerates the failure of one node. This is the recommended size for redundancy. |
| Control plane | Every node is a K3s server with etcd. Pure worker nodes are not offered. |
| Storage | Longhorn keeps copies of the volumes on several nodes. If a node is missing, the Speicher card shows the affected volumes as "eingeschränkt". |
| Application and data services | One instance each. Restart on another node after a failure, with an interruption. |
| Updates | An EasyUC update restarts all services together. The application is unavailable for several minutes, also in a cluster. |
| Not available | Database replication, several instances per service, failover without interruption and updates without interruption. |
Check the result and troubleshoot
- The Knoten card shows three nodes with "Bereit", and the Speicher card reports "alle gesund".
- If a component stays not ready after a failure, the EasyUC card shows the reason on the component. The Reconcile cluster button triggers a new reconciliation.
- If users cannot reach the interface after a failure, the DNS name usually still points to the failed node.
- If no Teams calls arrive after a failure, the NAT mapping still points to the old node. The SBC runs on the node where the ACD media service runs.
- In the console menu the time source can only be activated with one node or exactly three nodes. The signed offline package on the System-Updates page requires exactly three nodes.
- Active calls through the ACD media service or the Teams SBC of the failed node cannot be saved.