To deploy the Flow Collector in a redundant configuration
Purpose
The following procedure is used to deploy the Flow Collector in either a DR or an HA+DR configuration. This is required when NSP is deployed in either of the same configurations.
Steps
1 |
Perform To install an NSP cluster, stopping at Step 117. |
2 |
Execute the following command on site-A (active) to identify nodes that can be tainted: kubectl get nodes --show-labels --selector='!etcd,!storage' |
3 |
Add the taint to the desired nodes listed in the output of Step 2 by executing: kubectl taint nodes <site-A-nodeName-A> fc=present:NoSchedule kubectl taint nodes <site-A-nodeName-B> fc=present:NoSchedule Note: The replica number determines the number of nodes to be tainted in this step. In a DR configuration, the replica number is 1. In an HA+DR configuration, the replica number is 2. The above example would be used in an HA+DR configuration to add the taint to 2 nodes. |
4 |
Perform Step 118 from To install an NSP cluster. Note: The flow collector pods will remain in a ‘pending’ state. |
5 |
Ensure the NSP cluster can be accessed from the deployer VM. On the NSP deployer host, enter the following: export KUBECONFIG=/opt/nsp/nsp-configurator/kubeconfig/nsp_kubeconfig |
6 |
Verify that the FC pod(s) is in a ‘pending’ state. Execute: kubectl get pods -A |
7 |
Perform the following to add tolerations:
|
8 |
Execute: kubectl rollout restart daemonset -n nsp-psa-restricted nspos-fluentd-belk-fluentd-daemonset kubectl rollout restart daemonset -n metallb-system metallb-speaker kubectl rollout restart statefulset -n nsp-psa-restricted flow-collector-sys |
9 |
Verify that the FC pod starts in the cluster. Execute: kubectl get pods -A |
10 |
Repeat Step 1 through Step 9, specifying site-B (standby) instead of site-A (active) throughout. Note: In the case of an upgrade or patch that requires the nspdeployer to be re-run to re-configure NSP, the pod level tolerations must be re-applied by executing Step 7 through Step 9 on both site-A (active) and site-B (standby). |
11 |
If the nspdeployer is re-run to uninstall the NSP, the taints must be removed. Execute: kubectl taint nodes <site-A-nodeName-A> fc=present:NoSchedule- kubectl taint nodes <site-A-nodeName-B> fc=present:NoSchedule- These commands must also be executed on site-B (standby). End of steps |