...
K3s needs the following ports to be accessible by all other nodes running in the same cluster:
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 |
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. |
...
The following port must be publicly exposed in order to allow users to access Synergy or Focus product:
Protocol | Port | Description |
---|---|---|
TCP | 443 | Focus/Synergy 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):
...
Code Block |
---|
curl -sfL https://assets.master.k3s.getvisibility.com/k3s/k3s.sh | INSTALL_K3S_VERSION="v1.2426.910+k3s2k3s1" K3S_KUBECONFIG_MODE="644" sh -s - server --node-name=master1 --cluster-init |
...
Code Block |
---|
curl -sfL https://assets.master.k3s.getvisibility.com/k3s/k3s.sh | K3S_TOKEN=SHARED_SECRET INSTALL_K3S_VERSION="v1.2426.910+k3s2k3s1" K3S_KUBECONFIG_MODE="644" sh -s - server --node-name=master2 --server https://<ip or hostname of master1>:6443 |
...
Code Block |
---|
curl -sfL https://assets.master.k3s.getvisibility.com/k3s/k3s.sh | K3S_TOKEN=SHARED_SECRET INSTALL_K3S_VERSION="v1.2426.910+k3s2k3s1" K3S_KUBECONFIG_MODE="644" sh -s - server --node-name=master3 --server https://<ip or hostname of master1>:6443 |
...
Code Block |
---|
curl -sfL https://assets.master.k3s.getvisibility.com/k3s/k3s.sh | K3S_TOKEN=SHARED_SECRET INSTALL_K3S_VERSION="v1.2426.910+k3s2k3s1" K3S_KUBECONFIG_MODE="644" sh -s - agent --node-name=worker1 --server https://<ip or hostname of any master node>:6443 |
Joining additional worker nodes
You may create as many additional worker nodes as you want.
...
Code Block |
---|
curl -sfL https://assets.master.k3s.getvisibility.com/k3s/k3s.sh | K3S_TOKEN=SHARED_SECRET INSTALL_K3S_VERSION="v1.2426.910+k3s2k3s1" K3S_KUBECONFIG_MODE="644" sh -s - agent --node-name=workerX --server https://<ip or hostname of any master node>:6443 |
...
Code Block |
---|
kubectl get nodes |
Register HA K3s Cluster to Rancher
You may run the registration command that you generated using Rancher UI or through license manager. You should see all master and worker nodes in your cluster through the Machine Pools
on the Rancher dashboard:
...
Go to Apps > Charts and install the GetVisibility Monitoring Helm chart:
Install into Project: Default
Click on
High Available
and set:Prometheus replicas
to 2Loki replicas
to 2
Configure Fleet labels
Go to the global menu Continuous Delivery > Clusters and click on Edit config for the cluster:
For Synergy: add 3 labels
product=synergy
environment=prod
high_available=true
and press Save.For Focus: add 3 labels
product=focus
environment=prod
high_available=true
and press Save.For Enterprise: add 3 labels
product=enterprise
environment=prod
high_available=true
and press Save.