An overview of your cluster is available under the "Cluster Management" tab in the admin console.
Some key pieces of information:
- Nodes in the cluster.
- CPU, RAM, and disk availability on each node.
Nodes don't need to be of the same size.
Here, you can also find instructions to add a new node. You can also drain nodes.
If you want more processing power, you can scale your instance vertically by using a more powerful machine. But it is not always practical because it needs to be done before the installation, and it also means a big machine will always be running.
Usually, a better solution is to scale horizontally by adding worker nodes to the cluster. This solution is more flexible and allows to add and remove processing capabilities when needed. A common usecase is the initial historical scan. If you have a lot of repositories, adding more cpus can speed up this process a lot.
Note: This procedure does not bring high availability, we are only adding worker nodes, not master.
Here are the steps to add a worker node:
- Go to the admin console. Go to the "Cluster Management" tab. Click on "Add node". It will show you a command to a node. This command is valid only for 24 hours.
You can also generate this command through the CLI and the master node:
ubuntu@ip-10-103-77-9:~$ curl -sSL https://kurl.sh/gitguardian-seal-prod/tasks.sh | sudo bash -s join_token
You should have this kind of output:
Node join commands expire after 24 hours. To generate new node join commands, run curl -sSL https://kurl.sh/gitguardian-seal-prod/tasks.sh | sudo bash -s join_token on this node. To add worker nodes to this installation, run the following script on your other nodes: curl -sSL https://kurl.sh/gitguardian-seal-unstable/join.sh | sudo bash -s kubernetes-master-address=<master-address>:6443 kubeadm-token=<token> kubeadm-token-ca-hash=sha256:<token-ca-hash> kubernetes-version=1.19.3 docker-registry-ip=10.96.0.35
- Connect with SSH to your other node and run your command.