50 parasta DevOps-haastattelun kysymystä ja vastausta (PDF)

Tässä DevOps-haastattelukysymyksiä ja vastauksia tuoreemmille ja kokeneemmille hakijoille unelmatyönsä saamiseksi.

 

DevOps-haastattelukysymyksiä ja vastauksia fuksilaisille

1) Selitä mikä DevOps on?

Se on uusi termi IT-alalla, mikä on vain käytäntö, joka korostaa sekä ohjelmistokehittäjien että käyttöönotto- (operaatio)tiimin yhteistyötä ja kommunikaatiota. Se keskittyy ohjelmistotuotteen nopeampaan toimittamiseen ja julkaisujen epäonnistumisasteen alentamiseen.

👉 Ilmainen PDF-lataus: DevOps-haastattelun kysymyksiä ja vastauksia >>


2) Mainitse mitkä ovat DevOpsin tärkeimmät näkökohdat tai periaatteet?

DevOpsin tärkeimmät näkökohdat tai periaatteet ovat

  • Infrastruktuuri koodina
  • Jatkuva käyttöönotto
  • Automaatio
  • Seuranta
  • Turvallisuus

3) Mitkä ovat DevOpsin ydintoiminnot sovelluskehityksen ja infrastruktuurin kanssa?

DevOpsin ydintoiminnot ovat

Sovellus kehitys

  • Koodin rakentaminen
  • Koodin kattavuus
  • Yksikkötestaus
  • Pakkaus
  • Käyttöönotto

Infrastruktuuri

  • provisioinnin
  • Konfigurointi
  • orkestrointi
  • Käyttöönotto

4) Selitä, kuinka "infrastruktuurikoodia" käsitellään tai suoritetaan AWS:ssä?

AWS:ssä

  • Infrastruktuurin koodi on yksinkertaisessa JSON-muodossa
  • Tämä JSON-koodi järjestetään tiedostoiksi, joita kutsutaan malleiksi
  • Näitä malleja voidaan ottaa käyttöön AWS-devopsissa ja sitten hallita pinoina
  • Later CloudFormation-palvelu suorittaa luonti-, poisto-, päivitys- jne. toiminnot pinossa

5) Selitä, mikä komentosarjakieli on tärkein DevOps-insinöörille?

Yksinkertaisempi komentosarjakieli on parempi DevOps-insinöörille. Python näyttää olevan erittäin suosittu.

DevOps-haastattelukysymykset


6) Selitä, kuinka DevOps on hyödyllinen kehittäjille?

DevOps voi auttaa kehittäjiä korjaamaan vian ja ottamaan uusia ominaisuuksia nopeasti käyttöön. Se auttaa myös selkiyttämään ryhmän jäsenten välistä viestintää.


7) Luettele joitakin suosittuja työkaluja DevOpsille?

Jotkut DevOpsin suosituimmista työkaluista ovat

  • Jenkins
  • Nagios
  • Monit
  • ELK (Elasticsearch, Logstash, Kibana)
  • Jenkins
  • Satamatyöläinen
  • Ansible
  • mennä

8) Mainitse missä tapauksessa olet käyttänyt SSH:ta?

Olen käyttänyt SSH:ta kirjautumiseen etäkoneeseen ja työskentelemään komentorivillä. Tämän lisäksi olen käyttänyt sitä myös tunneliin järjestelmään helpottaakseni suojattua salattua viestintää kahden epäluotettavan isännän välillä suojaamattoman verkon kautta.


9) Selitä, kuinka käsittelet versioiden (versioiden) hallintaa?

Minun lähestymistapani versionhallinnan käsittelyyn olisi lähettää koodi SourceForgeen tai GitHubiin, jotta kaikki voivat tarkastella sitä. Lisäksi julkaisen viimeisimmän version tarkistuslistan varmistaakseni, että kaikki ratkaisemattomat ongelmat on ratkaistu.


