Topp 50 DevOps intervjufrågor & Svar

Anonim

Ladda ner PDF

1) Förklara vad DevOps är?

Det är en ny framväxande term inom IT-fältet, vilket inte är något annat än en praxis som betonar samarbetet och kommunikationen mellan både mjukvaruutvecklare och distributionsteam (operations). Det fokuserar på att leverera mjukvaruprodukt snabbare och sänka felfrekvensen för utgåvor.

2) Nämn vad de viktigaste aspekterna eller principen bakom DevOps är?

De viktigaste aspekterna eller principen bakom DevOps är

  • Infrastruktur som kod
  • Kontinuerlig distribution
  • Automatisering
  • Övervakning
  • säkerhet

3) Vilka är DevOps kärnverksamheter med applikationsutveckling och infrastruktur?

DevOps kärnverksamheter är

Applikationsutveckling

  • Kodbyggnad
  • Kodtäckning
  • Enhetstestning
  • Förpackning
  • Spridning

Infrastruktur

  • Provisionering
  • Konfiguration
  • Orkestrering
  • Spridning

4) Förklara hur “infrastrukturkod” bearbetas eller körs i AWS?

I AWS,

  • Koden för infrastruktur kommer att vara i enkelt JSON-format
  • Denna JSON-kod kommer att ordnas i filer som kallas mallar
  • Dessa mallar kan distribueras på AWS-devops och sedan hanteras som stackar
  • Senare kommer CloudFormation-tjänsten att utföra, skapa, radera, uppdatera etc. i stacken

5) Förklara vilket skriptspråk som är viktigast för en DevOps-ingenjör?

Ett enklare skriptspråk blir bättre för en DevOps-ingenjör. Python verkar vara mycket populär.

6) Förklara hur DevOps är till hjälp för utvecklare?

DevOps kan vara till hjälp för utvecklare att fixa felet och implementera nya funktioner snabbt. Det hjälper också till tydligare kommunikation mellan teammedlemmarna.

7) Lista ut några populära verktyg för DevOps?

Några av de populära verktygen för DevOps är

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

8) Nämn vid vilken instans har du använt SSH?

Jag har använt SSH för att logga in på en fjärrmaskin och arbeta på kommandoraden. Utöver detta har jag också använt det för att tunnelna in i systemet för att underlätta säker krypterad kommunikation mellan två osäkra värdar över ett osäkert nätverk.

9) Förklara hur du skulle hantera revisionskontroll (version)?

Mitt tillvägagångssätt för att hantera revisionskontroll skulle vara att lägga upp koden på SourceForge eller GitHub så att alla kan se den. Jag kommer också att lägga upp checklistan från den senaste versionen för att se till att eventuella olösta problem löses.

10) Vilka typer av Http-förfrågningar?

Typerna av Http-förfrågningar är

  • SKAFFA SIG
  • HUVUD
  • SÄTTA
  • POSTA
  • LAPPA
  • RADERA
  • SPÅR
  • ANSLUTA
  • ALTERNATIV

11) Förklara vad du skulle kontrollera om en Linux-build-server plötsligt börjar bli långsam?

Om en Linux-build-server plötsligt börjar bli långsam, kommer du att kontrollera följande tre saker

  • Felsökning på applikationsnivå
RAM-relaterade problem, Disk I / O-läs-skrivproblem, Disk Space-relaterade problem etc.
  • Felsökning på systemnivå
Sök efter applikationsloggfil ELLER applikationsserverloggfil, systemprestandaproblem, webbserverlogg - kontrollera HTTP, tomcat lo, jboss eller WebLogic-loggar för att se om applikationsservers svar / mottagningstid är problemen för långsamhet, minnesläckage Ansökan
  • Felsökning av beroende tjänster
Antivirusrelaterade problem, brandväggsrelaterade problem, nätverksproblem, SMTP-serverns svarstidsproblem etc.

12) Vilka är de viktigaste komponenterna i DevOps?

De viktigaste komponenterna i DevOps är:

  • Fortsatt integration
  • Kontinuerlig testning
  • Kontinuerlig leverans
  • Kontinuerlig övervakning

13) Nämn några molnplattformar som används för DevOps Implementation

Populär cloud computing-plattform som används för DevOps-implementering är:

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

