Topp 50 DevOps intervju spørsmål & Svar

Anonim

Last ned PDF

1) Forklar hva DevOps er?

Det er et nylig voksende begrep innen IT-feltet, som ikke er noe annet enn en praksis som legger vekt på samarbeid og kommunikasjon mellom både programvareutviklere og distribusjonsteam. Det fokuserer på å levere programvareprodukt raskere og redusere feilprosenten for utgivelser.

2) Nevn hva de viktigste aspektene eller prinsippet bak DevOps er?

De viktigste aspektene eller prinsippet bak DevOps er

  • Infrastruktur som kode
  • Kontinuerlig distribusjon
  • Automasjon
  • Overvåkning
  • Sikkerhet

3) Hva er kjernevirksomheten til DevOps med applikasjonsutvikling og med infrastruktur?

Kjernevirksomheten til DevOps er

Søknadsutvikling

  • Kodebygging
  • Kodedekning
  • Enhetstesting
  • Emballasje
  • Utplassering

Infrastruktur

  • Provisjonering
  • Konfigurasjon
  • Orkestrering
  • Utplassering

4) Forklar hvordan “infrastrukturkode” behandles eller utføres i AWS?

I AWS,

  • Koden for infrastruktur vil være i enkelt JSON-format
  • Denne JSON-koden vil bli organisert i filer som kalles maler
  • Disse malene kan distribueres på AWS devops og deretter administreres som stabler
  • Senere vil CloudFormation-tjenesten utføre operasjonen Opprette, slette, oppdatere osv. I stabelen

5) Forklar hvilket skriptspråk som er viktigst for en DevOps-ingeniør?

Et enklere skriptspråk vil være bedre for en DevOps-ingeniør. Python ser ut til å være veldig populær.

6) Forklar hvordan DevOps er nyttig for utviklere?

DevOps kan være nyttig for utviklere å fikse feilen og implementere nye funksjoner raskt. Det hjelper også til klarere kommunikasjon mellom teammedlemmene.

7) List opp noen populære verktøy for DevOps?

Noen av de populære verktøyene for DevOps er

  • Jenkins
  • Nagios
  • Monit
  • ELK (Elasticsearch, Logstash, Kibana)
  • Jenkins
  • Docker
  • Ansible
  • Git

8) Nevn i hvilket tilfelle har du brukt SSH?

Jeg har brukt SSH til å logge på en ekstern maskin og jobbe på kommandolinjen. Ved siden av dette har jeg også brukt den til å tunnelere inn i systemet for å muliggjøre sikker kryptert kommunikasjon mellom to ikke-klarerte verter over et usikkert nettverk.

9) Forklar hvordan du vil håndtere revisjonskontroll (versjon)?

Min tilnærming til å håndtere revisjonskontroll ville være å legge koden på SourceForge eller GitHub slik at alle kan se den. Jeg vil også legge ut sjekklisten fra forrige revisjon for å forsikre meg om at eventuelle uløste problemer er løst.

10) Hva er typer Http-forespørsler?

Typer Http-forespørsler er

  • HODE
  • SETTE
  • POST
  • LAPP
  • SLETT
  • SPOR
  • KOBLE
  • ALTERNATIVER

11) Forklar hva du vil sjekke hvis en Linux-build-server plutselig begynner å bli treg?

Hvis en Linux-build-server plutselig begynner å bli treg, vil du se etter følgende tre ting

  • Feilsøking på applikasjonsnivå
RAM-relaterte problemer, Disk I / O-lese- og skriveproblemer, Disk Space-relaterte problemer osv.
  • Feilsøking på systemnivå
Se etter applikasjonsloggfil ELLER applikasjonsserverloggfil, systemytelsesproblemer, webserverlogg - sjekk HTTP, tomcat lo, jboss eller WebLogic-logger for å se om applikasjonsserverens svar / mottakstid er problemene for treghet, minnelekkasje av noe applikasjon
  • Feilsøking for avhengige tjenester
Antivirusrelaterte problemer, Brannmurrelaterte problemer, Nettverksproblemer, SMTP-serveres responstidsproblemer, etc.

12) Hva er nøkkelkomponentene til DevOps?

De viktigste komponentene i DevOps er:

  • Kontinuerlig integrering
  • Kontinuerlig testing
  • Kontinuerlig levering
  • Kontinuerlig overvåking

13) Nevn noen få skyplattformer som brukes til implementering av DevOps

Populær Cloud computing-plattform som brukes til implementering av DevOps er:

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