10) Millaisia ​​HTTP-pyyntöjä on?

Http-pyyntöjen tyypit ovat

  • SAA
  • PÄÄ
  • PUT
  • POST
  • PATCH
  • POISTA
  • TRACE
  • CONNECT
  • VAIHTOEHDOT

11) Selitä, mitä tarkastaisit Jos Linux-build-palvelin alkaa yhtäkkiä hidastua?

Jos Linux-build-palvelin alkaa yhtäkkiä hidastua, tarkista seuraavat kolme asiaa

Sovellustason vianmääritys RAM-muistiin liittyvät ongelmat, levyn I/O-luku- ja kirjoitusongelmat, levytilaan liittyvät ongelmat jne.
Järjestelmätason vianmääritys Tarkista sovelluslokitiedosto TAI sovelluspalvelimen lokitiedosto, järjestelmän suorituskykyongelmat, verkkopalvelimen loki – tarkista HTTP-, tomcat lo-, jboss- tai WebLogic-lokit nähdäksesi, onko sovelluspalvelimen vastaus-/vastaanottoaika syynä hitauteen, muistivuotoon. sovellus
Dependent Services -vianmääritys Viruksiin liittyvät ongelmat, palomuuriin liittyvät ongelmat, verkkoongelmat, SMTP-palvelimen vasteaikaongelmat jne.

12) Mitkä ovat DevOpsin avainkomponentit?

Tässä muutamia tärkeitä DevOpsin elinkaaren vaiheet:

SQL

  • Jatkuva kehitys
  • Jatkuva integraatio
  • Jatkuva testaus
  • Jatkuva käyttöönotto
  • Jatkuva seuranta
  • Jatkuva palaute
  • Jatkuva OperaTIONS

13) Nimeä muutamia pilvialustoja, joita käytetään DevOps-toteutukseen

Suosittuja DevOps-toteutukseen käytettyjä pilvilaskenta-alustoja ovat:

  1. Google Cloud
  2. Amazon Web Services
  3. Microsoft Azure

14) Anna joitain etuja Version Control -järjestelmän käytöstä

  • Versionhallintajärjestelmän avulla tiimin jäsenet voivat työskennellä vapaasti minkä tahansa tiedoston kanssa milloin tahansa.
  • Kaikki aiemmat versiot ja versiot ovat tiiviisti pakattu VCS:n sisään.
  • Hajautettu VCS-kaltainen auttaa sinua tallentamaan projektin täydellisen historian, joten jos keskuspalvelimessa ilmenee vika, voit käyttää tiimisi jäsenen paikallista Git-varastoa.
  • Voit nähdä, mitä tarkkoja muutoksia tiedoston sisältöön on tehty

15) Selitä Git Bisect

Git bisect auttaa sinua löytämään virheen aiheuttaneen commit binäärihaun avulla.


16) Mikä on rakenne?

Rakennus on menetelmä, jossa lähdekoodi kootaan sen tarkistamiseksi, toimiiko se yhtenä yksikkönä. Rakennusprosessin aikana lähdekoodia kootaan, tarkistetaan, testataan ja otetaan käyttöön.


17) Mikä on Nukke?

nukke on hyödyllinen projektinhallintatyökalu. Se auttaa sinua automatisoimaan hallintotehtäviä.


18) Selitä kaksivaiheinen todennus

Kaksivaiheinen todennus on turvamenetelmä, jossa käyttäjä tarjoaa kaksi tapaa tunnistaa eri luokista.


19) Selitä termi "Canary Vapauta'.

Kanarian julkaisu on malli, joka vähentää riskiä uuden ohjelmistoversion tuomisesta tuotantoympäristöön. Se tehdään asettamalla se saataville hallitulla tavalla käyttäjän osajoukolle. Ennen kuin saat sen koko käyttäjäjoukon saataville.


20) Millaiset testaukset ovat tärkeitä sen varmistamiseksi, että uusi palvelu on valmis tuotantoon?

