20 najważniejszych pytań i odpowiedzi w wywiadzie dotyczącym Kubernetes, które musisz znać w 2022 r.
Opublikowany: 2021-01-04Kubernetes to jedno z najbardziej poszukiwanych narzędzi do orkiestracji kontenerów na dzisiejszym rynku. Otwarte źródło przez Google w 2014 roku, system ten stał się ulubionym wśród firm takich jak SoundCloud, SAP, The New York Times, eBay, Huawei i wielu innych.
Ale jest tylko kilku wykwalifikowanych ekspertów, którzy mogą zaspokoić ogromne zapotrzebowanie na certyfikowanych specjalistów Kubernetes. Co więcej, współczesne procedury wyboru stanowisk kładą ogromny nacisk na koncepcje techniczne. Dlatego zawsze zaleca się wcześniejsze przygotowanie odpowiedzi na pytania do rozmowy kwalifikacyjnej Kubernetes .
Podstawową ideą Kubernetes jest wyabstrahowanie podstawowych zasobów komputera. Odciąga maszyny, pamięć masową i sieci od ich fizycznych implementacji. Bez wątpienia dynamika platformy rośnie. Kubernetes jest nazywany systemem operacyjnym chmury. Dowiedz się więcej o Kubernetes i jego sieci.
Jeśli myślisz o karierze w tej dziedzinie, zapoznaj się z poniższymi pytaniami do rozmowy kwalifikacyjnej Kubernetes . Zrób pierwszy krok i zapoznaj się z podstawami!
Kubernetes Pytania i odpowiedzi podczas wywiadu 2022
1. Zdefiniuj Kubernetes.
Kubernetes to znacznie więcej niż platforma do konteneryzacji. Automatyzuje zadania wdrażania, skalowania i równoważenia obciążenia aplikacji. Ponadto to narzędzie do zarządzania wieloma kontenerami działa dobrze z większością dostawców chmury i czerpie korzyści z wkładu społeczności adeptów open-source. Kubernetes jest napisany w językach programowania Go.

