Innehållsförteckning[Dölj][Visa]
- 1. Vad är Kubernetes?
- 2. Vad menar du med containern i Kubernetes?
- 3. Vilka är huvudkomponenterna i Kubernetes?
- 4. Vad menar du med orkestrering i kubernetes?
- 5. Vad är egentligen ett Kubernetes-kluster?
- 6. Hur görs containeriserad distribution enklare av Kubernetes?
- 7. Vilka grundläggande skillnader finns mellan Kubernetes och Docker Swarm?
- 8. Vad är ett namnområde i Kubernetes?
- 9. Vad exakt är Kubernetes etcd-masterkomponenten?
- 10. Vilka lösningar finns det för API-säkerhet på Kubernetes?
- 11. Vilka är skillnaderna mellan applikationer som distribueras på värdar och behållare?
- 12. Vad menar du egentligen med Minikube?
- 13. Hur kan Kubernetes-klustret övervakas?
- 14. Vilken funktion har Kubernetes-noder?
- 15. Beskriv hipstern i detalj.
- 16. Beskriv hur Kubernetes huvudnod fungerar.
- 17. Vad skiljer behållaren från baljan?
- 18. Vad förstår du med lastbalanserare i Kubernetes?
- 19. Vilken funktion utför Kube-API-servern?
- 20. Vad betyder Kubernetes stateful set?
- 21. Hur undersöker du poddens centrala loggar?
- 22. ClusterIP: Vad är det?
- 23. Berätta om replikeringskontroller?
- 24. Hur fungerar Ingress-nätverket och vad är det?
- 25. Prometheus i Kubernetes: vad är det till för?
- 26. Vad är huvudlös tjänst?
- 27. Vad behöver jag för att köra Kubernetes-arkitekturen lokalt?
- 28. Vad förstår du med Stateful set?
- 29. Vad betyder undersåtar i Kubernetes?
- 30. Vilka funktioner utför tjänster inom Kubernetes-komponenterna?
- 31. Vad exakt är Helm?
- 32. Förklara PVC
- Slutsats
Google skapade ursprungligen Kubernetes, en teknologi för orkestrering av behållare med öppen källkod, 2014. Implementeringen, skalningen och administrationen av applikationer i behållare var alla avsedda att automatiseras.
Kubernetes har utvecklats med tiden till att bli branschens de facto standard för containerorkestrering och används flitigt av företag av alla storlekar för att hantera sina arbetsbelastningar i containers.
Betydelsen av Kubernetes i den moderna världen ligger i dess förmåga att erbjuda en konsekvent metod för att hantera containeriserade applikationer i stor skala, som spänner över olika kluster och molnmiljöer. På grund av detta kan företag hantera, expandera och distribuera sina applikationer snabbt och effektivt.
Underhållet av appar i containers görs ytterligare enklare av Kubernetes omfattande funktionsuppsättning, som inkluderar självläkning, automatiserad skalning och rullande uppgraderingar.
I takt med att fler företag använder containerisering och mikrotjänster för att påskynda sin applikationsutveckling och distributionsprocedurer, förväntas Kubernetes räckvidd fortsätta att expandera i framtiden.
Antagandet av molnbaserad teknik och den allmänna övergången till multimoln och hybridmolnsystem kommer båda att vara starkt beroende av Kubernetes. I takt med att fler och fler enheter kopplas till internet kommer Kubernetes likaledes att användas mer och mer i samband med kanten beräkning och IoT.
Jag antar att du redan är medveten om dessa detaljer eftersom du läser det här inlägget på Kubernetes intervjufrågor, som kommer att informera dig om de vanligaste intervjufrågorna. Låt oss börja.
1. Vad är Kubernetes?
Kubernetes är en ram med öppen källkod för orkestrering och administration av applikationer i containers. Det gör det möjligt att konsekvent och effektivt distribuera, skala och underhålla containeriserade applikationer.
Kubernetes erbjuder en enda metod för att hantera containeriserade applikationer i stor skala och är byggd för att fungera över olika kluster och molnmiljöer.
Självläkande, automatiserad skalning och rullande uppgraderingar är bara några av funktionerna som gör det ännu enklare att hantera appar i containers.
2. Vad menar du med containern i Kubernetes?
Behållare är en bärbar, lätt och självförsörjande metod för att packa och köra programvara. Applikationspaketering och distribution görs konsekvent och effektivt i Kubernetes med hjälp av behållare.
För att hålla sig åtskild från andra behållare och värddatorn, kör varje behållare bara en process. Ett programs beroenden, bibliotek och konfigurationsfiler ingår alla i behållarbilden som fungerar som definitionen av en behållare.
En containers avsedda antal repliker fungerar alltid tack vare Kubernetes användning av containerorkestrering för att hantera och skala containrarna. Detta gör det enkelt för utvecklare att hantera och distribuera sina applikationer över flera kluster och molnmiljöer.
3. Vilka är huvudkomponenterna i Kubernetes?
Här är huvudkomponenterna i kubenetrar:
- Kubernetes-mästaren: Denna komponent, som också omfattar styrenhetshanteraren och schemaläggaren, etcd (ett distribuerat nyckel-värdelager), API-servern och andra komponenter, är ansvarig för att hantera klustret som helhet.
- Noder: Dessa är arbetsstationerna på vilka de containeriserade programmen exekveras. Kubelet, som interagerar med mastern för att upprätthålla klustrets avsedda tillstånd, exekveras på varje nod tillsammans med en containerruntime (som Docker).
- Pods: Kubernetes-objektmodellens minsta och mest grundläggande element är poden, som fungerar som värd för en eller flera behållare.
- Tjänster: Tjänster erbjuder en konsekvent slutpunkt för pods och möjliggör lastbalansering och tjänsteupptäckt.
- Replikeringskontroller: De garanterar att det erforderliga antalet pod-repliker alltid fungerar.
- Secrets and ConfigMaps: Dessa resurser används för att underhålla konfigurationsdata och hemligheter för poddar och andra klusterobjekt.
4. Vad menar du med orkestrering i kubernetes?
I Kubernetes syftar termen "orkestrering" på automatiserad administration och koordinering av containrar och de resurser de är kopplade till. Det involverar aktiviteter inklusive nätverk, skalbarhet, distribution och självläkning. Med hjälp av objekt som pods, tjänster och replikeringskontroller, orkestrerar Kubernetes applikationer.
Pods, som kan hålla en eller flera containrar, är de minsta utplaceringsbara enheterna. Tjänster hantera lastbalansering och tjänsteupptäckt och ge pods en solid slutpunkt. En replik av en pod fungerar alltid med det antal kopior som krävs tack vare replikeringskontroller.
5. Vad är egentligen ett Kubernetes-kluster?
En uppsättning noder som kör containeriserade appar i olika sammanhang och maskiner – molnbaserade, fysiska, virtuella och lokala – utgör ett Kubernetes-kluster. Det underlättar den enkla hanteringen och migreringen av appar samt skapande av dem.
6. Hur görs containeriserad distribution enklare av Kubernetes?
Eftersom en typisk applikation skulle fungera i ett kluster av behållare på många värdar, skulle alla dessa behållare behöva kommunicera med varandra.
Så för att åstadkomma detta krävs ett storskaligt system som kan skala, lastbalansera och övervaka containrarna. Du måste använda Kubernetes för att underlätta distributionen av containers eftersom det är moln-agnostiskt och kan fungera på vilken offentlig eller privat leverantör som helst.
7. Vilka grundläggande skillnader finns mellan Kubernetes och Docker Swarm?
Schemalägg och kluster Docker-containrar med Docker Swarm, ett inbyggt containerorkestreringsverktyg med öppen källkod från Docker. Följande egenskaper skiljer Swarm från Kubernetes:
- Medan Kubernetes och Docker Swarm båda saknar funktioner för automatisk skalning, är Docker-skalning fem gånger snabbare än Kubernetes.
- Kubernetes tillhandahåller ett GUI i form av en instrumentpanel, men Docker Swarm saknar en.
- Jämfört med Kubernetes, som är svårare att sätta upp men erbjuder garanti för ett starkt kluster, är Docker Swarm lättare att installera men har inget stabilt kluster.
- Medan Kubernetes inkluderar inbyggda funktioner för loggning och övervakning, behöver Docker externa verktyg som ELK-stacken.
- Rullande uppdateringar kan distribueras via Docker, men automatiska återställningar kan inte vara det. Rullande uppdateringar såväl som automatiska återställningar kan distribueras med Kubernetes.
8. Vad är ett namnområde i Kubernetes?
Kubernetes namnutrymme används i en miljö där det finns flera användare som arbetar med många projekt över ett stort geografiskt område. Namnutrymmet delar upp klusterresurserna mellan flera användare.
9. Vad exakt är Kubernetes etcd-masterkomponenten?
Etcd är en avgörande del av Kubernetes huvudserver. Dessutom fungerar det som navet i Kubernetes-klustret, där artiklar lagras i en distribuerad nyckel-värde-butik.
Replikeringsteknik används tillsammans med en algoritm för att bevara data som sparats i etcd mellan servrar. När man jämför och byter data mellan etcd-servrar används den optimistiska valutan för att minimera låsningssituationer och öka serverhastigheten.
10. Vilka lösningar finns det för API-säkerhet på Kubernetes?
Tillhandahållande av API-säkerhet kan göras på det sätt som anges nedan:
- Via hjälp av API-autentisering
- Att välja lämpligt autentiseringsläge för API-serverns autentiseringsläge= Node, RBAC
- Spåra RBAC-fel
- Se till att TLS används för att skydda trafiken
- Använder authorization-mode=Webhook för att säkerställa att Kubeless skyddar sitt API
- Eliminering av standardbehörigheterna för tjänstekontot
- Använder kubes senaste version
- Se till att kube-dashboarden följer en strikt RBAC-policy
- Implementera en pod-säkerhetspolicy för att begränsa containeråtkomst och skydda noden
11. Vilka är skillnaderna mellan applikationer som distribueras på värdar och behållare?
Ett operativsystem och en arkitektur utgör distribuerade applikationer. Operativsystemet kommer att ha en kärna som innehåller flera bibliotek som behövs av en applikation.
En maskin som kör processbehållare kallas för en containervärd. Eftersom denna typ av programvara skiljer sig från andra program måste apparna innehålla de nödvändiga biblioteken. Binärfilerna kan inte göra intrång i rättigheterna för någon annan programvara eftersom de är separerade från resten av systemet.
12. Vad menar du egentligen med Minikube?
Med Minikube kan Kubernetes enkelt köras lokalt. Detta tillåter en virtuell maskin att vara värd för ett Kubernetes-kluster med en enda nod.
13. Hur kan Kubernetes-klustret övervakas?
Driften och statusen för containrar som arbetar under Kubernetes kan spåras med en mängd olika metoder. Prometheus, ett av de mest använda instrumenten, innehåller ett antal delar, som är uppdelade i avsnitten nedan.
- Prometheus-servern samlar in och lagrar tidsseriedata.
- Det inkluderar klientbibliotek som underlättar instrumentering av applikationskod.
- Den har en push-gateway som kan stödja tillfälliga jobb.
- Det finns exportörer med specialiserade funktioner för en mängd olika containertjänster, som StatsD, HAProxy, Graphite, etc.
- Dessutom kommer du att få en varningsansvarig för att hantera aviseringar på olika supportsystem.
14. Vilken funktion har Kubernetes-noder?
För driften av pods erbjuder Node avgörande funktioner. Nods, som också är kända som minions, kan fungera på vilken riktig eller virtuell dator som helst beroende på klustret.
I Kubernetes är noden den primära arbetsdatorn, medan huvudkomponenter övervakar varje nod individuellt.
15. Beskriv hipstern i detalj.
Heapster kombinerar data genom hela klustret som Kubelet, som exekveras på varje nod, genererar. Det här behållarhanteringsverktyget stöds av detta Kubernetes-kluster, och det fungerar som en pod precis som alla andra pod i klustret.
I grund och botten innebär detta att man lokaliserar varje nod i klustret och använder en Kubernetes-agent på maskinen för att fråga data från klustrets Kubernetes-noder.
16. Beskriv hur Kubernetes huvudnod fungerar.
Huvudnoden höjer arbetarnodernas styrande och kontrollerande noder. Detta liknar ett Kubernetes-kluster. Noderna ansvarar för klusterhantering samt API:et som används för att konfigurera och hantera samlingens resurser. På grund av fördelen med dedikerade pods kan Kubernetes masternoder köra tillsammans med Kubernetes själv.
17. Vad skiljer behållaren från baljan?
Som en replikeringsenhet använder Kubernetes en pod, som är en grupp behållare. Behållare är samlingen av koder som en pod för en applikation ska skapa. Inom samma pod kan behållare kommunicera med varandra.
18. Vad förstår du med lastbalanserare i Kubernetes?
En av de vanligaste och mest accepterade metoderna för serviceexponering är en lastbalanserare. Beroende på arbetsmiljön är en lastbalanserare antingen en intern lastbalanserare eller en extern lastbalanserare.
Medan External Load Balancer dirigerar trafik från den externa lasten till backend-podarna, balanserar den interna lastbalanseraren automatiskt lasten och tilldelar podarna den nödvändiga konfigurationen.
19. Vilken funktion utför Kube-API-servern?
För API-objekten verifierar och erbjuder denna typ konfigurationsinformation. Den består av replikeringskontroller, tjänster och poddar. Dessutom erbjuder den REST-operationer och klustrets gränssnitt. Alla andra komponenter kommunicerar med varandra via detta gemensamma frontend-klustertillstånd.
20. Vad betyder Kubernetes stateful set?
Ett arbetsbelastnings-API-objekt som kallas en stateful set används för att hantera stateful-applikationer. Den används för att skala uppsättningarna av poddar och hantera distributioner. I skivlagringen som länkar till den tillståndsfulla uppsättningen, sparades tillståndsinformationen och andra motståndskraftiga data för tillståndsfulla pods och hölls uppdaterade.
21. Hur undersöker du poddens centrala loggar?
För att hämta centrala loggar från podden kan du använda en av de två loggningsstilarna.
- Använd en loggningsagent på nodnivå.
- Sidovagnscontainern i bäcken
- Använd avverkningsmedlet tillsammans med sidovagnsbehållaren.
- Exportera loggarna direkt från programmet
22. ClusterIP: Vad är det?
Standard Kubernetes-tjänsten, ClusterIP, erbjuder en intern klustertjänst (utan extern åtkomst) som andra appar i ditt kluster kan komma åt.
23. Berätta om replikeringskontroller?
För alla långvariga pods fungerar replikeringskontroller som övervakare. Det garanterar att det erforderliga antalet pods är aktiva vid varje ögonblick och att varje pod eller grupp av pods har en konsekvent struktur.
Om det finns fler baljor än det avsedda antalet, avslutas överskottsbaljorna. Dessutom kommer styrenheten omedelbart att ersätta eventuella felaktiga kapslar.
24. Hur fungerar Ingress-nätverket och vad är det?
Användare kan komma åt dina Kubernetes-tjänster utanför Kubernetes-klustret tack vare ett objekt som kallas ingress. Genom att upprätta regler som anger vilka inkommande anslutningar som når vissa tjänster kan användare konfigurera åtkomst.
Detta API-objekt erbjuder de routingregler som behövs för att styra hur tjänsterna i Kubernetes-klustret nås av besökare utanför klustret via HTTPS/HTTP. Med detta kan användare bygga upp trafikdirigeringsreglerna snabbt och effektivt utan att behöva göra flera lastbalanserare eller exponera varje tjänst för noderna.
25. Prometheus i Kubernetes: vad är det till för?
En öppen källkodsverktygslåda som heter Prometheus används för att övervaka och varna applikationen beroende på mätvärden. Den erbjuder ett dataschema och ett frågespråk och kan leverera mätvärdesinformation och åtgärder. Det möjliggör användning av språk för många instrumentella ändamål.
Förutom Alertmanager och Grafana erbjuder Prometheus-operatören enkel övervakning för utplaceringar och K8s-tjänster.
26. Vad är huvudlös tjänst?
En huvudlös tjänst är en som använder en IP-adress men ger information om anslutna pods snarare än lastbalansering.
27. Vad behöver jag för att köra Kubernetes-arkitekturen lokalt?
För Kubernetes-integration har flera lokala infrastrukturer genomgått ombyggnad. Expertis på hög nivå behövs för att integrera lagring, servrar och nätverk i ett sömlöst system.
Att välja rätt nätverks- och lagringshårdvara är viktigt för Kubernetes eftersom det möjliggör interaktion med resurser för lagring, lastbalanserare, etc. Automatisering av nätverks- och lagringskomponenter är en nyckelkomponent i Kubernetes värdeerbjudande.
28. Vad förstår du med Stateful set?
Arbetsbelastnings-API-objektet som kallas stateful set används för att hantera stateful-applikationer. Den kan också användas för att skala uppsättningarna av poddar och hantera distributioner. Skivlagringen, som är ansluten till stateful-setet, innehåller tillståndsinformation och andra data för de stateful-pods.
29. Vad betyder undersåtar i Kubernetes?
I Kubernetes kallas en nod för en arbetsmaskin; tidigare var den känd som en minion. Baserat på ett kluster kan det vara en virtuell dator eller en riktig maskin.
Varje nod styrs av Kubernetes huvudkomponenter och innehåller de tjänster som behövs för att driva pods. Behållarens körtid, kubelet och Kube-proxy ingår i de tjänster som erbjuds av noden.
30. Vilka funktioner utför tjänster inom Kubernetes-komponenterna?
Genom tillhandahållandet av den virtuella IP-adressen fungerar en tjänst som en abstraktion för pods. Den virtuella IP-adressen underlättar användaranslutningar till behållare som körs inuti pods. Det är en komponent som bestämmer hur behållare är ordnade i baljor.
31. Vad exakt är Helm?
Det CNF-underhållna Helm-programpakethanteringsregistret är tillgängligt för Kubernetes. Den förkonfigurerade Hjälmdiagram kan laddas ner och distribueras i ditt Kubernetes-system. En av de mest populära pakethanteringslösningarna för Kubernetes-miljön är den här. DevOps-team kan distribuera appar i produktions- och utvecklingsmiljöer, versionera dem och spåra deras framsteg med hjälp av befintliga diagram.
32. Förklara PVC
PVC är en akronym för Persistent Volume Claim. Det är lagring som Kubernetes har begärt för poddar. Användarkännedom om den underliggande provisioneringen är inte nödvändig. Namnutrymmet där podden bildas och där detta påstående ska göras bör matcha.
Slutsats
Kubernetes intervjufrågor och svar är kompletta.
Det finns utan tvekan mer att lära sig om Kubernetes, den banbrytande tekniken som har gjort det möjligt att hantera och driva tusentals containrar, men det här är ett bra ställe att börja. För hjälp med intervjuförberedelser, se Hashdorks intervjuserie.
Kommentera uppropet