Sinun on suoritettava jatkuvaa testausta varmistaaksesi, että uusi palvelu on valmis tuotantoon.


DevOps-haastattelukysymyksiä ja vastauksia kokeneille

21) Mikä on Vagrant?

Varant on työkalu, jolla voidaan luoda ja hallita virtualisoituja ympäristöjä ohjelmistojen testaamiseen ja kehittämiseen.


22) Mitä hyötyä PTR:stä on DNS:ssä?

Osoitintietue, joka tunnetaan myös nimellä (PTR), käytetään käänteiseen DNS-hakuun.


23) Mikä on kokki?

Se on tehokas automaatioalusta, joka muuttaa infrastruktuurin koodiksi. Tässä työkalussa voit käyttää kirjoitusskriptejä, joita käytetään automatisoimaan prosesseja.


24) Mitkä ovat edellytykset DevOpsin käyttöönotolle?

Seuraavat ovat hyödylliset DevOps-toteutuksen edellytykset:

  • Vähintään yksi versionhallintaohjelmisto
  • Asianmukainen viestintä joukkueen jäsenten välillä
  • Automaattinen testaus
  • Automaattinen käyttöönotto

25) Nimeä joitain parhaita käytäntöjä, joita tulisi noudattaa DevOpsin menestyksen saavuttamiseksi.

Tässä on tärkeitä parhaita käytäntöjä DevOps-toteutukseen:

  • Toimitusnopeus tarkoittaa aikaa, joka kuluu mihin tahansa tehtävään saada ne tuotantoympäristöön.
  • Seuraa kuinka monta vikaa löytyy eri
  • On tärkeää mitata todellinen tai keskimääräinen toipumisaika, jos tuotantoympäristössä tapahtuu vika.
  • Asiakkaan ilmoittamien virheiden määrä vaikuttaa myös sovelluksen laatuun.

26) Selitä SubGIt-työkalu

SubGit auttaa sinua siirtämään SVN:n Gitiin. Sen avulla voit myös rakentaa kirjoitettavan Git-peilin paikallisesta tai etä Subversion-arkistosta.


27) Nimeä tärkeitä verkonvalvontatyökaluja

Jotkut näkyvimmistä verkonvalvontatyökaluista ovat:

  • Splunk
  • Icinga 2
  • Wireshark
  • Nagios
  • OpenNMS

28) Toimiiko näytönohjain Unity miten sinä voisit tietää?

Kun käytät komentoa

/usr/lib/Linux/unity_support_test-p

se antaa yksityiskohtaisen tulosteen Unityvaatimukset, ja jos ne täyttyvät, näyttökorttisi voi käyttää Unitya.


29) Selitä, kuinka käynnistysääni otetaan käyttöön Ubuntu?

Ota käyttöön käynnistysääni

  • Napsauta ohjauslaitetta ja napsauta sitten Käynnistysohjelmat
  • In Käynnistyssovellusasetukset -ikkunassa Lisää lisätäksesi merkinnän
  • Täytä sitten tiedot kommenttikentissä, kuten nimi, komento ja kommentti
/usr/bin/canberra-gtk-play—id= "desktop-login"—description= "play login sound"
  • Kirjaudu ulos ja kirjaudu sisään, kun olet valmis

Voit avata sen myös pikanäppäimellä Ctrl+Alt+T.


30) Mikä on nopein tapa avata Ubuntu terminaali tietyssä hakemistossa?

Avaa Ubuntu terminaalissa tietyssä hakemistossa, voit käyttää mukautettua pikanäppäintä.

Voit tehdä tämän kirjoittamalla uuden mukautetun näppäimistön komentokenttään genomi – terminaali – – toimiva – hakemisto = /polku/to/hakemisto.


31) Selitä, kuinka saat nykyisen näytön nykyisen värin Ubuntu työpöytä?

