Sisällysluettelo[Piilottaa][Näytä]
- 1. Mikä Kubernetes on?
- 2. Mitä tarkoitat Kubernetesin kontilla?
- 3. Mitkä ovat Kubernetesin pääkomponentit?
- 4. Mitä tarkoitat orkestraatiolla kubernetesissa?
- 5. Mikä Kubernetes-klusteri oikein on?
- 6. Miten Kubernetes yksinkertaistaa konttikäyttöä?
- 7. Mitä perustavanlaatuisia eroja on Kubernetesin ja Docker Swarmin välillä?
- 8. Mikä on Kubernetesin nimiavaruus?
- 9. Mikä Kubernetes etcd -pääkomponentti tarkalleen on?
- 10. Mitä ratkaisuja Kubernetesin API-suojaukseen on olemassa?
- 11. Mitä eroja isännissä ja säilöissä käytettyjen sovellusten välillä on?
- 12. Mitä tarkoitat Minikubella?
- 13. Miten Kubernetes-klusteria voidaan seurata?
- 14. Mitä toimintoa Kubernetes-solmut palvelevat?
- 15. Kuvaile hipsteriä yksityiskohtaisesti.
- 16. Kuvaile Kubernetes-pääsolmun toimintaa.
- 17. Mikä erottaa säiliön kotelosta?
- 18. Mitä ymmärrät Kubernetesin kuormituksen tasapainottimella?
- 19. Mitä toimintoa Kube-API-palvelin suorittaa?
- 20. Mitä Kubernetesin tilalliset joukot tarkoittavat?
- 21. Miten tutkit podin keskuslokit?
- 22. ClusterIP: Mikä se on?
- 23. Kerro minulle replikointiohjaimista?
- 24. Miten Ingress-verkko toimii ja mitä se on?
- 25. Prometheus Kubernetesissa: mihin se on tarkoitettu?
- 26. Mitä on päätön palvelu?
- 27. Mitä tarvitsen Kubernetes-arkkitehtuurin ajamiseen paikallisesti?
- 28. Mitä ymmärrät Stateful-joukolla?
- 29. Mitä kätyrit tarkoittavat Kubernetesissa?
- 30. Mitä toimintoja palvelut suorittavat Kubernetes-komponenttien sisällä?
- 31. Mikä Helm oikein on?
- 32. Selitä PVC
- Yhteenveto
Google loi alun perin Kubernetesin, avoimen lähdekoodin säilön orkesteriteknologian, vuonna 2014. Säiliösovellusten käyttöönotto, skaalaus ja hallinta oli kaikki tarkoitettu automatisoitavaksi.
Kubernetes on kehittynyt ajan myötä alan de facto standardiksi konttien orkestroinnissa, ja kaikenkokoiset yritykset käyttävät sitä laajasti työkuormituksensa hallintaan konteissa.
Kubernetesin merkitys nykymaailmassa perustuu sen kykyyn tarjota johdonmukainen menetelmä konttisovellusten hallintaan mittakaavassa, joka kattaa useita klustereita ja pilviympäristöjä. Tämän ansiosta yritykset voivat hallita, laajentaa ja ottaa käyttöön sovelluksiaan nopeasti ja tehokkaasti.
Säilitettyjen sovellusten ylläpitoa helpottaa entisestään Kubernetesin laaja ominaisuussarja, joka sisältää itsekorjauksen, automaattisen skaalauksen ja rullaavat päivitykset.
Kun yhä useammat yritykset käyttävät konttia ja mikropalveluita nopeuttaakseen sovelluskehitys- ja käyttöönottoprosessejaan, Kubernetesin toiminta-alueen odotetaan kasvavan tulevaisuudessa.
Pilvipohjaisten teknologioiden käyttöönotto ja yleinen siirtyminen monipilvi- ja hybridipilvijärjestelmiin riippuvat molemmat suuresti Kubernetesista. Kun yhä useampia laitteita on yhdistetty Internetiin, myös Kubernetes tulee yhä enemmän käyttöön reunan tietojenkäsittely ja IoT.
Oletan, että olet jo tietoinen näistä yksityiskohdista, koska luet tätä Kubernetes-haastattelukysymyksiä koskevaa viestiä, joka kertoo sinulle useimmin kysytyistä haastattelukysymyksistä. Aloitetaanpa.
1. Mikä Kubernetes on?
Kubernetes on avoimen lähdekoodin kehys konttisovellusten orkestrointiin ja hallinnointiin. Se mahdollistaa konttisovellusten johdonmukaisen ja tehokkaan käyttöönoton, skaalauksen ja ylläpidon.
Kubernetes tarjoaa yhden menetelmän konttisovellusten hallintaan mittakaavassa, ja se on suunniteltu toimimaan useissa klustereissa ja pilviympäristöissä.
Itsekorjautuva, automaattinen skaalaus ja jatkuvat päivitykset ovat vain muutamia ominaisuuksia, jotka tekevät konttisovellusten hallinnasta entistä helpompaa.
2. Mitä tarkoitat Kubernetesin kontilla?
Säiliöt ovat kannettava, kevyt ja omavarainen lähestymistapa pakkaamiseen ja ohjelmistojen käyttöön. Sovellusten pakkaus ja käyttöönotto tapahtuu johdonmukaisesti ja tehokkaasti Kubernetesissa konteilla.
Pitääkseen itsensä erillään muista säilöistä ja isäntäkoneesta jokainen säilö suorittaa vain yhden prosessin. Sovelluksen riippuvuudet, kirjastot ja määritystiedostot sisältyvät kaikki säilön otteeseen, joka toimii säilön määritelmänä.
Säilön suunniteltu määrä kopioita toimii aina, koska Kubernetes käyttää konttien orkestrointia säiliöiden hallintaan ja skaalaukseen. Tämän ansiosta kehittäjien on helppoa hallita ja ottaa käyttöön sovelluksiaan useissa klustereissa ja pilviympäristöissä.
3. Mitkä ovat Kubernetesin pääkomponentit?
Tässä ovat kubenetterin pääkomponentit:
- Kubernetes-isäntä: Tämä komponentti, joka sisältää myös ohjaimen hallinnan ja ajoittimen, etcd (hajautetun avainarvovaraston), API-palvelimen ja muut komponentit, vastaa koko klusterin hallinnasta.
- Solmut: Nämä ovat työasemia, joissa konttiohjelmat suoritetaan. Kubelet, joka on vuorovaikutuksessa isäntäkoneen kanssa klusterin tarkoitetun tilan ylläpitämiseksi, suoritetaan jokaisessa solmussa yhdessä säilön suoritusajan (kuten Docker) kanssa.
- Podit: Kubernetes-objektimallin pienin ja peruselementti on pod, joka toimii isäntänä yhdelle tai useammalle säiliölle.
- Palvelut: Palvelut tarjoavat johdonmukaisen päätepisteen podille ja mahdollistavat kuormituksen tasapainotuksen ja palvelun löytämisen.
- Replikointiohjaimet: Ne takaavat, että vaadittu määrä pod-replikoita on aina toiminnassa.
- Salaisuudet ja konfigurointikartat: Näitä resursseja käytetään kokoonpanotietojen ja salaisuuksien ylläpitämiseen podille ja muille klusteriobjekteille.
4. Mitä tarkoitat orkestraatiolla kubernetesissa?
Kubernetesissa termi "orkestrointi" viittaa konttien ja niihin liittyvien resurssien automatisoituun hallintaan ja koordinointiin. Se sisältää toimintoja, kuten verkottumista, skaalautuvuutta, käyttöönottoa ja itsensä parantamista. Kubernetes ohjaa sovelluksia käyttämällä objekteja, kuten podeja, palveluita ja replikointiohjaimia.
Podit, joihin mahtuu yksi tai useampi säiliö, ovat pienimpiä käyttöönotettavia yksiköitä. Palvelut hoitavat kuormituksen tasapainoittaminen ja palvelun löytäminen ja anna podille vankka päätepiste. Kodin kopio toimii aina vaaditulla määrällä kopioita replikointiohjaimien ansiosta.
5. Mikä Kubernetes-klusteri oikein on?
Joukko solmuja, jotka käyttävät konttisovelluksia eri yhteyksissä ja eri koneissa – pilvipohjaisissa, fyysisessä, virtuaalisessa ja paikan päällä – muodostavat Kubernetes-klusterin. Se helpottaa sovellusten yksinkertaista hallintaa ja siirtoa sekä niiden luomista.
6. Miten Kubernetes yksinkertaistaa konttikäyttöä?
Koska tyypillinen sovellus toimisi konttiklusterissa monilla isännillä, kaikkien näiden säiliöiden pitäisi olla yhteydessä toisiinsa.
Joten tämän saavuttamiseksi tarvitaan laajamittainen järjestelmä, joka voi skaalata, kuormittaa tasapainoa ja valvoa kontteja. Sinun on käytettävä Kubernetesia konttikäyttöönoton helpottamiseksi, koska se on pilvitagnostinen ja voi toimia millä tahansa julkisella tai yksityisellä palveluntarjoajalla.
7. Mitä perustavanlaatuisia eroja on Kubernetesin ja Docker Swarmin välillä?
Ajoita ja ryhmittele Docker-säilöjä Docker Swarmin avulla, joka on Dockerin natiivi, avoimen lähdekoodin säilön orkestrointityökalu. Seuraavat ominaisuudet erottavat Swarmin Kubernetesista:
- Vaikka Kubernetes ja Docker Swarm eivät molemmilla ole automaattisia skaalausominaisuuksia, Dockerin skaalaus on viisi kertaa nopeampaa kuin Kubernetes.
- Kubernetes tarjoaa graafisen käyttöliittymän kojelaudan muodossa, mutta Docker Swarmista puuttuu sellainen.
- Verrattuna Kubernetesiin, joka on vaikeampi asentaa, mutta joka takaa vahvan klusterin, Docker Swarm on helpompi asentaa, mutta siinä ei ole vakaata klusteria.
- Vaikka Kubernetes sisältää sisäänrakennetut ominaisuudet kirjaamiseen ja valvontaan, Docker tarvitsee ulkoisia työkaluja, kuten ELK-pinon.
- Liikkuvat päivitykset voidaan ottaa käyttöön Dockerin kautta, mutta automaattisia palautuksia ei voida tehdä. Pyöriviä päivityksiä sekä automaattisia palautuksia voidaan ottaa käyttöön Kubernetesin avulla.
8. Mikä on Kubernetesin nimiavaruus?
Kubernetes-nimiavaruutta käytetään ympäristössä, jossa useita käyttäjiä työskentelee lukuisissa projekteissa laajalla maantieteellisellä alueella. Nimiavaruus jakaa klusterin resurssit useille käyttäjille.
9. Mikä Kubernetes etcd -pääkomponentti tarkalleen on?
Etcd on tärkeä osa Kubernetes-pääpalvelinta. Lisäksi se toimii Kubernetes-klusterin keskuksena, jossa kohteet tallennetaan hajautettuun avainarvovarastoon.
Replikointitekniikkaa käytetään yhdessä algoritmin kanssa, joka säilyttää etcd:hen tallennetut tiedot palvelimien välillä. Kun verrataan ja vaihdetaan tietoja etcd-palvelimien välillä, optimistista valuuttaa käytetään minimoimaan lukitustilanteet ja lisäämään palvelimen nopeutta.
10. Mitä ratkaisuja Kubernetesin API-suojaukseen on olemassa?
API-suojauksen tarjoaminen voidaan tehdä alla luetellulla tavalla:
- API-todennuksen avulla
- Sopivan todennustilan valitseminen API-palvelimen todennustilalle = Solmu, RBAC
- RBAC-virheiden seuranta
- Varmistaa, että TLS:ää käytetään liikenteen turvaamiseen
- Authorization-mode=Webhookilla varmistaaksesi, että Kubeless suojaa API-liittymänsä
- Palvelutilin oletusoikeuksien poistaminen
- Käyttää kuben uusinta julkaisua
- Varmista, että kube-dashboard noudattaa tiukkaa RBAC-käytäntöä
- Pod-suojauskäytännön käyttöönotto kontin pääsyn rajoittamiseksi ja solmun suojaamiseksi
11. Mitä eroja isännissä ja säilöissä käytettyjen sovellusten välillä on?
Käyttöjärjestelmä ja arkkitehtuuri muodostavat käyttöönotetut sovellukset. Käyttöjärjestelmässä on ydin, joka sisältää useita sovelluksen tarvitsemia kirjastoja.
Konetta, joka käyttää prosessisäiliöitä, kutsutaan konttiisäntäksi. Koska tämäntyyppiset ohjelmistot eroavat muista ohjelmista, sovelluksissa on oltava tarvittavat kirjastot. Binaarit eivät voi loukata minkään muun ohjelmiston oikeuksia, koska ne on erotettu muusta järjestelmästä.
12. Mitä tarkoitat Minikubella?
Minikuben avulla Kubernetes on helppo ajaa paikallisesti. Tämä antaa virtuaalikoneen isännöidä Kubernetes-klusteria yhdellä solmulla.
13. Miten Kubernetes-klusteria voidaan seurata?
Kubernetesin alla toimivien säiliöiden toimintaa ja tilaa voidaan seurata useilla eri menetelmillä. Prometheus, yksi eniten käytetyistä instrumenteista, sisältää useita osia, jotka on eritelty alla olevissa osioissa.
- Prometheus-palvelin kerää ja tallentaa aikasarjatietoja.
- Se sisältää asiakaskirjastoja, jotka helpottavat sovelluskoodin instrumentointia.
- Siinä on push-gateway, joka voi tukea tilapäisiä työpaikkoja.
- On viejiä, joilla on erikoistoiminnot erilaisiin konttipalveluihin, kuten StatsD, HAProxy, Graphite jne.
- Lisäksi saat hälytyspäällikön käsittelemään eri tukijärjestelmien ilmoituksia.
14. Mitä toimintoa Kubernetes-solmut palvelevat?
Node tarjoaa keskeisiä toimintoja podien toiminnan kannalta. Nodit, jotka tunnetaan myös kätyrinä, voivat toimia missä tahansa todellisessa tai virtuaalisessa tietokoneessa klusterista riippuen.
Kubernetesissa solmu on ensisijainen työntekijätietokone, kun taas pääkomponentit valvovat jokaista solmua erikseen.
15. Kuvaile hipsteriä yksityiskohtaisesti.
Heapster yhdistää tiedot koko klusterista, jonka Kubelet, joka suoritetaan jokaisessa solmussa, luo. Tämä Kubernetes-klusteri tukee natiivisti tätä säilönhallintatyökalua, ja se toimii podina aivan kuten mikä tahansa muu klusterin pod.
Periaatteessa tämä edellyttää klusterin jokaisen solmun paikantamista ja koneessa olevan Kubernetes-agentin käyttämistä tietojen kyselyyn klusterin Kubernetes-solmuista.
16. Kuvaile Kubernetes-pääsolmun toimintaa.
Pääsolmu nostaa työntekijäsolmujen hallitsevia ja ohjaussolmuja. Tämä on samanlainen kuin Kubernetes-klusteri. Solmut vastaavat klusterin hallinnasta sekä API:sta, jota käytetään kokoelman resurssien määrittämiseen ja hallintaan. Erillisten podien edun vuoksi Kubernetes-pääsolmut voivat toimia itse Kubernetesin rinnalla.
17. Mikä erottaa säiliön kotelosta?
Replikointiyksikkönä Kubernetes käyttää podia, joka on ryhmä säiliöitä. Säilöt ovat kokoelma koodeja, jotka sovelluksen ryhmän tulee luoda. Samassa kotelossa säiliöt voivat kommunikoida keskenään.
18. Mitä ymmärrät Kubernetesin kuormituksen tasapainottimella?
Yksi yleisimmistä ja hyväksytyimmistä palvelualtistusmenetelmistä on kuormituksen tasapainotin. Kuormanjakolaite on työympäristöstä riippuen joko sisäinen tai ulkoinen kuormantasaaja.
Ulkoinen kuormitustasaaja reitittää liikenteen ulkoisesta kuormasta taustayksiköihin, kun taas sisäinen kuormitustasaaja tasapainottaa kuorman automaattisesti ja määrittää podille tarvittavat asetukset.
19. Mitä toimintoa Kube-API-palvelin suorittaa?
API-objekteille tämä tyyppi vahvistaa ja tarjoaa määritystiedot. Se koostuu replikointiohjaimista, palveluista ja podeista. Lisäksi se tarjoaa REST-toiminnot ja klusterin käyttöliittymän. Kaikki muut komponentit kommunikoivat keskenään tämän yhteisen käyttöliittymäklusterin tilan kautta.
20. Mitä Kubernetesin tilalliset joukot tarkoittavat?
Tilapitoisten sovellusten hallintaan käytetään työkuorman API-objektia, jota kutsutaan tilapitoiseksi joukoksi. Sitä käytetään podijoukkojen skaalaamiseen ja käyttöönottojen hallintaan. Tilatietoiseen joukkoon linkittävään levymuistiin tallennettiin ja pidettiin ajan tasalla tilatiedot ja muut kimmoisat tiedot.
21. Miten tutkit podin keskuslokit?
Keskuslokien hakemiseen podista voit käyttää jompaakumpaa kahdesta kirjaustyylistä.
- Käytä kirjausagenttia solmutasolla.
- Sivuvaunukontti virrassa
- Käytä hakkuuainetta yhdessä sivuvaunukontin kanssa.
- Vie lokit suoraan ohjelmasta
22. ClusterIP: Mikä se on?
Kubernetes-oletuspalvelu, ClusterIP, tarjoaa sisäisen klusteripalvelun (ilman ulkoista pääsyä), jota muut klusterisi sovellukset voivat käyttää.
23. Kerro minulle replikointiohjaimista?
Replikointiohjaimet toimivat valvojina kaikissa pitkään käytössä olevissa podeissa. Se takaa, että tarvittava määrä paloja on aktiivisia joka hetki ja että jokaisella podilla tai pod-ryhmällä on yhtenäinen rakenne.
Jos paloja on enemmän kuin suunniteltu määrä, ylimääräiset palot lopetetaan. Lisäksi ohjain vaihtaa välittömästi kaikki vialliset kotelot.
24. Miten Ingress-verkko toimii ja mitä se on?
Käyttäjät voivat käyttää Kubernetes-palveluitasi Kubernetes-klusterin ulkopuolelta sisääntulo-nimisen kohteen ansiosta. Käyttäjät voivat määrittää pääsyn luomalla säännöt, jotka määrittelevät, mitkä saapuvat yhteydet saavuttavat tietyt palvelut.
Tämä API-objekti tarjoaa reitityssäännöt, joita tarvitaan hallitsemaan, kuinka klusterin ulkopuolelta tulevat vierailijat käyttävät HTTPS/HTTP:n kautta Kubernetes-klusterin palveluita. Tämän avulla käyttäjät voivat rakentaa liikenteen reitityssäännöt nopeasti ja tehokkaasti ilman, että heidän tarvitsee tehdä useita kuormituksen tasaajia tai paljastaa jokaista palvelua solmuille.
25. Prometheus Kubernetesissa: mihin se on tarkoitettu?
Avoimen lähdekoodin työkalupakkia nimeltä Prometheus käytetään sovelluksen valvontaan ja varoittamiseen mittareiden mukaan. Se tarjoaa dataskeeman ja kyselykielen ja pystyy toimittamaan mittaustietoja ja toimintoja. Se mahdollistaa kielen käytön moniin instrumentaalisiin tarkoituksiin.
Alertmanagerin ja Grafanan lisäksi Prometheus-operaattori tarjoaa yksinkertaista seurantaa käyttöönotoksille ja K8s-palveluille.
26. Mitä on päätön palvelu?
Päätön palvelu on sellainen, joka käyttää IP-osoitetta, mutta antaa tietoa liitetyistä podista kuormituksen tasapainotuksen sijaan.
27. Mitä tarvitsen Kubernetes-arkkitehtuurin ajamiseen paikallisesti?
Kubernetes-integraatiota varten useita paikallisia infrastruktuureja on uudistettu. Tallennustilan, palvelinten ja verkkojen yhdistäminen saumattomaksi järjestelmäksi tarvitaan korkeatasoista asiantuntemusta.
Sopivan verkko- ja tallennuslaitteiston valitseminen on Kubernetesille välttämätöntä, koska se mahdollistaa vuorovaikutuksen tallennusresurssien, kuormantasainten jne. kanssa. Verkko- ja tallennuskomponenttien automatisointi on keskeinen osa Kubernetesin arvolupausta.
28. Mitä ymmärrät Stateful-joukolla?
Työkuorman API-kohdetta, joka tunnetaan nimellä tilallinen joukko, käytetään tilallisten sovellusten hallintaan. Sitä voidaan käyttää myös podijoukkojen skaalaamiseen ja käyttöönottojen hallintaan. Levymuisti, joka on kytketty tilatietoiseen joukkoon, sisältää tilatietoa ja muuta dataa tilallisia podeja varten.
29. Mitä kätyrit tarkoittavat Kubernetesissa?
Kubernetesissa solmua kutsutaan työntekijäkoneeksi; aiemmin se tunnettiin kätyrinä. Klusterin perusteella se voi olla virtuaalinen tietokone tai todellinen kone.
Kubernetes-pääkomponentit hallitsevat jokaista solmua, ja ne sisältävät podien käyttämiseen tarvittavat palvelut. Säilön suoritusaika, kubelet ja Kube-välityspalvelin sisältyvät solmun tarjoamiin palveluihin.
30. Mitä toimintoja palvelut suorittavat Kubernetes-komponenttien sisällä?
Virtuaalisen IP-osoitteen tarjoamisen kautta palvelu toimii podien abstraktiona. Virtuaalinen IP-osoite helpottaa käyttäjien yhteyksiä koteloiden sisällä oleviin säiliöihin. Se on komponentti, joka määrittää, kuinka säiliöt on järjestetty koteloihin.
31. Mikä Helm oikein on?
CNF:n ylläpitämä Helm-sovelluspakettien hallintarekisteri on saatavilla Kubernetesille. Esikonfiguroitu Ruorikaaviot voidaan ladata ja ottaa käyttöön Kubernetes-järjestelmässäsi. Yksi Kubernetes-ympäristön suosituimmista paketinhallintaratkaisuista on tämä. DevOps-tiimit voivat ottaa sovelluksia käyttöön tuotanto- ja kehitysympäristöissä, versioida niitä ja seurata niiden edistymistä olemassa olevien kaavioiden avulla.
32. Selitä PVC
PVC on lyhenne sanoista Persistent Volume Claim. Kubernetes on pyytänyt paloille tallennustilaa. Käyttäjien tuntemus taustalla olevasta asennuksesta ei ole välttämätöntä. Nimiavaruuden, johon pod muodostetaan ja johon tämä vaatimus tulee tehdä, tulee vastata.
Yhteenveto
Kubernetes-haastattelun kysymykset ja vastaukset ovat valmiit.
On epäilemättä enemmän opittavaa Kubernetesista, huipputeknologiasta, jonka ansiosta on mahdollista hallita ja käyttää tuhansia kontteja, mutta tämä on hyvä paikka aloittaa. Ohjeita haastattelun valmisteluun, katso Hashdorkin haastattelusarja.
Jätä vastaus