2. Wymień kilka kluczowych funkcji Kubernetes.
- Zautomatyzowane planowanie — zaawansowany harmonogram do uruchamiania kontenerów w węzłach klastra.
- Samoleczenie — może przełożyć, wymienić i ponownie uruchomić kontenery, które zginęły.
- Zautomatyzowane wycofywanie i wycofywanie — obsługuje wycofywanie i wycofywanie.
- Skalowanie w poziomie — możliwości skalowania aplikacji w górę lub w dół zgodnie z wymaganiami.
- Wymień różnice między Kubernetes i Docker Swarms.
Docker Swarm to narzędzie do budowania kontenerów do zarządzania ich cyklem życia. Kubernetes jest bardziej rozbudowany niż Docker Swarm, ponieważ ma na celu organizowanie klastrów i koordynowanie klastrów węzłów na dużą skalę. Mimo że Kubernetes jest wysoce skalowalny, Docker Swarm skaluje się około pięć razy szybciej niż Kubernetes. Ponadto Docker Swarm wykonuje automatyczne równoważenie obciążenia ruchu między różnymi kontenerami, co wymaga ręcznej interwencji w Kubernetes.
Ale Kubernetes ma inne możliwości. Posiada wbudowane narzędzia do rejestrowania i monitorowania wraz z mechanizmem automatycznego wycofywania. Docker Swarm nie może wykonywać automatycznego wycofywania i automatycznego skalowania, tak jak Kubernetes.
4. Czym różni się wdrażanie aplikacji na hostach od wdrażania na kontenerach?
Podczas wdrażania aplikacji na hostach jądro systemu operacyjnego umożliwia zainstalowanie na niej wielu bibliotek. Wszystkie aplikacje współdzielą różne biblioteki obecne w tym systemie operacyjnym. Jednak architektura wdrażania aplikacji na kontenerach jest nieco inna.
W architekturze kontenerowej jądro jest jedyną wspólną cechą aplikacji. Inne aplikacje nie mogą naruszać bibliotek i plików binarnych potrzebnych jednej aplikacji. Tak więc istnieją w izolacji od reszty systemu. Na przykład, jeśli dana aplikacja wymaga Pythona, tylko ta aplikacja uzyska do niej dostęp.
5. Co rozumiesz przez orkiestrację kontenerów? A po co ci to?
Załóżmy, że dla aplikacji istnieje 4-5 mikrousług. Teraz te mikrousługi byłyby w osobnych kontenerach. Tak więc orkiestracja kontenerów byłaby wymagana, aby umożliwić usługom komunikowanie się ze sobą i współpracę w celu spełnienia potrzeb serwera. Proces przypomina orkiestrę muzyczną, w której różne instrumenty grane są harmonijnie, tworząc kompozycję.
6. Co to jest Kubelet?
Kubelet to usługa agenta, która uruchamia pody. Pod to nic innego jak grupa kontenerów wdrożonych na tym samym hoście lub mających wspólne zasoby, takie jak pojedynczy adres IP, woluminy itp. Kubelet działa na opisach tych kontenerów dostarczonych w PodSpec. Jego głównym celem jest uruchamianie w każdym węźle, upewnienie się, że kontenery są sprawne i uruchomione, oraz dalsze umożliwienie komunikacji między węzłami głównym i roboczym.
Przeczytaj: Pełny stos pytań i odpowiedzi na wywiad
7. Jaka jest rola klastrów w Kubernetes?
Kubernetes umożliwia wymuszanie wymaganego zarządzania stanem poprzez dostarczanie usług klastrowych o określonej konfiguracji. Następnie te usługi klastrowe uruchamiają tę konfigurację w infrastrukturze. W proces zaangażowane są następujące kroki:
- Plik wdrożenia zawiera wszystkie konfiguracje, które mają zostać wprowadzone do usług klastra.
- Plik wdrożenia jest podawany do interfejsu API.
- Teraz usługi klastra planują pody w środowisku
- Usługi klastrowe zapewniają również, że działa odpowiednia liczba podów
Tak więc klaster Kubernetes zasadniczo składa się z interfejsu API, węzłów roboczych i procesu Kubelet węzłów.
8. Do czego służy Kubectl?
Kubectl to narzędzie do kontrolowania klastrów Kubernetes. W rzeczywistości „ctl” oznacza kontrolę. Jest to interfejs wiersza poleceń, który umożliwia przekazywanie poleceń do klastra i zarządzanie komponentem Kubernetes.
9. Zdefiniuj Google Container Engine.
Google Container Engine (GKE) to platforma zarządzania obsługująca kontenery i klastry Dockera działające w ramach publicznych usług chmurowych Google. Jest to silnik open-source oparty na Kubernetes.
10. Wyjaśnij użycie węzłów w Kubernetes.
Węzeł zapewnia usługi niezbędne do uruchamiania podów. Węzły, znane również jako miniony, mogą działać na maszynie fizycznej lub wirtualnej w zależności od klastra. W Kubernetes węzeł jest główną maszyną roboczą, a komponenty główne zarządzają każdym węzłem w systemie.