Voit avata taustakuvan The Gimpissä (kuvaeditorissa) ja valita sitten värin tietystä kohdasta dropper-työkalulla. Se antaa sinulle värin RGB-arvon siinä vaiheessa.


32) Selitä, kuinka luot käynnistysohjelmia työpöydälle Ubuntu?

Voit luoda käynnistysohjelmia työpöydälle Ubuntu voit käyttää

ALT+F2 kirjoita sitten ”gnome-desktop-item-edit –create-new~/desktop”, se käynnistää vanhan graafisen käyttöliittymän valintaikkunan ja luo käynnistysohjelman työpöydällesi.


33) Selitä mikä Memcached on?

Memcached on ilmainen ja avoimen lähdekoodin, korkean suorituskyvyn hajautetun muistin objektin välimuistijärjestelmä. Memcachedin ensisijainen tavoite on parantaa vasteaikaa datalle, joka voidaan muuten palauttaa tai rakentaa jostain muusta lähteestä tai tietokannasta. Sitä käytetään välttämään toiminnan tarvetta SQL-tietokannan tai muusta lähteestä toistuvasti hakemaan tietoja samanaikaista pyyntöä varten.

Memcachedia voidaan käyttää

  • Sosiaalinen verkostoituminen -> Profiilin välimuisti
  • Sisällön kokoaminen-> HTML/ sivun välimuisti
  • Mainosten kohdistus-> Evästeiden/profiilien seuranta
  • Suhde-> Istunnon välimuisti
  • Verkkokauppa -> Istunto ja HTML-välimuisti
  • Sijaintiperusteiset palvelut-> Tietokantakyselyn skaalaus
  • Pelit ja viihde-> Istunnon välimuisti

Memcache auttaa

  • Nopeuta hakuprosesseja
  • Se määrittää, mitä säilyttää ja mitä ei
  • Vähennä tietokantaan lähetettävien hakupyyntöjen määrää
  • Vähentää I/O-käyttöä (Input/Output) (kiintolevy)

Memcachedin haittapuoli on

  • Se ei ole pysyvä tietovarasto
  • Ei tietokanta
  • Se ei ole sovelluskohtainen
  • Se ei voi tallentaa suurta objektia välimuistiin

34) Mainitse joitain tärkeitä Memcachedin ominaisuuksia?

Memcachedin tärkeitä ominaisuuksia ovat mm

  • CAS-tunnukset: CAS-tunnus on liitetty välimuistista haettuun objektiin. Voit käyttää tätä merkkiä tallentaaksesi päivitetyn objektisi.
  • Takaisinsoitto: Se yksinkertaistaa koodia
  • getDelayed: Se lyhentää komentosarjan viivettä, joka odottaa tulosten palaamista palvelimelta
  • Binääriprotokolla: Voit käyttää binaariprotokollaa ASCII:n sijasta uudemmalla asiakkaalla
  • Igbinaari: Aikaisemmin asiakas sarjoitti arvon monimutkaisilla tiedoilla, mutta Memcachedissa voit käyttää igbinaarista vaihtoehtoa.

DevOps-haastattelukysymyksiä ja vastauksia 5+ kokemukselle

35) Selitä, onko mahdollista jakaa yksi Memcache-esiintymä useiden projektien välillä?

Kyllä, on mahdollista jakaa yksi Memcache-esiintymä useiden projektien välillä. Memcache on muistitila, ja voit käyttää memcachea yhdellä tai useammalla palvelimella. Voit myös määrittää asiakkaasi puhumaan tietylle esiintymäjoukolle. Joten voit ajaa kahta erilaista Memcache-prosessia samassa isännässä, mutta ne ovat kuitenkin täysin riippumattomia. Ellei, jos olet jakanut tietosi, on tarpeen tietää, mistä instanssista tiedot tulee hakea tai mihin ne tulee laittaa.


36) Sinulla on useita Memcache-palvelimia, joissa yksi memcache-palvelimista epäonnistuu ja sillä on tietosi. Yrittääkö se koskaan saada avaintietoja yhdeltä epäonnistuneelta palvelimelta?