14) Gi noen fordeler med å bruke versjonskontrollsystemet

  • Versjonskontrollsystemet lar teammedlemmer jobbe fritt på hvilken som helst fil når som helst.
  • Alle tidligere versjoner og varianter er tett pakket inn i VCS.
  • En distribuert VCS som hjelper deg med å lagre hele historikken til prosjektet, så i tilfelle en sammenbrudd på den sentrale serveren, kan du bruke teammedlemmets lokale Git-arkiv.
  • Lar deg se hvilke eksakte endringer som gjøres i filens innhold

15) Forklar Git Bisect

Git bisect hjelper deg med å finne forpliktelsen som introduserte en feil ved hjelp av binært søk.

16) Hva er konstruksjonen?

En build er en metode der kildekoden settes sammen for å sjekke om den fungerer som en enkelt enhet. I byggeprosessen vil kildekoden gjennomgå kompilering, inspeksjon, testing og distribusjon.

17) Hva er Puppet?

Puppet er et nyttig prosjektledelsesverktøy. Det hjelper deg med å automatisere administrasjonsoppgaver.

18) Forklar tofaktorautentisering

To-faktor autentisering er en sikkerhetsmetode der brukeren gir to måter å identifisere fra separate kategorier.

19) Forklar begrepet 'Canary Release'.

En kanarifrigjøring er et mønster som reduserer risikoen for å introdusere en ny versjonsprogramvare i produksjonsmiljøet. Det gjøres ved å gjøre det tilgjengelig på en kontrollert måte for en delmengde av brukeren. Før du gjør det tilgjengelig for hele brukersettet.

20) Hvilke typer testing er viktig for å sikre at ny tjeneste er klar til produksjon?

Du må gjennomføre kontinuerlig testing for å sikre at den nye tjenesten er klar til produksjon.

21) Hva er Vagrant?

En vagrant er et verktøy som kan opprette og administrere virtualiserte miljøer for testing og utvikling av programvare.

22) Hva er bruken av PTR i DNS?

Pekeroppføring som også er kjent som (PTR) brukes til omvendt DNS-oppslag.

23) Hva er kokk?

Det er en kraftig automatiseringsplattform som forvandler infrastruktur til kode. I dette verktøyet kan du bruke skrive-skript som brukes til å automatisere prosesser.

24) Hva er forutsetningene for implementering av DevOps?

Følgende er de nyttige forutsetningene for implementering av DevOps:

  • Minst én versjonskontrollprogramvare
  • Riktig kommunikasjon mellom teammedlemmene
  • Automatisert testing
  • Automatisert distribusjon

25) Nevn noen gode fremgangsmåter som bør følges for DevOps-suksess.

Her er viktige beste fremgangsmåter for implementering av DevOps:

  • Leveringshastigheten betyr tid det tar for enhver oppgave å få dem inn i produksjonsmiljøet.
  • Spor hvor mange mangler som er funnet i de forskjellige
  • Det er viktig å måle den faktiske eller gjennomsnittlige tiden det tar å gjenopprette i tilfelle feil i produksjonsmiljøet.
  • Antall feil som rapporteres av kunden påvirker også kvaliteten på applikasjonen.

26) Forklar SubGIt-verktøyet

SubGit hjelper deg med å migrere SVN til Git. Det lar deg også bygge et skrivbart Git-speil av et lokalt eller eksternt Subversion-arkiv.

27) Nevn noen viktige verktøy for nettverksovervåking

Noen mest fremtredende verktøy for nettverksovervåking er:

  • Splunk
  • Icinga 2
  • Wireshark
  • Nagios
  • OpenNMS

28) Hvorvidt skjermkortet ditt kan kjøre Unity, hvordan ville du vite det?

Når du bruker en kommando

/usr/lib/Linux/unity_support_test-p

det vil gi detaljert utdata om Unitys krav, og hvis de er oppfylt, kan skjermkortet ditt kjøre enhet.

29) Forklar hvordan du aktiverer oppstartslyd i Ubuntu?

For å aktivere oppstartslyd

  • Klikk på kontrollutstyr og deretter på Startup Applications
  • I vinduet Oppstartsprograminnstillinger klikker du Legg til for å legge til en oppføring
  • Fyll deretter informasjonen i kommentarfelt som Navn, Kommando og Kommentar
/usr/bin/canberra-gtk-play-id= "desktop-login"-description= "play login sound"
  • Logg av og logg deretter på når du er ferdig

Du kan også åpne den med hurtigtasten Ctrl + Alt + T .

30) Hva er den raskeste måten å åpne en Ubuntu-terminal i en bestemt katalog?

For å åpne en Ubuntu-terminal i en bestemt katalog, kan du bruke tilpasset hurtigtast.

For å gjøre det, skriv inn genom - terminal - - arbeid - katalog = / bane / til / dir i kommandofeltet til et nytt tilpasset tastatur.

31) Forklar hvordan du kan få den nåværende fargen på gjeldende skjerm på Ubuntu-skrivebordet?