14) Ge några fördelar med att använda versionskontrollsystemet

  • Versionskontrollsystemet tillåter teammedlemmar att arbeta fritt på valfri fil när som helst.
  • Alla tidigare versioner och varianter är tätt packade inuti VCS.
  • En distribuerad VCS-liknande hjälper dig att lagra projektets fullständiga historik, så i fall av en uppdelning på den centrala servern kan du använda din teammedlems lokala Git-arkiv.
  • Låter dig se exakt vilka ändringar som görs i filens innehåll

15) Förklara Git Bisect

Git bisect hjälper dig att hitta kommittén som introducerade ett fel med binär sökning.

16) Vad är uppbyggnaden?

En build är en metod där källkoden sätts ihop för att kontrollera om den fungerar som en enda enhet. I processen för skapande av byggnad kommer källkoden att sammanställas, inspektera, testa och distribuera.

17) Vad är Puppet?

Puppet är ett användbart verktyg för projektledning. Det hjälper dig att automatisera administrationsuppgifter.

18) Förklara tvåfaktorautentisering

Tvåfaktorsautentisering är en säkerhetsmetod där användaren tillhandahåller två sätt att identifiera från separata kategorier.

19) Förklara termen 'Kanarifrittkomst'.

En kanarifrittkomst är ett mönster som minskar risken för att införa en ny versionsprogramvara i produktionsmiljön. Det görs genom att göra det tillgängligt på ett kontrollerat sätt för en delmängd av användaren. Innan du gör den tillgänglig för hela användaruppsättningen.

20) Vilka typer av tester är viktiga för att säkerställa att ny tjänst är redo för produktion?

Du måste genomföra kontinuerliga tester för att säkerställa att den nya tjänsten är redo för produktion.

21) Vad är Vagrant?

En vagrant är ett verktyg som kan skapa och hantera virtualiserade miljöer för testning och utveckling av programvara.

22) Vad är användningen av PTR i DNS?

Pekare-post som även kallas (PTR) används för omvänd DNS-sökning.

23) Vad är kock?

Det är en kraftfull automatiseringsplattform som förvandlar infrastruktur till kod. I det här verktyget kan du använda skrivskript som används för att automatisera processer.

24) Vilka är förutsättningarna för implementering av DevOps?

Följande är användbara förutsättningar för implementering av DevOps:

  • Minst en versionskontrollprogramvara
  • Korrekt kommunikation mellan gruppmedlemmarna
  • Automatiserad testning
  • Automatiserad distribution

25) Nämn några bästa metoder som bör följas för DevOps framgång.

Här är viktiga bästa metoder för implementering av DevOps:

  • Leveranshastigheten innebär den tid det tar för varje uppgift att få dem in i produktionsmiljön.
  • Spåra hur många fel som finns i de olika
  • Det är viktigt att mäta den faktiska eller genomsnittliga tiden det tar att återhämta sig i händelse av ett fel i produktionsmiljön.
  • Antalet fel som kunden rapporterar påverkar också applikationens kvalitet.

26) Förklara SubGIt-verktyget

SubGit hjälper dig att migrera SVN till Git. Det låter dig också bygga en skrivbar Git-spegel för ett lokalt eller avlägset Subversion-arkiv.

27) Nämn några viktiga verktyg för nätverksövervakning

Några mest framträdande verktyg för nätverksövervakning är:

  • Splunk
  • Icinga 2
  • Wireshark
  • Nagios
  • OpenNMS

28) Huruvida ditt grafikkort kan köra Unity, hur skulle du veta det?

När du använder ett kommando

/usr/lib/Linux/unity_support_test-p

det ger detaljerad information om Unitys krav, och om de uppfylls kan ditt grafikkort köra enhet.

29) Förklara hur du aktiverar startljud i Ubuntu?

För att aktivera startljud

  • Klicka på kontrollutrustning och klicka sedan på Startup Applications
  • I fönstret Startup-programinställningar klickar du på Lägg till för att lägga till en post
  • Fyll sedan informationen i kommentarrutor som Namn, Kommando och Kommentar
/usr/bin/canberra-gtk-play-id= "desktop-login"-description= "play login sound"
  • Logga ut och logga sedan in när du är klar

Du kan också öppna den med kortkommando Ctrl + Alt + T .

30) Vad är det snabbaste sättet att öppna en Ubuntu-terminal i en viss katalog?

För att öppna en Ubuntu-terminal i en viss katalog kan du använda anpassade tangentbordsgenvägar.

För att göra det, i kommandofältet för ett nytt anpassat tangentbord, skriv genom - terminal - - arbetar - katalog = / sökväg / till / dir.

31) Förklara hur du kan få den aktuella färgen på den aktuella skärmen på Ubuntu-skrivbordet?

