Kubectl otrzymaj listę przestrzeni nazw

Kubectl otrzymaj listę przestrzeni nazw
Kubernetes pozwala na różne wirtualne klastry obsługiwane przez pojedynczy klaster fizyczny znany jako przestrzenie nazw w Kubernetes. W Kubernetes obiekt przestrzeni nazw zasadniczo dzieli pojedynczy klaster na wiele klastrów wirtualnych. Oprócz tego umożliwia podział zasobów fizycznych na logicznie nazwane grupy i pozwala klastrze Kubernetes na dzielenie się zasobami z różnymi grupami.

W tym artykule zostaną omówione możliwości, ograniczenia, sposób konfigurowania przestrzeni nazw i jak uzyskać listę przestrzeni nazw. Zacznijmy od definicji nazw nazw Kubectl.

Co to są przestrzenie nazw Kubectl?

Przestrzeń nazw Kubectl to obiekt w Kubernetes, który dzieli pojedynczy fizyczny klaster Kubernetes na wiele klastrów wirtualnych. Każdy obiekt przestrzeni nazw definiuje limity dla nazwisk, które są z nim dołączone. Innymi słowy, każdy obiekt przestrzeni nazw w klastrze ma unikalną tożsamość, która jest przedmiotem fundamentalnym i służy do oddzielania i administrowania klastrami Kubernetes.

Przestrzeni nazw Kubectl są używane do logicznego rozróżniania i alokacji zasobów na określony program, zespół, aplikacja, grupa użytkowników lub osób fizycznych. Wydajność zasobów można zwiększyć za pomocą przestrzeni nazw, ponieważ jeden klaster jest używany do wielu kolekcji obciążeń.

Teraz przejdźmy naprzód i zobaczmy, jak uzyskać listę przestrzeni nazw i jakie warunki wstępne należy spełnić.

Warunek wstępny:

Aby użyć obiektu nazw nazw Kubernetes, klaster minikupu musi zostać zainstalowany. W naszym przypadku Ubuntu 20.04 służy do uruchamiania poleceń obiektów przestrzeni nazwy. Do uruchomienia terminala klastra minikube są używane dwie różne techniki. Pierwszą techniką jest dostęp do terminalu za pomocą paska aplikacji systemu operacyjnego. Drugą techniką jest dostęp do okna terminala poprzez naciśnięcie Ctrl+Alt+T.

Po uzyskaniu dostępu do okna terminala uruchom minikube za pomocą polecenia minikube start. Po wykonaniu polecenia „Minikube Start” wyświetlone zostanie następujące dane wyjściowe:

Teraz zobaczmy, jak i kiedy używać przestrzeni nazw Kubectl.

Jak używać przestrzeni nazw Kubectl?

Obiekt przestrzeni nazw Kubernetes podaje mechanizm segregacji grupy zasobów w jednym klastrze. Nazwa każdego zasobu musi być unikalna w przestrzeni nazw, ale nie w przestrzeni nazw. Jednak zakres przestrzeni nazw ma dotyczy tylko obiektów przestrzeni nazw, takich jak usługi i wdrożenia, ale nie dla obiektów całego klastra, takich jak objętości trwałe, węzły, klasy pamięci itp.

Aby wymienić istniejące przestrzenie nazw w poleceniu klastra „Kubectl GET GET STAPE” jest używany. Po wykonaniu polecenia wygenerowane zostanie następujące dane wyjściowe:

Zauważ, że obiekt Kubernetes zaczyna się od czterech początkowych przestrzeni nazw: domyślnie, kare-węzeł Kube, Kube-Public i Kube-System.

Domyślny: Przestrzeń nazw dla obiektów bez żadnego innego obiektu.

Kube-Node Lase: Posiada obiekt dzierżawy, który jest powiązany ze wszystkimi węzłami.

Kube-public: Jest tworzony automatycznie i może być czytelny zarówno przez użytkowników uwierzytelnionych, jak i nieautentyczonych.

Kube-system: Jest tworzony przez system Kubernetes.

Jak ustawić przestrzeń nazw na żądanie?

Flaga „-namesapace” służy do ustawienia przestrzeni nazw dla żądania. Oto kod do ustawienia przestrzeni nazw dla żądania:

Po uruchomieniu polecenia „Kubectl uruchom nginx” serwer rzucił błąd, ponieważ kapsułka Nginx już istnieje. Jednak uruchommy polecenie GET POD, aby uzyskać przestrzenie nazw. Polecenie „Kubectl Get Pods” jest wykonywane, aby uzyskać przestrzenie nazw. Poniżej możesz zobaczyć wynik polecenia GET PODS.

Jak ustawić preferencje dla nazw nazw Kubectl?

Przestrzeni nazw dla wszystkich kolejnych poleceń Kubectl można na stałe zapisać za pomocą polecenia set-context. Oto polecenie ustawienia preferencji przestrzeni nazw „domyślnych”. Zauważ, że „-namespace = domyślnie” jest dostarczany w celu ustawienia preferencji kubectl na domyślnie.

Podobnie polecenie „Widok” należy wykonać, aby wyświetlić przestrzeń nazw. Zobacz kod poniżej:

Związek między DN i przestrzeniami nazw

Po utworzeniu usługi tworzony jest również odpowiedni wpis DNS. Wpis DNS zawiera nazwę usługi, nazwę przestrzeni nazw i klaster lokalny, co oznacza, że ​​jeśli kontener użyje nazwy usługi, połączy się z lokalną przestrzenią nazw klastra.

Staje się to przydatne podczas wdrażania tej samej konfiguracji w różnych przestrzeni nazw, takich jak produkcja, inscenizacja i rozwój. Gdy użytkownicy muszą dotrzeć do przestrzeni nazw, muszą określić w pełni kwalifikowaną nazwę domeny (FQDN).

Obiekty, które nie są częścią przestrzeni nazw:

Obiekt lub zasoby Kubernetes są częścią niektórych przestrzeni nazw, i.mi., kontroler replikacji, usługi, kapsuły itp. Jednak sam obiekt przestrzeni nazw nie jest częścią żadnej przestrzeni nazw. Ponadto trwałe objętości, węzły i inne zasoby niskiego poziomu nie są częścią żadnej przestrzeni nazw.

Aby zobaczyć, które zasoby są w przestrzeni nazw i które zasoby nie są w żadnej przestrzeni nazw, używane jest polecenie zasobów API. Zobacz kod poniżej.

Kiedy -namespaces są ustawione na „true”, pokaże nazwy zasobów części w jakiejś przestrzeni nazw. Z drugiej strony, gdy -Namespaces są ustawione na „false”, pokaże nazwę tych zasobów, które nie znajdują się w żadnej przestrzeni nazw. „Kubectl API -Resource -namesPace = Preferencja przestrzeni nazw” jest używana do zobaczenia zasobów przestrzeni nazw.

Jak można obserwować w powyższych wynikach, podano prawdziwe i fałszywe preferencje, które zasoby są w jakiejś przestrzeni nazw.

Wniosek:

Ten artykuł dotyczy zarządzania skomplikowanymi systemami, takimi jak Kubernetes, może być dużym wyzwaniem nawet dla ekspertów. Jednak silna wiedza i polecenie przestrzeni nazw mogą znacznie ułatwić trudne i skomplikowane zadania. Przestrzeń nazw to potężne narzędzie, które określa hierarchię, wydajność i bezpieczeństwo systemu Kubernetes.