Du kan åpne bakgrunnsbildet i Gimp (bildeditor) og deretter bruke dropperverktøyet til å velge fargen på et bestemt punkt. Det gir deg RGB-verdien på fargen på det tidspunktet.

32) Forklar hvordan du oppretter bæreraketter på et skrivebord i Ubuntu?

For å lage bæreraketter på et skrivebord i Ubuntu kan du bruke

ALT + F2 og skriv deretter inn "gnome-desktop-item-edit -create-new ~ / desktop," det vil starte den gamle GUI-dialogen og opprette en launcher på skrivebordet ditt

33) Forklar hva Memcached er?

Memcached er et gratis og åpen kildekode, høyt ytelse, distribuert minneobjekksystem. Det primære målet for Memcached er å forbedre responstiden for data som ellers kan gjenopprettes eller konstrueres fra en annen kilde eller database. Den brukes for å unngå behovet for å betjene SQL-database eller en annen kilde gjentatte ganger for å hente data for en samtidig forespørsel.

Memcached kan brukes til

  • Sosiale nettverk-> Profilbufring
  • Innholdsaggregering-> HTML / sidebuffer
  • Annonsemålretting-> Sporing av informasjonskapsler
  • Forhold-> Økt caching
  • E-handel -> Session og HTML-hurtigbufring
  • Stedsbaserte tjenester-> Skalering av databasespørsmål
  • Gaming og underholdning-> Økt caching

Memcache hjelper i

  • Fremskynd søknadsprosesser
  • Den bestemmer hva du skal lagre og hva du ikke skal
  • Reduser antall innhentingsforespørsler til databasen
  • Kutter ned I / O (Input / Output) tilgang (harddisk)

Ulempen med Memcached er

  • Det er ikke en vedvarende datalager
  • Ikke en database
  • Det er ikke et applikasjonsspesifikt
  • Den kan ikke cache stort objekt

34) Nevn noen viktige trekk ved Memcached?

Viktige funksjoner i Memcached inkluderer

  • CAS-tokens: Et CAS-token er festet til et objekt hentet fra en cache. Du kan bruke dette tokenet til å lagre det oppdaterte objektet.
  • Tilbakekallinger: Det forenkler koden
  • getDelayed: Det reduserer forsinkelsestiden for skriptet ditt som venter på at resultatene skal komme tilbake fra en server
  • Binær protokoll: Du kan bruke binær protokoll i stedet for ASCII med den nyere klienten
  • Igbinary: Tidligere brukte en klient alltid serialisering av verdien med komplekse data, men med Memcached kan du bruke igbinary-alternativet.

35) Forklar om det er mulig å dele en enkelt forekomst av en Memcache mellom flere prosjekter?

Ja, det er mulig å dele en enkelt forekomst av Memcache mellom flere prosjekter. Memcache er en minnelagerplass, og du kan kjøre memcache på en eller flere servere. Du kan også konfigurere klienten din til å snakke med et bestemt sett med forekomster. Så du kan kjøre to forskjellige Memcache-prosesser på samme vert, og likevel er de helt uavhengige. Med mindre du har partisjonert dataene dine, blir det nødvendig å vite fra hvilken forekomst du skal hente dataene fra eller å sette inn.

36) Du har flere Memcache-servere, der en av memcache-serverne mislykkes, og den har dataene dine, vil den noen gang prøve å få nøkkeldata fra den mislykkede serveren?

Dataene på den mislykkede serveren blir ikke fjernet, men det er en bestemmelse for automatisk svikt, som du kan konfigurere for flere noder. Feilsøking kan utløses under alle socket- eller Memcached-servernivåfeil og ikke under standard klientfeil som å legge til en eksisterende nøkkel, etc.

37) Forklar hvordan du kan minimere avbrudd i Memcached-serveren?

  • Når en forekomst mislykkes, går flere av dem ned, og dette vil legge større belastning på databaseserveren når tapte data lastes inn på nytt når en klient ber om en forespørsel. For å unngå dette, hvis koden din er skrevet for å minimere hurtigbuffer, vil den gi minimal innvirkning
  • En annen måte er å få opp en forekomst av Memcached på en ny maskin ved hjelp av IP-adressen til tapte maskiner
  • Koden er et annet alternativ for å minimere serverbrudd, da det gir deg frihet til å endre Memcached-serverlisten med minimalt med arbeid
  • Å sette tidsavbruddsverdi er et annet alternativ som noen Memcached-klienter implementerer for Memcached-serverbrudd. Når din Memcached-server går ned, vil klienten fortsette å prøve å sende en forespørsel til tidsgrensen er nådd

38) Forklar hvordan du kan oppdatere Memcached når data endres?

