Indholdsfortegnelse[Skjule][At vise]
- 1. Hvad er Kubernetes?
- 2. Hvad mener du med containeren i Kubernetes?
- 3. Hvad er hovedkomponenterne i Kubernetes?
- 4. Hvad mener du med orkestrering i kubernetes?
- 5. Hvad er en Kubernetes-klynge helt præcist?
- 6. Hvordan bliver containeriseret udrulning gjort enklere af Kubernetes?
- 7. Hvilke grundlæggende forskelle findes der mellem Kubernetes og Docker Swarm?
- 8. Hvad er et navneområde i Kubernetes?
- 9. Hvad er egentlig Kubernetes etcd master komponenten?
- 10. Hvilke løsninger findes der til API-sikkerhed på Kubernetes?
- 11. Hvad er forskellene mellem applikationer installeret på værter og containere?
- 12. Hvad mener du egentlig med Minikube?
- 13. Hvordan kan Kubernetes-klyngen overvåges?
- 14. Hvilken funktion tjener Kubernetes noder?
- 15. Beskriv hipsteren i detaljer.
- 16. Beskriv driften af Kubernetes masterknudepunkt.
- 17. Hvad adskiller beholderen fra poden?
- 18. Hvad forstår du ved load balancer i Kubernetes?
- 19. Hvilken funktion udfører Kube-API-serveren?
- 20. Hvad betyder Kubernetes' stateful sets?
- 21. Hvordan undersøger du podens centrale logs?
- 22. ClusterIP: Hvad er det?
- 23. Fortæl mig om replikeringscontrollere?
- 24. Hvordan fungerer Ingress-netværket, og hvad er det?
- 25. Prometheus i Kubernetes: hvad er det til?
- 26. Hvad er hovedløs service?
- 27. Hvad skal jeg bruge for at køre Kubernetes-arkitekturen lokalt?
- 28. Hvad forstår du ved Stateful set?
- 29. Hvad betyder håndlangere i Kubernetes?
- 30. Hvilke funktioner udfører tjenester i Kubernetes-komponenterne?
- 31. Hvad er Helm helt præcist?
- 32. Forklar PVC
- Konklusion
Google skabte oprindeligt Kubernetes, en open source-container-orkestreringsteknologi, i 2014. Implementeringen, skaleringen og administrationen af containeriserede applikationer var alle beregnet til at blive automatiseret.
Kubernetes har udviklet sig over tid til at blive branchens de facto standard for containerorkestrering og bruges flittigt af virksomheder i alle størrelser til at styre deres arbejdsmængder i containere.
Betydningen af Kubernetes i den moderne verden ligger i dens kapacitet til at tilbyde en ensartet metode til at administrere containeriserede applikationer i skala, der spænder over forskellige klynger og cloudmiljøer. På grund af dette kan virksomheder administrere, udvide og implementere deres applikationer hurtigt og effektivt.
Vedligeholdelsen af containeriserede apps er yderligere gjort lettere af Kubernetes' omfattende funktionssæt, som inkluderer selvhelbredende, automatiseret skalering og rullende opgraderinger.
Efterhånden som flere virksomheder bruger containerisering og mikrotjenester til at fremskynde deres applikationsudvikling og implementeringsprocedurer, forventes Kubernetes' omfang at blive ved med at udvide sig i fremtiden.
Indførelsen af cloud-native teknologier og den generelle overgang til multi-cloud og hybrid cloud-systemer vil begge i høj grad afhænge af Kubernetes. I takt med at flere og flere enheder kobles til internettet, vil Kubernetes ligeledes blive brugt mere og mere ift. kant computing og IoT.
Jeg antager, at du allerede er klar over disse detaljer, fordi du læser dette indlæg om Kubernetes Interview Questions, som vil informere dig om de oftest stillede interviewspørgsmål. Lad os begynde.
1. Hvad er Kubernetes?
Kubernetes er en open source-ramme til containeriseret applikationsorkestrering og administration. Det gør det muligt konsekvent og effektivt at implementere, skalere og vedligeholde containeriserede applikationer.
Kubernetes tilbyder en enkelt metode til at administrere containeriserede applikationer i stor skala og er bygget til at fungere på tværs af forskellige klynger og cloudmiljøer.
Selvhelbredende, automatiseret skalering og rullende opgraderinger er blot nogle få af de muligheder, der gør administrationen af containeriserede apps endnu nemmere.
2. Hvad mener du med containeren i Kubernetes?
Containere er en bærbar, let og selvforsynende tilgang til emballering og drift af software. Applikationspakning og -implementering udføres konsekvent og effektivt i Kubernetes ved hjælp af containere.
For at holde sig adskilt fra andre containere og værtsmaskinen, udfører hver container kun én proces. Et programs afhængigheder, biblioteker og konfigurationsfiler er alle inkluderet i containerbilledet, der tjener som definition af en container.
En containers tilsigtede antal replikaer fungerer altid takket være Kubernetes' brug af containerorkestrering til at styre og skalere containerne. Dette gør det nemt for udviklere at administrere og implementere deres applikationer på tværs af flere klynger og cloudmiljøer.
3. Hvad er hovedkomponenterne i Kubernetes?
Her er hovedkomponenterne i kubenetere:
- Kubernetes-masteren: Denne komponent, som også omfatter controllermanageren og planlæggeren, etcd (et distribueret nøgleværdilager), API-serveren og andre komponenter, er ansvarlig for at administrere klyngen som helhed.
- Noder: Dette er de arbejdsstationer, hvorpå de containeriserede programmer udføres. Kubelet, som interagerer med masteren for at opretholde klyngens tilsigtede tilstand, udføres på hver node sammen med en container-runtime (såsom Docker).
- Pods: Kubernetes objektmodellens mindste og mest basale element er poden, som fungerer som vært for en eller flere containere.
- Tjenester: Tjenester tilbyder et konsekvent slutpunkt for pods og muliggør belastningsbalancering og serviceopdagelse.
- Replikeringscontrollere: De garanterer, at det nødvendige antal pod-replikaer altid er i drift.
- Secrets and ConfigMaps: Disse ressourcer bruges til at vedligeholde konfigurationsdata og hemmeligheder for pods og andre klyngeobjekter.
4. Hvad mener du med orkestrering i kubernetes?
I Kubernetes refererer udtrykket "orkestrering" til den automatiserede administration og koordinering af containere og de ressourcer, de er forbundet med. Det involverer aktiviteter, herunder netværk, skalerbarhed, implementering og selvhelbredelse. Ved at bruge objekter som pods, tjenester og replikeringscontrollere orkestrerer Kubernetes applikationer.
Pods, som kan rumme en eller flere containere, er de mindste deployerbare enheder. Tjenester administrere belastningsbalancering og serviceopdagelse og give pods et solidt slutpunkt. En replika af en pod fungerer altid med det nødvendige antal kopier takket være replikeringscontrollere.
5. Hvad er en Kubernetes-klynge helt præcist?
Et sæt noder, der kører containeriserede apps på tværs af forskellige kontekster og maskiner – sky-baserede, fysiske, virtuelle og lokale – udgør en Kubernetes-klynge. Det letter den enkle administration og migrering af apps samt deres oprettelse.
6. Hvordan bliver containeriseret udrulning gjort enklere af Kubernetes?
Da en typisk applikation ville fungere i en klynge af containere på mange værter, ville alle disse containere skulle kommunikere med hinanden.
Så for at opnå dette kræves der et system i stor skala, der kan skalere, lastbalancere og overvåge containerne. Du skal bruge Kubernetes for at lette udrulningen af containere, da den er skyagnostisk og kan fungere på enhver offentlig eller privat udbyder.
7. Hvilke grundlæggende forskelle findes der mellem Kubernetes og Docker Swarm?
Planlæg og klyng Docker-containere med Docker Swarm, et indbygget open source-container-orkestreringsværktøj fra Docker. Følgende egenskaber adskiller Swarm fra Kubernetes:
- Mens Kubernetes og Docker Swarm begge mangler auto-skaleringsfunktioner, er Docker-skalering fem gange hurtigere end Kubernetes.
- Kubernetes leverer en GUI i form af et dashboard, men Docker Swarm mangler en.
- Sammenlignet med Kubernetes, som er sværere at sætte op, men giver garanti for en stærk klynge, er Docker Swarm nemmere at installere, men har ikke en stabil klynge.
- Mens Kubernetes inkluderer indbyggede funktioner til logning og overvågning, har Docker brug for eksterne værktøjer som ELK-stakken.
- Rullende opdateringer kan implementeres via Docker, men automatiserede tilbagerulninger kan ikke være det; Rullende opdateringer såvel som automatiske tilbagerulninger kan implementeres ved hjælp af Kubernetes.
8. Hvad er et navneområde i Kubernetes?
Kubernetes-navnerummet bruges i en indstilling, hvor der er flere brugere, der arbejder på adskillige projekter over et bredt geografisk område. Navnerummet deler klyngressourcerne på tværs af flere brugere.
9. Hvad er egentlig Kubernetes etcd master komponenten?
Etcd er en afgørende del af Kubernetes masterserver. Derudover fungerer det som omdrejningspunktet for Kubernetes-klyngen, hvor varer gemmes i et distribueret nøgleværdilager.
Replikeringsteknologi bruges sammen med en algoritme til at bevare de data, der er gemt i etcd mellem servere. Når man sammenligner og udveksler data mellem etcd-servere, bruges den optimistiske valuta til at minimere låsesituationer og øge serverhastigheden.
10. Hvilke løsninger findes der til API-sikkerhed på Kubernetes?
Levering af API-sikkerhed kan gøres på den måde, der er angivet nedenfor:
- Via midler til API-godkendelse
- Valg af den passende godkendelsestilstand for API-serverens godkendelsestilstand= Node, RBAC
- Sporing af RBAC-fejl
- Sikre at TLS bliver brugt til at sikre trafikken
- Bruger Authorization-mode=Webhook for at sikre, at Kubeless beskytter sin API
- Eliminering af standardservicekontotilladelserne
- Bruger kubes seneste udgivelse
- Sørg for, at kube-dashboardet følger en stringent RBAC-politik
- Implementering af en pod-sikkerhedspolitik for at begrænse containeradgang og beskytte noden
11. Hvad er forskellene mellem applikationer installeret på værter og containere?
Et operativsystem og en arkitektur udgør implementerede applikationer. Operativsystemet vil have en kerne, der rummer de mange biblioteker, som en applikation kræver.
En maskine, der kører procescontainere, omtales som en containervært. Da denne type software er adskilt fra andre programmer, skal apps indeholde de nødvendige biblioteker. De binære filer kan ikke krænke rettighederne til nogen anden software, da de er adskilt fra resten af systemet.
12. Hvad mener du egentlig med Minikube?
Med Minikube kan Kubernetes nemt køres lokalt. Dette gør det muligt for en virtuel maskine at være vært for en Kubernetes-klynge med en enkelt node.
13. Hvordan kan Kubernetes-klyngen overvåges?
Driften og status for containere, der opererer under Kubernetes, kan spores ved hjælp af en række forskellige metoder. Prometheus, et af de mest brugte instrumenter, indeholder en række dele, som er opdelt i afsnittene nedenfor.
- Prometheus-serveren indsamler og gemmer tidsseriedata.
- Det inkluderer klientbiblioteker, der letter instrumentering af applikationskode.
- Den har en push-gateway, der kan understøtte midlertidige job.
- Der er eksportører med specialiserede funktioner til en række containertjenester, såsom StatsD, HAProxy, Graphite osv.
- Derudover vil du modtage en alarmansvarlig til at håndtere notifikationer på forskellige supportsystemer.
14. Hvilken funktion tjener Kubernetes noder?
Til drift af pods tilbyder Node afgørende funktioner. Nods, som også er kendt som håndlangere, kan fungere på enhver ægte eller virtuel computer afhængigt af klyngen.
I Kubernetes er noden den primære arbejdscomputer, mens masterkomponenter overvåger hver node individuelt.
15. Beskriv hipsteren i detaljer.
Heapster kombinerer dataene gennem hele klyngen, som Kubelet, som udføres på hver node, genererer. Dette containerstyringsværktøj er indbygget understøttet af denne Kubernetes-klynge, og det fungerer som en pod ligesom enhver anden pod i klyngen.
Grundlæggende indebærer dette lokalisering af hver node i klyngen og brug af en Kubernetes-agent på maskinen til at forespørge data fra klyngens Kubernetes-noder.
16. Beskriv driften af Kubernetes masterknudepunkt.
Masterknudepunktet hæver arbejderknudernes styrende og kontrollerende knudepunkter. Dette ligner en Kubernetes-klynge. Noderne er ansvarlige for klyngestyring samt API'et, der bruges til at konfigurere og administrere samlingens ressourcer. På grund af fordelen ved dedikerede pods, kan Kubernetes master noder køre sammen med Kubernetes selv.
17. Hvad adskiller beholderen fra poden?
Som en replikeringsenhed bruger Kubernetes en pod, som er en gruppe af beholdere. Containere er samlingen af koder, som en pod til en applikation skal oprette. Inden for den samme pod kan containere kommunikere med hinanden.
18. Hvad forstår du ved load balancer i Kubernetes?
En af de mest udbredte og accepterede metoder til serviceeksponering er en load balancer. Afhængigt af arbejdsmiljøet er en load balancer enten en intern load balancer eller en ekstern load balancer.
Mens den eksterne belastningsbalancer dirigerer trafik fra den eksterne belastning til backend-poderne, afbalancerer den interne belastningsbalancer automatisk belastningen og tildeler pods den nødvendige konfiguration.
19. Hvilken funktion udfører Kube-API-serveren?
For API-objekter verificerer og tilbyder denne type konfigurationsoplysninger. Den består af replikeringscontrollere, tjenester og pods. Derudover tilbyder den REST-operationer og klyngens grænseflade. Alle andre komponenter kommunikerer med hinanden via denne fælles frontend-klyngetilstand.
20. Hvad betyder Kubernetes' stateful sets?
Et workload API-objekt kaldet et stateful-sæt bruges til at administrere stateful-applikationer. Det bruges til at skalere sættene af pods og administrere implementeringer. I disklageret, der linker til stateful-sættet, blev tilstandsoplysningerne og andre modstandsdygtige data for stateful pods gemt og holdt ajour.
21. Hvordan undersøger du podens centrale logs?
For at hente centrale logfiler fra poden kan du bruge en af de to logningsstile.
- Brug en logningsagent på nodeniveau.
- Sidevognsbeholderen i åen
- Brug skovningsmidlet sammen med sidevognsbeholderen.
- Eksporter logfilerne direkte fra programmet
22. ClusterIP: Hvad er det?
Standard Kubernetes-tjenesten, ClusterIP, tilbyder en intern klyngetjeneste (uden ekstern adgang), som andre apps i din klynge kan få adgang til.
23. Fortæl mig om replikeringscontrollere?
For alle langvarige pods fungerer replikeringscontrollere som supervisorer. Det garanterer, at det nødvendige antal pods er aktive på ethvert tidspunkt, og at hver pod eller gruppe af pods har en ensartet struktur.
Hvis der er flere pods end det tilsigtede antal, afsluttes de overskydende pods. Derudover vil controlleren straks erstatte eventuelle defekte pods.
24. Hvordan fungerer Ingress-netværket, og hvad er det?
Brugere kan få adgang til dine Kubernetes-tjenester uden for Kubernetes-klyngen takket være et element kaldet en indgang. Ved at etablere regler, der specificerer, hvilke indgående forbindelser der når bestemte tjenester, kan brugere konfigurere adgang.
Dette API-objekt tilbyder de routingregler, der er nødvendige for at kontrollere, hvordan tjenesterne i Kubernetes-klyngen tilgås af besøgende uden for klyngen via HTTPS/HTTP. Med dette kan brugerne opbygge trafikdirigeringsreglerne hurtigt og effektivt uden at skulle lave flere load balancers eller eksponere hver service til noderne.
25. Prometheus i Kubernetes: hvad er det til?
Et open source-værktøjssæt kaldet Prometheus bruges til at overvåge og advare applikationen afhængigt af metrikker. Det tilbyder et dataskema og et forespørgselssprog og er i stand til at levere metriske oplysninger og handlinger. Det muliggør brugen af sprog til mange instrumentelle formål.
Ud over Alertmanager og Grafana tilbyder Prometheus-operatøren enkel overvågning af implementeringer og K8s-tjenester.
26. Hvad er hovedløs service?
En hovedløs tjeneste er en, der bruger en IP-adresse, men giver information om tilsluttede pods i stedet for belastningsbalancering.
27. Hvad skal jeg bruge for at køre Kubernetes-arkitekturen lokalt?
Til Kubernetes-integration er flere lokale infrastrukturer blevet ombygget. Der kræves ekspertise på højt niveau for at integrere storage, servere og netværk i et problemfrit system.
At vælge den passende netværks- og lagringshardware er afgørende for Kubernetes, da det muliggør interaktion med ressourcer til lagring, belastningsbalancere osv. Automatisering af netværks- og lagringskomponenter er en nøglekomponent i Kubernetes' værdiforslag.
28. Hvad forstår du ved Stateful set?
Workload API-elementet kendt som stateful-sættet bruges til at administrere stateful-applikationer. Den kan også bruges til at skalere sættene af pods og administrere implementeringer. Disklageret, som er forbundet til stateful-sættet, rummer tilstandsoplysningerne og andre data for de stateful-pods.
29. Hvad betyder håndlangere i Kubernetes?
I Kubernetes omtales en node som en arbejdsmaskine; tidligere var den kendt som en håndlangere. Baseret på en klynge kan det være en virtuel computer eller en rigtig maskine.
Hver node er styret af Kubernetes masterkomponenter og indeholder de tjenester, der er nødvendige for at betjene pods. Container runtime, kubelet og Kube-proxy er inkluderet i de tjenester, som noden tilbyder.
30. Hvilke funktioner udfører tjenester i Kubernetes-komponenterne?
Gennem tilvejebringelsen af den virtuelle IP-adresse fungerer en tjeneste som en abstraktion for pods. Den virtuelle IP-adresse letter brugerforbindelser til containere, der kører inde i pods. Det er en komponent, der bestemmer, hvordan beholdere er arrangeret i bælg.
31. Hvad er Helm helt præcist?
Det CNF-vedligeholdte Helm-programpakkeadministrationsregister er tilgængeligt for Kubernetes. Den forudkonfigurerede Hjelm diagrammer kan downloades og implementeres i dit Kubernetes-system. En af de mest populære pakkehåndteringsløsninger til Kubernetes-miljøet er denne. DevOps-teams kan implementere apps i produktions- og udviklingsmiljøerne, versionere dem og spore deres fremskridt ved hjælp af de eksisterende diagrammer.
32. Forklar PVC
PVC er et akronym for Persistent Volume Claim. Det er opbevaring, som Kubernetes har anmodet om til pods. Brugerkendskab til den underliggende klargøring er ikke nødvendig. Navnerummet, hvor poden dannes, og hvor denne påstand skal fremsættes, bør matche.
Konklusion
Kubernetes-interviewets spørgsmål og svar er fuldstændige.
Der er uden tvivl mere at lære om Kubernetes, den banebrydende teknologi, der har gjort det muligt at administrere og køre tusindvis af containere, men dette er et solidt sted at starte. For hjælp til samtaleforberedelse, se Hashdorks interviewserie.
Giv en kommentar