Blog entry by Mats Johannesson

Anyone in the world


Miljö

Del 1: Klientverktyg


På klientdator kommer två verktyg att behövas installeras, Cloud Flare SSL för att generera de olika certifikat som behövs och kubectl för att hantera klustret. Dessa verktyg installeras på Easec-Linux8.

 

Arbetsuppgift 1: Installera cfssl

1. Anslut till Easec-Linux8 och logga på som easec med lösenordet Pa$$w0rd.


Installation av cfssl

2. På Easec-Linux8 öppna terminalfönstret (ctrl+alt+t) och skriv in följande kommando och klicka på Enter:

          wget https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 && wget https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64

3. I terminalfönstret skriv in följande kommando och klicka på Enter, för att sätta exekveringsrättigheter:

           chmod +x cfssl*

Flytt av binärer

4. I terminalfönstret skriv in följande kommando och klicka på Enter, för att flytta binärer till /usr/local/bin:

            sudo mv cfssl_linux-amd64 /usr/local/bin/cfssl

            Ange Pa$$w0rd som lösenord för sudo.

5. I terminalfönstret skriv in följande kommando och klicka på Enter, för att flytta binärer till /usr/local/bin:

             sudo mv cfssljson_linux-amd64 /usr/local/bin/cfssljson

cfssl version

6. I terminalfönstret skriv in följande kommando och klicka på Enter, för att verifiera installationen:

             cfssl version


Arbetsuppgift 2: Installera kubectl

Installera kubectl

1. I terminalfönstret skriv in följande kommando och klicka på Enter, för att ladda ner binärer för kubectl:

              wget https://storage.googleapis.com/kubernetes-release/release/v1.17.3/bin/linux/amd64/kubectl

 2. I terminalfönstret skriv in följande kommando och klicka på Enter, för att sätta exekveringsrättigheter:

              chmod +x kubectl*

3. I terminalfönstret skriv in följande kommando och klicka på Enter, för att flytta binärer till /usr/local/bin:

              sudo mv kubectl /usr/local/bin

kubectl version

4. I terminalfönstret skriv in följande kommando och klicka på Enter, för att verifiera installationen:

              kubectl version

              Felmeddelande om att verktyget inte kan ansluta till server, kan du ignorera. Det finns ingen server eller servrar i detta läge!


Del 2: Certifikat

Ett antal certifikat kommer att behöva genereras.

Arbetsuppgift 1: Skapa Certificate Authority och generera certifikat

Konfiguration av CA

1. I terminalfönstret, skriv in följande kommando och klicka på Enter, för att skapa konfiguration för CA (Certificate Authority):

               nano ca-config.json

2. I fönstret med nano, skriv in följande:

               {

                   "signing": {

                      "default": {

                         "expiry": "8760h"

                       },

                       "profiles": {

                           "kubernetes": {

                               "usages": ["signing", "key encipherment", "server auth", "client auth"],

                               "expiry": "8760h"

                        }

                     }

                   }

                 }

Klicka på ctrl+x, skriv in ett J och klicka på Enter för att spara filen. 

nano ca-csr.json

3. I terminalfönstret, skriv in följande kommando och klicka på Enter, för att skapa certifikatbegäran för CA:

                  nano ca-csr.json

4. I fönstret med nano, skriv in följande:

                  {

                     "CN": "Kubernetes",

                     "key": {

                     "algo": "rsa",

                     "size": 2048

                   },

                   "names": [

                   {

                      "C": "SE",

                      "L": "Lomma",

                      "O": "Kubernetes",

                      "OU": "CA",

                      "ST": "easec"

                     }

                   ]

                  }

 Klicka på ctrl+x, skriv in ett J och klicka på Enter för att spara filen.

cfssl gencert

5. I terminalfönstret, skriv in följande kommando och klicka på Enter, för att skapa certifikat och privat nyckel:

                  cfssl gencert -initca ca-csr.json | cfssljson -bare ca

ls -la ca*

6. I terminalfönstret, skriv in följande kommando och klicka på Enter, för att verifiera att ca-key.pem och ca.pem har blivit genererade:

                   ls -la ca*

7. I terminalfönstret, skriv in följande kommando och klicka på Enter, för att skapa certifikatbegäran för etcd-kluster:

                   nano kubernetes-csr.json

nano kubernetes-csr.json

8. I fönstret med nano, skriv in följande:

                 {

                     "CN": "kubernetes",

                     "key": {

                     "algo": "rsa",

                     "size": 2048

                   },

                   "names": [

                   {

                      "C": "SE",

                      "L": "Lomma",

                      "O": "Kubernetes",

                      "OU": "Kubernetes",

                      "ST": "easec"

                     }

                   ]

                  }

 

Klicka på ctrl+x, skriv in ett J och klicka på Enter för att spara filen.


Arbetsuppgift 2: Skapa certifikat och privat nyckel

cfssl gencert

1. I terminalfönstret, skriv in följande kommando och klicka på Enter efter varje \ och efter sista raden:

                    cfssl gencert \

                    -ca=ca.pem \

                    -ca-key=ca-key.pem \

                    -config=ca-config.json \

                    -hostname=192.168.1.21,192.168.1.22,192.168.1.23, 192.168.1.27,127.0.0.1,kubernetes.default \

                    -profile=kubernetes kubernetes-csr.json | \

                    cfssljson -bare kubernetes

ls -la k*

2. I terminalfönstret, skriv in följande kommando och klicka på Enter, för att verifiera att kubernetes-key.pem och kubernetes.pem har skapats:

                     ls -la k*



[ Modified: Monday, 16 March 2020, 8:31 PM ]
 

  
RSS