Teraz, gdy jesteś na bieżąco z podstawami, przyjrzyjmy się kilku kolejnym pytaniom i odpowiedziom podczas rozmowy kwalifikacyjnej Kubernetes, aby uzyskać jasność.
11. Jakie są dwa główne komponenty architektury Kubernetes?
Węzeł główny i węzeł roboczy tworzą architekturę Kubernetes. Oba komponenty mają w sobie wiele wbudowanych usług. Na przykład składnik główny zawiera kube-controller-manager, kube-scheduler, etcd i kube-apiserver. Węzeł roboczy ma usługi, takie jak środowisko uruchomieniowe kontenera, kubelet i kube-proxy działające na każdym węźle.
Przeczytaj: Pytania i odpowiedzi podczas wywiadu React
12. Zdefiniuj kube-apiserver i kube-scheduler.
Kube-apiserver to fronton panelu sterowania węzła maser, który udostępnia wszystkie interfejsy API komponentów. Nawiązuje komunikację między węzłami Kubernetes a komponentami głównymi. Kube-scheduler zarządza obciążeniem węzłów roboczych. Śledzi wykorzystanie zasobów, aby zapewnić, że planowanie odbywa się na odpowiednich węzłach.
13. Krótko wyjaśnij rolę Menedżera kontrolera Kubernetes.
W Kubernetes różne procesy działają w węźle głównym i są kompilowane razem w postaci Menedżera kontrolera Kubernetes. Jest to demon osadzający kontrolery, w tym:
- Node Controller: Zarządza statusem, tj. tworzeniem, aktualizacją i usuwaniem węzłów
- Kontroler replikacji: utrzymuje pody dla każdego obiektu replikacji
- Konto usługi i kontroler tokenów: dotyczy domyślnych kont i tokenów dostępu API dla nowych przestrzeni nazw
- Kontroler punktów końcowych: dba o obiekty punktów końcowych (pody i usługi)
- Co robi menedżer kontrolera chmury?
Cloud Controller Manager (CCM) to demon, który umożliwia osadzanie pętli sterowania specyficznych dla chmury. Oddziela kod dostawcy specyficznego dla chmury od podstawowego kodu Kubernetes. Pomaga również zarządzać komunikacją z podstawowymi usługami w chmurze. Jego konstrukcja opiera się na mechanizmie wtyczek, co oznacza, że dostawcy chmury integrują swój kod z CCM za pomocą wtyczek.
15. Jaka jest rola load balancera?
Load Balancer zapewnia standardowy sposób dystrybucji ruchu sieciowego między różnymi usługami zaplecza, maksymalizując w ten sposób skalowalność. W zależności od środowiska pracy mogą istnieć dwa rodzaje równoważenia obciążenia – Wewnętrzny lub Zewnętrzny.
Wewnętrzny system równoważenia obciążenia może automatycznie równoważyć obciążenie i przydzielać wymaganą konfigurację do zasobników. Z drugiej strony zewnętrzny moduł równoważenia obciążenia kieruje ruchem obciążenia zewnętrznego do zasobników zaplecza. W Kubernetes dwie metody równoważenia obciążenia działają za pośrednictwem funkcji kube-proxy.
16. Jak uruchomić Kubernetes lokalnie?
Możesz uruchomić Kubernetes lokalnie za pomocą narzędzia Minikube. Uruchamia jednowęzłowy klaster wewnątrz maszyny wirtualnej na twoim laptopie. Zapewnia więc skuteczny sposób użytkownikom, którzy dopiero zaczynają i chcą wypróbować Kubernetes.
17. Co to jest Heapster?
Heapster to narzędzie do monitorowania wydajności i zbierania metryk obsługiwane natywnie w klastrze Kubernetes. Działa jak każdy inny pod w klastrze, wykrywając wszystkie węzły i wysyłając zapytania do węzłów Kubernetes. To narzędzie do zarządzania kontenerami działa za pośrednictwem agenta na komputerze.
18. Co to jest ETCD w Kubernetes?
Etcd to magazyn konfiguracji, stanu i metadanych klastrów Kubernetes. Jest napisany w języku programowania Go i reprezentuje stan klastra w danym momencie. Ten magazyn danych służy jako szkielet systemów rozproszonych.
19. Co rozumiesz przez monitorowanie zasobów kontenera?

Z perspektywy użytkownika ważne jest zrozumienie wykorzystania zasobów na różnych warstwach i poziomach abstrakcji, takich jak zasobniki, usługi i cały klaster. Każdy poziom można monitorować za pomocą różnych narzędzi, a mianowicie:
- Grafana
- Heapster
- InfluxDB
- Doradca CA
- Prometeusz
- Jak zapewnić bezpieczeństwo swojego środowiska podczas korzystania z Kubernetes?
Podczas korzystania z Kubernetes możesz przestrzegać i wdrażać następujące środki bezpieczeństwa:
- Ogranicz dostęp do ETCD
- Ogranicz bezpośredni dostęp do węzłów
- Zdefiniuj przydział zasobów
- Wszystko powinno być rejestrowane w środowisku produkcyjnym
- Użyj obrazów z autoryzowanego repozytorium
- Twórz ścisłe zasady i zasady dotyczące zasobów
- Przeprowadzaj ciągłe skanowanie bezpieczeństwa i podatności
- Regularnie stosuj aktualizacje zabezpieczeń
Pobierz kurs rozwoju oprogramowania z najlepszych światowych uniwersytetów. Zdobywaj programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.
Zawijanie
W tym artykule omówiliśmy podstawowe pytania do rozmowy kwalifikacyjnej Kubernetes, które pomogą Ci zrealizować cele zawodowe. Podejmij więc wyzwanie edukacyjne i nie zapomnij powtórzyć!
Jeśli chcesz nauczyć się i opanować Kubernetes, DevOps i nie tylko, sprawdź program Executive PG IIIT-B i upGrad w programie rozwoju oprogramowania Full Stack.