Viallisen palvelimen tietoja ei poisteta, mutta siinä on säännös automaattiselle epäonnistumiselle, jonka voit määrittää useille solmuille. Fail-over voidaan laukaista minkä tahansa socket- tai Memcached-palvelintason virheiden aikana, ei tavallisten asiakasvirheiden, kuten olemassa olevan avaimen lisäämisen, aikana.


37) Selitä, kuinka voit minimoida Memcached-palvelimen katkokset?

  • Kun yksi ilmentymä epäonnistuu, useat niistä kaatuvat, ja tämä lisää tietokantapalvelimen kuormitusta, kun kadonneet tiedot ladataan uudelleen, kun asiakas tekee pyynnön. Tämän välttämiseksi, jos koodisi on kirjoitettu minimoimaan välimuistin leimat, se jättää minimaalisen vaikutuksen
  • Toinen tapa on tuoda esiin Memcachedin esiintymä uudessa koneessa käyttämällä kadonneen koneen IP-osoitetta
  • Koodi on toinen vaihtoehto palvelinkatkoksien minimoimiseksi, koska se antaa sinulle vapauden muuttaa Memcached-palvelinluetteloa vähällä työllä.
  • Aikakatkaisuarvon asettaminen on toinen vaihtoehto, jonka jotkin Memcached-asiakkaat käyttävät Memcached-palvelimen katkoksen yhteydessä. Kun Memcached-palvelimesi kaatuu, asiakas yrittää lähettää pyynnön, kunnes aikaraja saavutetaan

38) Selitä, kuinka voit päivittää Memcachedin, kun tiedot muuttuvat?

Kun tiedot muuttuvat, voit päivittää Memcached by

  • Välimuistin tyhjentäminen ennakoivasti: Välimuistin tyhjentäminen, kun lisäys tai päivitys tehdään
  • Välimuistin nollaus: Se on samanlainen kuin ensimmäinen menetelmä, mutta sen sijaan, että poistat avaimet ja odotat seuraavaa pyyntöä välimuistin päivittämiseksi, nollaa arvot lisäyksen tai päivityksen jälkeen.

39) Selitä mikä on Dogpile-ilmiö? Kuinka voit estää tämän vaikutuksen?

Dogpile-tehoste viittaa tapahtumaan, kun välimuisti vanhenee ja asiakkaan tekemät useat pyynnöt osuvat verkkosivustoihin samanaikaisesti. Tämä vaikutus voidaan estää käyttämällä semaforilukkoa. Tässä järjestelmässä, kun arvo vanhenee, ensimmäinen prosessi hankkii lukon ja alkaa tuottaa uutta arvoa.


40) Selitä, kuinka Memcachedia ei pidä käyttää?

  • Memcached yleinen väärinkäyttö on käyttää sitä tietovarastona, ei välimuistina
  • Älä koskaan käytä Memcachedia ainoana tietolähteenä, jota tarvitset sovelluksesi suorittamiseen. Tietojen tulee aina olla saatavilla myös toisesta lähteestä
  • Memcached on vain avain- tai arvovarasto, eikä se voi suorittaa kyselyä tiedoista tai iteroida sisältöä poimiakseen tietoja
  • Memcached ei tarjoa minkäänlaista suojausta salauksessa tai todentamisessa

41) Kun palvelin suljetaan, ovatko Memcachediin tallennetut tiedot edelleen käytettävissä?

Memcachediin tallennetut tiedot eivät ole kestäviä, joten jos palvelin suljetaan tai käynnistetään uudelleen, kaikki Memcachediin tallennetut tiedot poistetaan.


