Jak tworzyć kontenery init w Kubernetes

Jak tworzyć kontenery init w Kubernetes
Ten samouczek zawiera przegląd kontenerów init w Kubernetes. Kubernetes działa dobrze z kontenerami, co jest powodem, dla którego stał się najważniejszą preferencją programistów. Kubernetes pozwala zarządzać wszystkimi kontenerami w jednym miejscu za pomocą jednego panelu sterowania. W tym artykule omówimy, jakie kontenery są w Kubernetes i będziemy skupić się na kontenerach init w Kubernetes. Za pomocą przykładów pokażemy, w jaki sposób możesz łatwo utworzyć kontener init w Kubernetes.

Co to jest pojemnik w Kubernetes?

Kontener to kompletny pakiet, który zawiera wszystko, co wymagane do wykonania aplikacji. Jest to obraz gotowego do uruchomienia pakietu oprogramowania, który umożliwia aplikację wykonywanie pożądanej funkcji. Zawiera kod, biblioteki systemowe, niezbędne wartości ustawień domyślnych i wszelkie inne wymagania dotyczące czasu wykonywania. Musisz kodować kontener tylko raz i później, można go wykonać w dowolnym miejscu. Jest niezależny od platformy, więc nie będziesz mieć żadnych problemów podczas uruchamiania aplikacji na dowolnej platformie za pomocą kontenerów. Kontenery mogą wirtualizować system operacyjny, który umożliwia uruchamianie aplikacji z dowolnego miejsca od platformy lub prywatnego centrum danych, a nawet do chmury publicznej.

Co to jest pojemnik init w Kubernetes?

Pojemnik init w Kubernetes to metoda wykonywania pierwszej procedury inicjalizacji uruchomienia w Kubernetes Pod. Jest to lekki wyspecjalizowany pojemnik, który zawsze działa przed aplikacją lub innym głównym kontenerem, który działa w kapsule. Zawiera skrypt konfiguracyjny i inne narzędzia, które na ogół nie są obecne na obrazie aplikacji. Jest zwykle zdefiniowany w specyfikacji POD wraz z tablicą kontenerów. Podstawowym użyciem kontenera inicjowego polega na ładowaniu Appian z sterownikami JDBC lub RDBMS, które nie są zawarte w obrazie Docker WebApp. Można go użyć do opóźnienia lub blokowania aplikacji lub innych kontenerów, aby rozpocząć, gdy trzeba czekać na zakończenie skryptu bootstrap lub dostępnych zasobów i zależności.

Jak utworzyć kontener init w środowisku Kubernetes?

Gdy wiele kontenerów aplikacji działa w POD, więcej niż jeden kontener init może również działać w jednym kapsule. i wszyscy ukończą wykonanie, zanim jakikolwiek kontener aplikacji rozpocznie wykonanie. Kontenery initowe działają w sekwencji, gdy jeden kontener init zakończy wykonanie, a następnie następny rozpoczyna wykonywanie, a gdy wszystkie kontenery init wykonują wykonanie, dowolny kontener aplikacji rozpoczyna wykonanie.

Ponadto, jeśli wykonanie jakiegokolwiek kontenera inicjowego nie powiedzie się, wówczas. Teraz utwórzmy kontener init w Kubernetes. Ale wcześniej upewnij się, że system spełnia wszystkie podstawowe potrzeby, aby utworzyć kontener init. Aby utworzyć kontener init, musisz mieć:

  • Ubuntu 20.04 lub inna najnowsza wersja
  • Narzędzie wiersza poleceń kubectl
  • Minikube klaster

Teraz przejdźmy do implementacji.

Krok # 1: Rozpocznij klaster minikube

Musisz założyć klaster minikube, aby użyć środowiska Kubernetes do uruchamiania poleceń Kubectl. Aby uruchomić klaster minikube, będziemy używać następującego polecenia:

> Minikube start

To obudzi klaster minikube i pozwoli ci uruchomić polecenia Kubectl w terminalu.

Krok 2: Utwórz plik konfiguracyjny YAML

Teraz rozpoczął się proces tworzenia kontenera init. Pierwszą i najważniejszą rzeczą, której musisz utworzyć kontener init, jest utworzenie pliku konfiguracyjnego YAML. Możesz użyć polecenia „Nano”, aby utworzyć nowy plik YAML lub otworzyć już istniejący plik YAML zawierający szczegóły konfiguracji. Polecenie podane poniżej pozwoli ci utworzyć plik YAML o wybranej nazwie:

> Nano Podin.Yaml

Po utworzeniu pliku YAML możesz zapisać w nim szczegóły konfiguracji, jak ten podany w migawce poniżej:

Krok # 3: Wdrażaj plik YAML

Teraz, gdy nasz plik konfiguracyjny jest gotowy, wdrażajmy go za pomocą polecenia Kubectl Zastosuj. Poniższe polecenie pozwoli Ci uruchomić POD w pliku konfiguracyjnym, który właśnie utworzyliśmy:

> Kubectl Zastosuj -f podin.Yaml

Dane wyjściowe wyraźnie pokazuje, że utworzono POD o nazwie MyApp-pod.

Krok # 4: Sprawdź status POD

Teraz sprawdźmy status kapsułki za pomocą polecenia podanego poniżej:

> kubectl get -f podin.Yaml

To po prostu pokazuje nazwę, gotowy, status, restart i parametry wiekowe kapsuły. Jeśli chcesz spojrzeć na szczegółowy status POD, możesz użyć następujących poniżej:

> kubectl Opisz -f podin.Yaml

Tutaj możesz zobaczyć status w detalu, który mówi ci, kiedy zaczął się kapsuł. dając szczegółowy obraz statusu kapsuły.

Krok # 5: Sprawdź dzienniki kontenera init

Ze wyjścia podanego w poprzednim kroku widać, że utworzona przez nas kapsułka jest uruchomiona. Teraz, jeśli chcesz zobaczyć dzienniki kontenera init, który działa na tym POD, możesz użyć polecenia podanego poniżej:

> Kubectl dzienniki myApp-pod -c init-myservice

Nazwa kontenera init to „INIT-MYSERVICE”, o której wspominamy specjalnie, aby sprawdzić jego dziennik. Teraz, kiedy wykonasz to polecenie, otrzymasz podobne dane wyjściowe do podanego poniżej:

Wniosek

W tym artykule dowiedzieliśmy się o podstawowej koncepcji tego, czym są pojemniki, jednocześnie koncentrując się na kontenerze init w Kubernetes. Pojemnik init to lekki wyspecjalizowany kontener, który wykonuje się przed uruchomieniem jakiegokolwiek innego kontenera w POD. Jego funkcje czasami nakładają się na uruchamianie i sondy gotowości. Te sondy mogą być używane do wykonywania aktywności, takiego jak blokowanie lub opóźnienie uruchamiania aplikacji, dopóki nie zostanie spełniony określony warunek. Wykazując prosty przykład, nauczyliśmy się tworzyć kontener init w Kubernetes.