Blog entry by Mats Johannesson

Anyone in the world

Omslag


Förutsättning: Konto för GCP.

 

Arbetsuppgift 1: Anslut till konsol för GCP och logga på

1. Öppna webbläsare och skriv in URL: https://console.cloud.google.com och klicka på Enter.

2.  Logga på med dina inloggningsuppgifter.

 

Arbetsuppgift 2: Skapa projekt och verifiera att API är påslaget

1. I konsol, expandera Navigation menu på vänstra sidan och klicka på IAM & Admin – Settings.

Ändra projektnamn


2. I fältet under Project name, skriv in nytt namn för ditt projekt, klicka sedan på SAVE.

3. Återinläs sidan och namnet kommer att förändras.

4. I konsol, expandera Navigation menu på vänstra sidan och klicka på APIs & Services - Dashboard.

Söka efter Kubernetes Engine API


5. Skriv in Kubernetes Engine API i sökrutan och klicka på Enter. Klicka på Kubernetes Engine API i sökresultatet.

Klicka på ENABLE.


6. Klicka på ENABLE (Om API redan är påslaget, kommer det att stå DISABLE). Detta kommer att ta några minuter.


Översikt Kubernetes Engine API


7. När API är påslaget kommer översiktsbild att visas.


Söka efter Google Container Registry


8. Skriv in Google Container Registry API i sökrutan och klicka på Enter. Klicka på Google Container Registry API i sökresultatet.

Verifiera att Google Container Registry är påslaget

9. Verifiera att det står Enabled under Activation status.


Arbetsuppgift 3: Skapa kluster

Aktiver Cloud Shell

1. I den högra övre delen av konsol, klicka på ikon >_ (Activate Cloud Shell).

Cloud Shell Continue

2. I nedre delen av konsol, klicka på Continue. Virtuell maskin med Cloud Shell kommer att skapas och startas.

Öppna Cloud Shell i nytt fönster

3. Istället för att arbeta i den nedre delen av konsolen, klicka på ikon för Open in new window, för att öppna ett nytt fönster med Cloud Shell.

Skapa variabel med information om zon

4. Skriv in följande kommando och klicka på Enter, för att skapa variabel som innehåller namnet för den zon där du kommer att skapa klustret:

 export MIN_ZON=europe-north1-a

För att se vilka zoner som finns tillgängliga, använd följande kommando: 

gcloud compute zones list


Skapa kluster

5. Skriv in följande kommando och klicka på Enter, för att skapa kluster för webbfrontend med två (2) noder:

 gcloud container clusters create webbfronten --zone $MIN_ZON --num-nodes 2


Status när klustret har skapats

6. Efter en stund kommer klustret vara klart, verifiera att STATUS visar RUNNING.

kubectl get version

7. Skriv in följande kommando och klicka på Enter, för att kontrollera version:

kubectl version

Noder är VM

8. Återgå till konsol, expandera Navigation menu på vänstra sidan och klicka på Compute Engine, verifiera att noder som du skapade är virtuella maskiner och att dessa finns i den zon som du specificerade.

Kubernetes cluster

9. Du kan även se klustret genom att expandera Navigation menu på vänstra sidan och klicka på Kubernetes clusters, verifiera att klustret som du skapade tidigare visas.

 

Arbetsuppgift 4: Skapa deplyment för nginx

1. Återgå till fönstret för Cloud Shell.

kubectl create deployment nginx --image:nginx:latest

2. Skriv in följande kommando och klicka på Enter, för att skapa deployment för nginx:

kubectl create deployment nginx --image=nginx:latest

kubectl get pods

2. Deployment består av en pod, för att verifiera detta skriv in följande kommando och klicka på Enter:

kubectl get pods

 

Arbetsuppgift 5: Exponera pod för åtkomst från Internet (LoadBalancer)

kubectl expose deployment nginx

1. I fönstret för Cloud Shell, skriv in följande kommando och klicka på Enter:

kubectl expose deployment nginx --port 80 --type LoadBalancer

LoadBalancer exponeras som en tjänst (services). I .easec:s modul Kubernetes beskrivs de olika kopplingarna som kan göras, bland annat med NodePort.

kubectl get services

2. I fönstret för Cloud Shell, skriv in följande kommando och klicka på Enter, för att se information om extern IP-adress (Kan ta en liten stund!):

kubectl get services

Notera extern IP-adress.

Webbläsare

3. Öppna ny flik i din webbläsare, skriv in extern IP-adress och klicka på Enter. Standardsida för nginx visas.

kubectl scale deployment

4. I fönstret för Cloud Shell, skriv in följande kommando och klicka på Enter, för att skala din deployment:

 kubectl scale deployment nginx --replicas 4

kubectl get pods

5. I fönstret för Cloud Shell, skriv in följande kommando och klicka på Enter, för att se pods:

kubectl get pods


kubectl get pods

6. I fönstret för Cloud Shell, skriv in följande kommando och klicka på Enter, för att se på vilka noder som pods körs på:

 kubectl get pods -o wide

Två pods körs på respektive nod. Lägg märke till att respektive pod har en unik IP-adress.

I verklig miljö så kan du styra hur dessa pods kommer att fördelas. I .easec:s modul Kubernetes tittar vi på detta. Det kommer att komma ett blogginlägg om detta. I Kubernetes är det Scheduler som hanterar detta.

Scheduler

Bilden ovan visar två typer av undersökningar som kan göras (det finns fler), tillgång av resurser och etikett (label).

Kubernetes Engine - Service & Ingress

7. Återgå till konsol, expandera Navigation menu på vänstra sidan och klicka på Kubernetes Engine – Services & Ingress, notera att tjänsten visas i konsol.

Service overview

8. Dubbelklicka på din tjänst, i fliken Overview får du en översiktsbild för din tjänst.

YAML

9. Klicka på fliken YAML för att se konfigurationsfil för din funktion.

 

Arbetsuppgift 6: Städa upp
kubectl delete deployment nginx

1. I fönstret för Cloud Shell, skriv in följande kommando och klicka på Enter:

kubectl delete deployment nginx

kubectl get pods

2. I fönstret för Cloud Shell, skriv in följande kommando och klicka på Enter, för att verifiera att pods är borttagna:

 kubectl get pods

Kommandot resulterar i att inga pods finns.

kubectl delete service nginx

3.cI fönstret för Cloud Shell, skriv in följande kommando och klicka på Enter, för att ta bort tjänst (nginx):

 kubectl delete service nginx

kubectl get services

4. I fönstret för Cloud Shell, skriv in följande kommando och klicka på Enter, för att kontrollera att tjänst är borta:

 kubectl get services

gcloud container clusters delete

5. I fönstret för Cloud Shell, skriv in följande kommando och klicka på Enter, för att ta bort klustret:

 gcloud container clusters delete webbfronten --zone $MIN_ZON

Skriv in ett Y och klicka på Enter för att bekräfta att du vill ta bort.


Verifiera att VM är borta

6. Återgå till konsol, expandera Navigation menu på vänstra sidan och klicka på Compute Engine, verifiera att noder som skapades tidigare är borta.

 

Du är klar!













[ Modified: Saturday, 16 May 2020, 12:23 AM ]

Comments

     

      
    RSS