42) Mainitse mitä eroa on Memcachen ja Memcachedin välillä?

  • Välimuisti: Se on laajennus, jonka avulla voit työskennellä kätevien oliosuuntautuneiden (OOP) ja prosessirajapintojen kautta. Se on suunniteltu vähentämään tietokannan kuormitusta dynaamisissa verkkosovelluksissa.
  • Välimuistissa: Se on laajennus, joka käyttää libmemcached kirjasto, joka tarjoaa API:n viestintään Memcached-palvelimien kanssa. Sitä käytetään lisäämään dynaamisia verkkosovelluksia vähentämällä tietokannan kuormitusta. Se on uusin API.

43) Selitä sininen/vihreä käyttöönottomalli

Sininen/vihreä värityskuvio vastaa tärkeimpiin haasteisiin automaattisen käyttöönottoprosessin aikana. Blue/Green Deployment -lähestymistavassa sinun on varmistettava kaksi identtistä tuotantoympäristöä. Kuitenkin vain yksi heistä on LIVE-tilassa minä tahansa ajankohtana. LIVE-ympäristöä kutsutaan siniseksi ympäristöksi.

Kun tiimi valmistelee ohjelmistonsa seuraavaa julkaisua, he suorittavat viimeisen testausvaiheen ympäristössä, joka tunnetaan nimellä Green Environment. Vahvistuksen jälkeen liikenne ohjataan Green-ympäristöön.


44) Mitkä ovat säiliöt?

Kontit ovat kevyestä virtualisoinnista. Ne tarjoavat eristäytymisen prosessien välillä.


45) Mikä on post mortem -kokous DevOpsiin viitaten?

Post mortem -kokouksessa keskustellaan siitä, mikä meni pieleen ja mihin toimiin sinun on ryhdyttävä epäonnistumisten välttämiseksi.


46) Mikä on helpoin tapa rakentaa pieni pilvi?

VMfres on yksi tehokkaimmista vaihtoehdoista IaaS-pilven tekemiseen Virtualista Box VM:t hetkessä. Jos kuitenkin haluat kevyen PaaS:n, niin Dokku on hyvä vaihtoehto, koska bash-skripti voi olla PaaS Dokku-säiliöistä.


47) Nimeä kaksi työkalua, joita käytetään telakointiaseman verkkoon.

Docker-verkkoon voit käyttää Kubernetesia ja Docker-parvia.


48) Nimeä joitain alueita, joilla DevOps on otettu käyttöön

DevOpsia käytetään tuotantoon, IT-toimintoihin, tuotannon palautteeseen ja sen ohjelmistokehitykseen.


49) Mikä on CBD?

CBD tai komponenttipohjainen kehitys on ainutlaatuinen tapa lähestyä tuotekehitystä. Tässä menetelmässä kehittäjät etsivät aina olemassa olevia hyvin määriteltyjä, testattuja ja todennettuja komponentteja muodostaakseen ja kootaakseen ne tuotteeksi sen sijaan, että kehittäisivät tyhjästä.


50) Selitä pariohjelmointi viitaten DevOpsiin

Pariohjelmointi on Extreme Programming Rulesin insinöörikäytäntö. Tässä menetelmässä kaksi ohjelmoijaa työskentelee samassa järjestelmässä, samalla suunnittelulla/algoritmilla/koodilla.

Yksi ohjelmoija toimii "kuljettajana". Muut toimii "tarkkailijana", joka seuraa jatkuvasti projektin etenemistä ongelmien tunnistamiseksi. Roolit voidaan vaihtaa milloin tahansa ilman ennakkoilmoitusta.


51) Selitä resilienssitesti

Testiä, joka varmistaa palautumisen ilman tietojen ja toimivuuden menetystä vian jälkeen, kutsutaan joustavuustesteiksi.


52) Nimeä kolme tärkeää DevOpsin KPI:tä

Kolme yleisintä DevOps KPI:tä ovat:

  • Sillä välin epäonnistumisesta toipumiseen
  • Käyttöönottotaajuus
  • Epäonnistuneiden käyttöönottojen prosenttiosuus

Nämä haastattelukysymykset auttavat myös vivassasi (suullinen)