Övning – Bevisa mikrotjänstresiliens i Kubernetes

Slutförd

En av fördelarna med Kubernetes är stödet för deklarativ konfigurationshantering. De tjänster som du definierar i konfigurationsfilerna behålls till varje pris.

Det innebär att Om det uppstår ett fel startar Kubernetes automatiskt om de tjänster som kördes före felet.

Nu ska vi se hur den här motståndskraften storefrontend fungerar genom att ta bort podden och sedan verifiera att Kubernetes startade om den.

  1. I TERMINAL på storefrontend Här är ett exempel på utdata:

    @user-name /workspaces/eShopLite % kubectl get pods
    
    NAME                             READY   STATUS    RESTARTS   AGE
    productsbackend-7445bdb5c9-pnpk6 1/1     Running   0          31m
    storefrontend-5b6cc765c4-hjpx4   1/1     Running   0          63m
    
  2. Ta nu bort storefrontend podden med hjälp kubectl delete av kommandot . Du måste ange poddens fullständiga namn, inklusive den slumpmässiga strängen.

    kubectl delete pod storefrontend-5b6cc765c4-hjpx4
    

    Du får ett meddelande omedelbart om att podden har tagits bort.

  3. Eftersom Kubernetes underhåller systemtillståndet som deklarerats i konfigurationsfilerna startar det omedelbart en annan poddinstans. Du kan kontrollera det genom att köra kubectl get pods.

    @user-name /workspaces/eShopLite % kubectl get pods
    
    NAME                             READY   STATUS    RESTARTS   AGE
    productsbackend-7445bdb5c9-pnpk6 1/1     Running   0          31m
    storefrontend-5b6cc765c4-vwmv8   1/1     Running   0          7s
    

    Observera att den slumpmässiga strängen storefrontend efter namnet ändras, vilket indikerar att podden är en ny instans. Även AGE-värdet är betydligt mindre.

I den här övningen har du lärt dig hur Kubernetes automatiskt upprätthåller deklarerat systemtillstånd, även om det uppstår ett fel.

Kontrollera dina kunskaper

1.

Vad är orsaken till att Kubernetes startar om poddar när de misslyckas?