Jak ustawić tolerację Kubernetes

Jak ustawić tolerację Kubernetes
Dzisiaj dowiadujemy się o tolerancji w Kubernetes za pomocą prostych i podstawowych przykładów. Ten artykuł ma na celu poznanie podstawowej koncepcji tolerancji w Kubernetes i sposób, w jaki można go wdrożyć w Kubernetes, aby zaplanować kapsuły. Ponieważ tolerancja i skacze współpracują ze sobą, przeprowadzimy krótką dyskusję na temat skażeć, aby zrozumieć całą koncepcję skalę i tolerancji w. Zacznijmy od podstawowych definicji skazania i tolerancji.

Jakie są toleracje i skaże w Kubernetes?

Tolerancja i skażenie w Kubernetes są używane, aby zapewnić, że kapsuły są umieszczone we właściwym węźle. Tolerancja jest zdefiniowana w specyfikacji POD, podczas gdy darni są zdefiniowane w specyfikacji węzła. Po zastosowaniu tolerancji na POD pozwala harmonogramowi zaplanować kapsuły w określonym węźle. Jednak skacze działają przeciwnie do tolerancji. Pozwala węzłowi odrzucić na nim zaplanowanie kapsułek. Krągi mogą być zaplanowane tylko w węźle, jeśli mają zastosowanie do nich tolerację z pasującymi skażonymi.

Kubernetes współpracuje z kapsułkami, klastrami, węzłami, zdarzeniami itp. W niektórych przypadkach, aby zarządzać tymi rzeczami, Kubernetes potrzebuje tolerancji i skażania. Tolerancja to wdrożenie procesu planowania. Krągi muszą być zaplanowane, aby mogły działać poprawnie i mogą mieć wystarczającą ilość zasobów w razie potrzeby, aby wykonać swoją działalność. Toleracje są stosowane do kapsułów przeciwko skazaniu, aby nie przerywać ani zakłóceń podczas pracy.

Scals in Kubernetes umożliwia odrzuceniu kapsułki. Jest stosowany do węzła za pomocą specyfikacji węzła „Nodespec”. Harmonogram nie jest w stanie umieścić kapsułki w węźle, który ma skazę. Jeśli jednak chcesz zaplanować kapsuły w węźle, w którym stosuje się już skażenie, musisz zadeklarować tolerancję.

Tolerancja w Kubernetes umożliwia zaplanowanie kapsułki w węźle, w którym skaza jest już zastosowana. Tolerancja na POD jest stosowana za pomocą specyfikacji Podspec ”. Po zastosowaniu tolerancji na podnośniku z pasującą skazą, harmonogram może łatwo zaplanować kapsuły w określonym węźle.

Teraz przedstawmy scenariusz, który pomoże Ci zrozumieć, w jaki sposób możesz zaimplementować tolerancję na kapsule w Kubernetes. Przed przejściem do sekcji wdrażania upewnij się, że masz wszystkie wymagania wstępne.

Warunek wstępny:

Poniżej przedstawiono rzeczy, których potrzebujesz, aby zaimplementować tolerancję w węźle w Kubernetes:

  • Ubuntu 20.04 lub dowolna inna najnowsza wersja dowolnego systemu Linux
  • Minikube (najnowsza wersja)
  • Zainstalowana maszyna wirtualna w systemie Linux/Unix
  • Narzędzie wiersza poleceń kubectl

Zakładając, że Twój system spełnia wszystkie potrzeby warunków wstępnych, zacznijmy ustawiać tolerancję Kubernetes.

Krok 1: Rozpocznij terminal minikube

Pierwszą rzeczą, którą musisz zrobić, jest założenie terminalu minikube. Aby rozpocząć minikube, używane jest następujące polecenie:

> Minikube start

Po wykonaniu tego polecenia otrzymasz następujące dane wyjściowe w terminalu:

Krok 2: Zdobądź listę aktywnych węzłów