Når data endres, kan du oppdatere Memcached av

  • Tømning av hurtigbufferen proaktivt: Tømning av hurtigbuffer når det settes inn en oppdatering
  • Tilbakestille hurtigbufferen: Det ligner på den første metoden, men i stedet for bare å slette tastene og vente på neste forespørsel om at dataene skal oppdateres hurtigbufferen, tilbakestiller du verdiene etter innsettingen eller oppdateringen.

39) Forklar hva Dogpile-effekten er? Hvordan kan du forhindre denne effekten?

Dogpile-effekt henvises til hendelsen når en cache utløper, og nettsteder blir truffet av flere forespørsler fra klienten samtidig. Denne effekten kan forhindres ved å bruke en semaforelås. I dette systemet når verdien utløper, får den første prosessen låsen og begynner å generere ny verdi.

40) Forklar hvordan Memcached ikke skal brukes?

  • Memcached vanlig misbruk er å bruke den som en datalager, og ikke som en cache
  • Bruk aldri Memcached som den eneste kilden til informasjonen du trenger for å kjøre applikasjonen. Data skal alltid være tilgjengelig via en annen kilde også
  • Memcached er bare en nøkkel- eller verdilager og kan ikke utføre et spørsmål over dataene eller gjenta over innholdet for å trekke ut informasjon
  • Memcached tilbyr ikke noen form for sikkerhet verken i kryptering eller autentisering

41) Når en server slås av, er data som er lagret i Memcached fortsatt tilgjengelige?

Data lagret i Memcached er ikke holdbare, så hvis en server stenges eller startes på nytt, slettes alle dataene som er lagret i Memcached.

42) Nevn hva som er forskjellen mellom Memcache og Memcached?

  • Memcache: Det er en utvidelse som lar deg arbeide gjennom praktiske objektorienterte (OOP) og prosedyregrensesnitt. Den er designet for å redusere databasebelastningen i dynamiske webapplikasjoner.
  • Memcached : Det er en utvidelse som bruker libmemcached- biblioteket for å gi API for kommunikasjon med Memcached-servere. Den brukes til å øke de dynamiske webapplikasjonene ved å lette databaselasten. Det er den siste API-en.

43) Forklar blått / grønt distribusjonsmønster

Blå / grønt fargemønster adresserer de viktigste utfordringene som står overfor under den automatiske distribusjonsprosessen. I Blue / Green Deployment-tilnærmingen må du sikre to identiske produksjonsmiljøer. Imidlertid er bare en av dem LIVE på et gitt tidspunkt. LIVE-miljøet kalles Blue-miljø.

Når teamet forbereder neste utgivelse av programvaren, gjennomfører de sin siste fase av testing i et miljø som er kjent som grønt miljø. Når den er bekreftet, dirigeres trafikken til det grønne miljøet.

44) Hva er containerne?

Beholdere er fra lett virtualisering. De tilbyr isolasjon mellom prosesser.

45) Hva er post mortem møte med henvisning til DevOps?

Møte etter mortem gjøres for å diskutere hva som gikk galt og hvilke grep du må ta for å unngå feil.

46) Hva er den enkleste metoden for å bygge en liten sky?

VMfres er et av de mest effektive alternativene for å lage IaaS-sky fra virtuelle boks-virtuelle maskiner på kort tid. Men hvis du vil ha lett PaaS, er Dokku et godt alternativ fordi bash-skript kan være PaaS ut av Dokku-containere.

47) Nevn to verktøy som brukes til dockernettverk.

For dockernettverk kan du bruke Kubernetes og Docker sverm.

48) Nevn noen av områdene der DevOps er implementert

DevOps brukes til produksjon, IT-drift, produksjonsfeedback og programvareutvikling.

49) Hva er CBD '?

CBD eller komponentbasert utvikling er en unik måte å nærme seg produktutvikling på. I denne metoden leter utviklere alltid etter eksisterende veldefinerte, testede og verifiserte komponenter for å komponere og montere dem til et produkt i stedet for å utvikle seg fra bunnen av.

50) Forklar pareprogrammering med henvisning til DevOps

Parprogrammering er en ingeniørpraksis for ekstreme programmeringsregler. I denne metoden jobber to programmerere på samme system, på samme design / algoritme / kode.

En programmerer fungerer som en "driver". Andre fungerer som en "observatør" som kontinuerlig overvåker fremdriften i et prosjekt for å identifisere problemer. Rollene kan reverseres når som helst uten forutgående antydning.

51) Forklar motstandstest

Test som sikrer gjenoppretting uten tap av data og funksjonalitet etter en feil kalles Resiliency tests.

52) Nevn tre viktige KPI-er for DevOps

Tre vanligste DevOps KPI-er er:

  • I mellomtiden til feilgjenoppretting
  • Distribusjonsfrekvens
  • Andel mislykkede distribusjoner