Du kan öppna bakgrundsbilden i Gimp (bildredigeraren) och sedan använda droppverktyget för att välja färg på en viss punkt. Det ger dig RGB-värdet för färgen vid den punkten.

32) Förklara hur du skapar bärraketer på ett skrivbord i Ubuntu?

För att skapa bärraketer på ett skrivbord i Ubuntu kan du använda

ALT + F2 skriver sedan "gnome-desktop-item-edit -create-new ~ / desktop", det startar den gamla GUI-dialogrutan och skapar en launcher på skrivbordet

33) Förklara vad Memcached är?

Memcached är ett gratis och öppen källkod, högpresterande, distribuerat minnesobjekt caching-system. Det främsta målet för Memcached är att förbättra svarstiden för data som annars kan återställas eller konstrueras från någon annan källa eller databas. Den används för att undvika behovet av att använda SQL-databas eller annan källa upprepade gånger för att hämta data för en samtidig begäran.

Memcached kan användas för

  • Sociala nätverk-> Profilcaching
  • Innehållsaggregering-> HTML / sidcachning
  • Annonsinriktning-> Spårning av cookie / profil
  • Förhållande-> Sessioncaching
  • E-handel -> Session och HTML-cachning
  • Platsbaserade tjänster-> Databasfrågeskalning
  • Spel och underhållning-> Sessioncaching

Memcache hjälper till

  • Påskynda ansökningsprocesser
  • Det avgör vad som ska lagras och vad inte
  • Minska antalet hämtningsförfrågningar till databasen
  • Skär ner I / O (Input / Output) åtkomst (hårddisk)

Nackdelen med Memcached är

  • Det är inte en ihållande datalager
  • Inte en databas
  • Det är inte en applikationsspecifik
  • Det kan inte cacha stort objekt

34) Nämn några viktiga funktioner i Memcached?

Viktiga funktioner i Memcached inkluderar

  • CAS-token: En CAS-token bifogas ett objekt som hämtas från en cache. Du kan använda den token för att spara ditt uppdaterade objekt.
  • Återuppringningar: Det förenklar koden
  • getDelayed: Det minskar fördröjningstiden för ditt skript som väntar på att resultaten ska komma tillbaka från en server
  • Binärt protokoll: Du kan använda binärt protokoll istället för ASCII med den nyare klienten
  • Igbinary: Tidigare använde en klient alltid serieisering av värdet med komplexa data, men med Memcached kan du använda igbinary-alternativet.

35) Förklara om det är möjligt att dela en enda instans av en Memcache mellan flera projekt?

Ja, det är möjligt att dela en enda instans av Memcache mellan flera projekt. Memcache är ett minneslagringsutrymme och du kan köra memcache på en eller flera servrar. Du kan också konfigurera din klient för att tala med en viss uppsättning instanser. Så du kan köra två olika Memcache-processer på samma värd och ändå är de helt oberoende. Om du inte har partitionerat dina data blir det nödvändigt att veta från vilken instans att hämta data från eller att lägga in dem.

36) Du har flera Memcache-servrar, där en av memcache-servrarna misslyckas, och den har dina data, kommer den någonsin att försöka få nyckeldata från den en misslyckade servern?

Data på den misslyckade servern tas inte bort, men det finns en bestämmelse för autofel, som du kan konfigurera för flera noder. Fail-over kan utlösas under alla socket- eller Memcached-servernivåfel och inte under standardklientfel som att lägga till en befintlig nyckel etc.

37) Förklara hur du kan minimera avbrott i Memcached-servern?

  • När en instans misslyckas går flera av dem ner och detta kommer att lägga en större belastning på databasservern när förlorade data laddas om när en klient gör en begäran. För att undvika detta, om din kod har skrivits för att minimera cache-störningar kommer den att lämna en minimal påverkan
  • Ett annat sätt är att ta upp en instans av Memcached på en ny dator med den förlorade maskinens IP-adress
  • Koden är ett annat alternativ för att minimera serveravbrott eftersom det ger dig friheten att ändra Memcached-serverlistan med minimalt arbete
  • Att ställa in timeout-värde är ett annat alternativ som vissa Memcached-klienter implementerar för Memcached-serveravbrott. När din Memcached-server går ner kommer klienten fortsätta att försöka skicka en begäran tills tidsgränsen har uppnåtts

38) Förklara hur du kan uppdatera Memcached när data ändras?