Teraz, gdy rozpoczęliśmy minikube, nasz system jest gotowy do ustawienia tolerancji na PODS w Kubernetes. Zanim ustawym tolerancję na kapsułach, sprawdźmy, ile węzłów i jakiego rodzaju węzłów już mamy. Aby to zrobić, używamy następujące kolejne polecenie:

> kubectl get węzły -o = custom -columns = nodename:.metadane.Imię, Taintkey:.Spec.Scales [*].Klucz, taintValue:.Spec.Scales [*].wartość, tainteffect:.Spec.Scales [*].efekt

Ta instrukcja zawiera wszystkie węzły, które są skażone przez domyślną instalację Kubernetes. Najpierw zobaczmy wyjście tego polecenia. Następnie omawiamy listę węzłów:

Ponieważ nie ma węzłów, które są tworzone i skażone przez domyślną instalację Kubernetes, a także nie utworzyliśmy żadnego węzła, wynik jest . Z poprzedniego wyjścia widzimy, że nie ma węzła. Stąd najpierw tworzymy węzeł, a następnie ustawiamy tolerancję. Aby ustawić tolerancję na kapsule w Kubernetes, najpierw musimy wdrożyć aplikację na klastrze. Następne kilka kroków pokazuje, jak wdrożyć aplikację w klastrze.

Krok 3: Utwórz przestrzeń nazw

Najpierw tworzymy przestrzeń nazw, aby wdrożyć aplikację w klastrze. Tutaj tworzymy aplikację o wartości „frontend” za pomocą następującego polecenia:

> kubectl Utwórz NS Frontend

To polecenie tworzy przestrzeń nazw o wartości „frontend”. Zobacz następujące dane wyjściowe:

Krok 4: Wdrażaj kapsułkę Nginx w przestrzeni nazw

Teraz wdrażaj kapsułkę Nginx w przestrzeni nazw, którą właśnie stworzyliśmy. Używamy następującego polecenia, aby wdrożyć Nginx:

> Kubectl uruchom nginx -image = nginx -namespace frontend

To wdraża aplikację na klastrze bez konfiguracji tolerancji w specyfikacji wdrażania aplikacji. Korzystając z polecenia Kubectl, wdrażamy kapsułkę Nginx w przestrzeni nazw:

Krok 5: Zdobądź listę kapsułek

Teraz sprawdźmy utworzone kapsuły, aby zobaczyć ich statusy. Dane polecenie zawiera również wszystkie strąki i ich statusy:

> kubectl get Pods -n Frontend

Ponieważ utworzyliśmy tylko Nginx, to polecenie powinno wymienić ten kapsułkę ze swoim statusem. Zobacz następujące dane wyjściowe:

Krok 6: Przeanalizuj zdarzenia Kubernetes

Teraz przeanalizujmy zdarzenia w Kubernetes, abyśmy mogli odpowiednio ustawić tolerancję na kapsułkach. Używamy następującego polecenia Kubectl, aby uzyskać listę zdarzeń w Kubernetes:

> kubectl zdobądź wydarzenia -n frontend

Wymienia to wszystkie zdarzenia związane z wartością front-end wraz z ich właściwościami, takimi jak typ, rozum, obiekt i wiadomość. Zobacz podaną listę w następującym wyjściu:

Jak widać z poprzedniego wyjścia, POD Nginx jest zaplanowany z konkretną tolerancją. Właściwość „Wiadomość” pokazuje listę działań wykonywanych wzdłuż procesu.

Krok 7: Sprawdź status PODS

Ostatnim krokiem jest ponowne sprawdzenie statusu kapsułki, który utworzyliśmy wcześniej, aby upewnić się, że jest on pomyślnie zaplanowany na określonym i poprawnym węźle. Aby to zrobić, używamy następującego polecenia Kubectl:

> kubectl get Pods -n Frontend

Jak widać w poprzednim wyjściu, kapsuł.

Wniosek

W tym przewodniku badaliśmy skalę i tolerancję. Dowiedzieliśmy się o podstawowym działaniu skażeć i tolerancji. Następnie wdrożyliśmy tolerancję na podnośniku. Za pomocą prostego przykładu nauczyliśmy się ustawić tolerancję na węźle w Kubernetes.