Cvičení – ověření odolnosti mikroslužeb v Kubernetes

Dokončeno

Jednou z výhod Kubernetes je podpora deklarativní správy konfigurace. Služby, které definujete v konfiguračních souborech, se zachovají za všechny náklady.

To znamená, že pokud dojde k selhání, Kubernetes automaticky restartuje služby spuštěné před selháním.

Pojďme se podívat na tuto odolnost v akci odstraněním podu storefrontend a následným ověřením, že se Kubernetes restartoval.

  1. Nejprve v TERMINÁLU v codespace spusťte kubectl get podsa poznamenejte si název, včetně náhodného řetězce, podu storefrontend . Tady je příklad výstupu:

    @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. Teď pomocí storefrontend příkazu odstraňte pod kubectl delete . Musíte zadat úplný název podu, včetně náhodného řetězce.

    kubectl delete pod storefrontend-5b6cc765c4-hjpx4
    

    Okamžitě se zobrazí zpráva, že pod byl odstraněn.

  3. Vzhledem k tomu, že Kubernetes udržuje stav systému deklarovaný v konfiguračních souborech, okamžitě spustí další instanci podu. Můžete to ověřit spuštěním kubectl get podspříkazu .

    @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
    

    Všimněte si, že se změní náhodný řetězec za storefrontend názvem, který označuje, že pod je nová instance. Hodnota AGE je také výrazně nižší.

V tomto cvičení jste zjistili, jak Kubernetes automaticky udržuje deklarovaný stav systému, i když dojde k selhání.

Kontrola znalostí

1.

Jaký je důvod, proč Kubernetes restartuje pody, když selžou?