När data ändras kan du uppdatera Memcached med

  • Rensa cachen proaktivt: Rensa cachen när en infogning eller uppdatering görs
  • Återställa cachen: Det liknar den första metoden men snarare än att bara ta bort tangenterna och vänta på nästa begäran om att data ska uppdateras, återställ värdena efter infogningen eller uppdateringen.

39) Förklara vad Dogpile-effekten är? Hur kan du förhindra denna effekt?

Dogpile-effekt hänvisas till händelsen när ett cache går ut och webbplatser träffas av flera begäranden från klienten samtidigt. Denna effekt kan förhindras med hjälp av ett semaforlås. I detta system när värdet går ut, förvärvar den första processen låset och börjar generera nytt värde.

40) Förklara hur Memcached inte ska användas?

  • Memcached vanligt missbruk är att använda det som ett datalager och inte som en cache
  • Använd aldrig Memcached som den enda källan till den information du behöver för att köra din applikation. Data bör alltid vara tillgänglig via en annan källa också
  • Memcached är bara en nyckel eller ett värdelager och kan inte utföra en fråga över data eller itera över innehållet för att extrahera information
  • Memcached erbjuder inte någon form av säkerhet varken i kryptering eller autentisering

41) När en server stängs är data kvar i Memcached fortfarande tillgänglig?

Data lagrad i Memcached är inte hållbar, så om en server stängs av eller startas om raderas all data som lagras i Memcached.

42) Nämn vad som är skillnaden mellan Memcache och Memcached?

  • Memcache: Det är ett tillägg som låter dig arbeta igenom praktiska objektorienterade (OOP) och procedurgränssnitt. Den är utformad för att minska databasbelastningen i dynamiska webbapplikationer.
  • Memcached : Det är ett tillägg som använder libmemcached- biblioteket för att tillhandahålla API för kommunikation med Memcached-servrar. Det används för att öka de dynamiska webbapplikationerna genom att minska databasbelastningen. Det är det senaste API: et.

43) Förklara blå / grön distributionsmönster

Blå / grönt färgmönster hanterar de viktigaste utmaningarna som står inför den automatiska utplaceringsprocessen. I Blue / Green Deployment-metoden måste du säkerställa två identiska produktionsmiljöer. Men bara en av dem är LIVE vid en viss tidpunkt. LIVE-miljön kallas Blue-miljö.

När teamet förbereder nästa release av sin programvara genomför de sitt sista teststeg i en miljö som kallas grön miljö. Efter att ha verifierats dirigeras trafiken till den gröna miljön.

44) Vad är behållarna?

Behållare kommer från lättvikts virtualisering. De erbjuder isolering mellan processer.

45) Vad är ett post mortem-möte med hänvisning till DevOps?

Mötet efter slakt görs för att diskutera vad som gick fel och vilka steg du måste vidta för att undvika misslyckanden.

46) Vad är den enklaste metoden att bygga ett litet moln?

VMfres är ett av de mest effektiva alternativen för att skapa IaaS-moln från virtuella box-virtuella datorer på nolltid. Men om du vill ha lätt PaaS är Dokku ett bra alternativ eftersom bash-skript kan vara PaaS ur Dokku-behållare.

47) Nämn två verktyg som används för dockernätverk.

För dockernätverk kan du använda Kubernetes och Docker-svärm.

48) Namnge några av de områden där DevOps implementeras

DevOps används för produktion, IT-drift, produktionsfeedback och dess mjukvaruutveckling.

49) Vad är CBD?

CBD eller komponentbaserad utveckling är ett unikt sätt att närma sig produktutveckling. I den här metoden letar utvecklare alltid efter befintliga väldefinierade, testade och verifierade komponenter för att komponera och montera dem till en produkt istället för att utvecklas från grunden.

50) Förklara parprogrammering med hänvisning till DevOps

Parprogrammering är en ingenjörspraxis med extrema programmeringsregler. I den här metoden arbetar två programmerare på samma system, på samma design / algoritm / kod.

En programmerare fungerar som en "drivrutin". Andra fungerar som en "observatör" som kontinuerligt övervakar utvecklingen av ett projekt för att identifiera problem. Rollerna kan vändas när som helst utan föregående antydan.

51) Förklara motståndskraftstest

Test som säkerställer återhämtning utan data- och funktionsförlust efter ett fel kallas Resiliency tests.

52) Nämn tre viktiga DevOps KPI: er

Tre vanligaste DevOps KPI: er är:

  • Under tiden till felåterhämtning
  • Distributionsfrekvens
  • Procent av misslyckade distributioner