Skip to content

Civo Setup

Aleks Volochnev edited this page Oct 11, 2021 · 3 revisions

0b - Civo Setup

If you're constrained on resources for a local install, Kubernetes provider Civo is a great alternative since they provide free credits. The following steps are required to obtain the login credentials and setup the Civo Provided Kubernetes cluster.

✅ Step 1:

✅ Step 2:

  • Obtain the API Key (login again if prompted) at Civo security to be able use the civo CLI. Lets call this <YOUR-API-KEY> and looks like below
XXXXXcJdm6e4pGH10YYYYYYUwKtLjZz0gS2RxNsn7V3ZZZZZ

✅ Step 3:

✅ Step 4:

  • Add the API Key as below.
civo apikey add <ANY-NAME> <YOUR-API-KEY> 

✅ Step 5:

  • Make this key current and verify that it was indeed current.
civo apikey current <ANY-NAME>
civo apikey ls
Click to show output 📃

Set the default API Key to be rags +------+---------+ | Name | Default | +------+---------+ | rags | <===== | +------+---------+

✅ Step 6:

  • Create a cluster called k8ssandra, without Traefik where we will install Trafeik and k8ssandra later. We also open up all ports (not recommended but OK for workshop) with the following command.
civo kubernetes create k8ssandra --size=g3.k3s.large --nodes=3 --wait -r Traefik --create-firewall all
Click to show output 📃 The cluster k8ssandra (XX1c2fd7-7ee4-YY84-8fde-703a4853d5ZZ) has been created in 2 min 10 sec

✅ Step 7:

  • Merge the configuration file with the following command
civo kubernetes config k8ssandra --save --merge

✅ Step 8:

Ensure that the current context is pointing to the recently created cluster with the following command.

kubectl config use-context k8ssandra
kubectl get node

Verify that you're using the right context with the following command

kubectl config get-contexts
Click to show output 📃
CURRENT   NAME             CLUSTER          AUTHINFO         NAMESPACE
          docker-desktop   docker-desktop   docker-desktop   
*         k8ssandra        k8ssandra        k8ssandra        
          kind-kind        kind-kind        kind-kind        
          ksr              ksr              ksr              
          minikube         minikube         minikube         default

✅ Step 9:

Get information on the cluster you just created with the following command.

civo kubernetes show k8ssandra
Click to show output 📃
          ID : <DELETED>
        Name : k8ssandra
      Region : FRA1
       Nodes : 3
        Size : g3.k3s.medium
      Status : ACTIVE
     Version : 1.20.0-k3s1
API Endpoint : https://<DELETED>:6443
 External IP : <DELETED>
DNS A record : <DELETED>.k8s.civo.com

Pool (f6b710):
+---------------------------------------+----+--------+------+-----------+------+----------+
| Name                                  | IP | Status | Size | Cpu Cores | Ram  | SSD disk |
+---------------------------------------+----+--------+------+-----------+------+----------+
| k3s-k8ssandra-ccc5423b-node-pool-0d5c |    | ACTIVE |      |         2 | 4096 |       15 |
| k3s-k8ssandra-ccc5423b-node-pool-bb09 |    | ACTIVE |      |         2 | 4096 |       15 |
| k3s-k8ssandra-ccc5423b-node-pool-c07a |    | ACTIVE |      |         2 | 4096 |       15 |
+---------------------------------------+----+--------+------+-----------+------+----------+
Labels:
kubernetes.civo.com/node-pool=<DELETED>
kubernetes.civo.com/node-size=g3.k3s.medium

Next Step

Ready? Now that you have an accessible Kubernetes cluster with the appropriate resources, let's move on! Proceed to the Step I