top 35 puppet interview questions
Puppet är ett konfigurationshanteringsverktyg med öppen källkod. I den här handledningen har vi tillhandahållit de vanligaste frågorna och svaren på marionettintervjuer:
I den nuvarande agila utvecklingsmiljön integrerar utvecklare sin kod flera gånger på en dag och arbetar extra timmar för att leverera sina uppgifter.
Operationsgrupper arbetar tillsammans med applikationsutvecklare för att integrera sin kod med hjälp av versionskontrollverktyg, kodgranskning för att upprätthålla design och implementeringskonsistens bland flera utvecklare, distribuera olika byggnader för testning. Förutom detta måste de underhålla system och servrar i löpande tillstånd.
Olika system och servrar som körs kontinuerligt blir utsatta för fel. I stora organisationer med en enorm kundbas blir underhåll av infrastruktur en skrämmande uppgift.
När det gäller nyinstallerad infrastruktur eller för att bibehålla befintliga i gott skick installerar DevOps konfigurationsverktyg som Puppet som automatiskt ställer in standardkonfigurationen för nya maskiner och återställer konfigurationen av misslyckade infrastrukturer och håller dem igång.
Vad du kommer att lära dig:
Vad är Puppet Software Tool
Puppet är ett konfigurationshanteringsverktyg med öppen källkod som automatiserar och hanterar serverkonfiguration. Dess kod skriven på Domain-Specific Language (DSL) är deklarativ, där det önskade tillståndet för våra system beskrivs. Det här verktyget automatiserar uppdateringen av dessa system enligt beskrivningen med hjälp av marionettmästaren och deras agent.
I händelse av serverfel hjälper koden servern att rulla tillbaka till sina tidigare arbetstillstånd. Dessutom distribuerar verktyget servrar på begäran och ålägger dem säkerhet.
Med detta konfigurationshanteringsverktyg kan man hantera Network Time Protocol (NTP), Sudo-behörigheter för att identifiera användare med förhöjda åtkomstbehörigheter, förutom denna DNS-namnserver (Domain Name System) och brandvägg kan också hanteras med den.
Vanliga frågor om marionettintervjuer
F # 1) Förklara Puppet Enterprise.
Svar: Puppet enterprise är konfigurationsverktyg eller sägs som en automatiserad kod där infrastrukturinformation som programvara och deras inställningar redan är definierade för system och server så att dessa kan installeras, miljön kan ställas in när ny infrastruktur installeras och periodisk verifiering görs för att säkerställa att dessa system och servrar förblir i önskat tillstånd.
F # 2) Beskriv dockad arkitektur.
Svar: Puppet följer deklarativ programmeringsmetod där kod specificerar vad man ska göra, men informerar inte om hur man gör det.
Baserat på Pull-baserad distribution kontrollerar agentnoder ett regelbundet intervall på 30 minuter med en masternod för ändringar hos agenten. Vid ändringskrav hämtar agenten specifik kod från mastern och utför nödvändiga åtgärder vid agentnoden.
- Agent skickar fakta, dvs. dess tillstånd i nyckel / värdedatapar, till mastern. Tillståndet inkluderar systemets operativsystem, up-time dvs. tidssystemet är operativt, IP-adress dvs. fysisk eller virtuell maskin.
- Med hjälp av faktainformation sammanställer master en katalog som beskriver hur agenten ska konfigureras. Katalog, ett dokument förklarar önskat tillstånd för agentens resurser, master hanterar agenten.
- Agent svarar på mastern med information om slutförandet av konfigurationen, som kan visas i Puppet-instrumentpanelen.
F # 3) Förklara hur du arbetar med marionett.
Svar: Det förklaras enligt följande:
Enheter som krävs för att köra inkluderar Puppet Master och Puppet Agent.
Agent eller noder är demoner som körs på klientservrar. Dessa servrar behöver vissa konfigurationer eller hanteras med Puppet. Den här agenten verifierar konfigurationer med regelbundna intervall med mastern för ändringar. Master består av alla konfigurationer som lagras för olika värdar och körs som en demon på huvudservern. Agent och master är anslutna via Secure Sockets Layer (SSL).
Noden ansluter master, master analyserar vilken konfiguration och hur den kan tillämpas på noden. Efter analys samlar master resurser och konfigurationer, sammanställer och skapar en katalog och skickar den till agenten för noden. Efter att konfigurationen har använts skickar agenten in den konfigurationsrapport som tillämpades på huvudservern.
F # 4) Beskriv Puppet Module.
Svar: Moduler är grundläggande byggstenar för marionetten i en katalogstruktur som innehåller klasser, uppgifter, funktioner, resursleverantörer och deras typer och plugin-program som fakta eller anpassade typer. Det är obligatoriskt att ha moduler installerade i marionettmodulens sökväg. Dessa moduler används för att hantera uppgifter som installation eller konfigurering av programvara på systemet eller servern.
Klick här för tillgängliga färdiga moduler.
F # 5) Vad är katalog i marionett?
Svar: Katalog är ett dokument med tillståndsinformation för varje resursmästare som hanteras på noden. Master sammanställer en katalog och skickar tillbaka till agenten. Den har data som tillhandahålls av agenten vid noden, externa data och detaljer relaterade till marionettmanifest.
F # 6) Definiera klasser i marionett.
Svar: Klasser är kodblock som anropas av deras namn och finns i moduler. Klasser används för funktionaliteten i alla paket, tjänster och konfigurationsfiler som behövs för att köra ett program. Dessa kan läggas till i nodens katalog på två möjliga sätt, dvs deklarera dessa klasser i manifest eller genom att tilldela från extern nodklassificering.
Klasser kan deklareras i manifest på följande två sätt:
Använder sig av omfatta klassnamn ELLER med klass { 'klassnamn' : }
bästa programmet för att klona hdd till ssd
Puppet Class-strukturen förklaras i figuren nedan:
F # 7) Vad är Manifest in Puppet?
Svar: Alla Puppet-program skrivna på Ruby-programmeringsspråk och sparade med en förlängning av .pp och är byggda med avsikt att skapa och hantera en värdmaskin i mål kallas ett Manifest.
Det innehåller Filer (marionett väljer och flyttar dessa filer till en målplats), Mallar (används för att skapa konfigurationsfiler på noden), Knutpunkter (klientnodrelaterade definitioner beskrivs i noder), Resurser och Klasser.
F # 8) Beskriv i detalj om Facter in Puppet.
Svar: Facter är ett systemprofilerande plattformsbibliotek som upptäcker och rapporterar systeminformation per nod, känd som fakta som är variabla med värden i nyckel-värde-formatet i manifest.
Fakta och fakta finns över Puppet-koden som globala variabler, de kan användas i kod utan referens vid någon punkt, någon plats i koden. Facter är ett bibliotek som identifierar detaljerna i fakta som kan innehålla operativsystemet som används, SSH-nycklar, IP-adress, verifiering för den virtuella maskinen eller inte, MAC-adresser, etc.
Olika faktatyper som används förklaras nedan:
- Kärnfakta: Det här är information om resurser som moln, diskar, minne, operativsystem, sökväg, processorer och partitioner. Vi kan använda följande kommando för att visa en fullständig lista över fakta och deras motsvarande värden i nyckel-värde-format.
- $ run marionettfakta
- Anpassade fakta: Med hjälp av export FACTER {fact's_name} kan vi lägga till anpassade fakta till noden. Dessa fakta är anpassade för att uppfylla specifika krav från DevOps.
- Externa fakta: För att tillämpa fakta i etableringsfasen kan vi använda externa fakta, tillämpa metadata på virtuella maskiner hos AWS, OpenStack-molnleverantörer.
F # 9) Vad menar du med Puppet Kick?
Svar: Puppet Kick utfasad i den aktuella versionen är ett verktyg som utlöser agent från mastern. Enligt Ubuntu-handböcker är 'puppet kick' ett skript som ska köras som root för att få åtkomst till Secure Sockets Layer (SSL) -certifikat, ansluta uppsättning maskiner som kör agenten och utlösa dem för att köra sina konfigurationer.
Dessutom slår detta kommando upp i LDAP (Lightweight Directory Access Protocol) för värdar som matchar den konfigurationen, ansluter till var och en av dem och triggar för att köra sin konfiguration. För att starta arbetet bör agenten identifiera och känna för inkommande anslutningar och bör ha tillgång till behörighet att köra slutpunkter.
F # 10) Beskriv funktionerna hos MCollective i Puppet.
Svar: MCollective eller Marionette Collective är ett ramverk för att skapa automatiserad samordning, hantering och arrangemang av komplex infrastruktur, dvs. system och servrar som kallas Orchestration. Administrativa uppgifter på kluster av servrar kan köras automatiskt med MCollective.
Deras komponenter är servrar, klienter och Middleware. Med hjälp av MCollective-kommandon kan vi fråga värdet på fakta, starta och stoppa tjänster, starta själva konfigurationsverktyget samt fråga och uppdatera programvara.
F # 11) Vad är speciellt med Puppets modelldrivna design?
Svar: Tidigare följde systemadministratörer serie steg för att konfigurera och hantera infrastruktur, som består av flera grupper av system och servrar. I en modelldriven designmetod innehåller Puppet, som är en automatiserad kod skriven i Ruby, alla konfigurationsdetaljer som sammanställs i en katalog.
Den här katalogen skickas till varje nod och delar resurser, värden och deras förhållanden, den nödvändiga konfigurationsändringen görs för att misslyckade system ska återställa dem till normalt körläge.
F # 12) Ge några användningsfall för Puppet.
Svar: Puppet används för att hantera och standardisera infrastrukturdistribution.
Krav: Startup Company har flyttat sin infrastruktur till molntjänstleverantörer som Amazon-webbserver eller Google Cloud-tjänster. Slutanvändaren ansvarar för skapandet, standardiseringen och underhållet av system och servrar på olika plattformar, applikationer och tjänster och vill installera och använda Puppet för att underlätta deras uppgift.
Scenario 1: Administratörer använder verktyg för att standardisera sina servrar och system, som att skapa en manifestfil med steg skrivna i konfigurationskod för att bygga sin nya server.
Till exempel,
- Installation av operativsystemet, säger Linux.
- Verifiera Linux-skivutrymme med hjälp av programvaran File light eller DUC
- Installera Java.
- Installerar Tomcat.
- Installerar SQL-server som RDBMS.
- Installerar patch för en applikation som ska byggas och testas för trainee för programvaruutveckling.
Scenario 2: Skapande av fil med en lista över alla ovanstående steg i manifestet, som kan köras med hjälp av marionettkommandot för att utföra stegen som automatiskt nämns i manifestfilen. På detta sätt följs standardisering av steg när du distribuerar nytt system med manifest och kommando.
Scenario 3: Manifest som skapats kommer att användas för att bygga molnserver via API så att alla manuella uppgifter kan utföras automatiskt.
F # 13) Förklara kommandona 'etckeeper-commit-post' och 'etckeeper-commit-pre'.
Svar: Följande är skillnaden mellan båda kommandona
- etckeeper-commit-post är ett kommando skrivet i konfigurationsfilen, som kan köras efter att ha tryckt på konfigurationen på agenten.
- etckeeper-commit-pre är ett kommando skrivet i konfigurationsfilen, som kan köras innan konfigurationen skickas till agenten.
F # 14) Lista tecken som är tillåtna i ett klassnamn, modulnamn och identifierare?
Svar: Följande är acceptabla tecken när du förklarar klassnamn och modulnamn:
- Måste börja med små bokstäver.
- Kan innehålla gemener, siffror och understrykningar.
- Scope Resolution Operator, dvs “::” är namnseparator i klassnamnsdefinition.
Med variabelnamn accepteras tecken som nämns nedan:
- Kan börja med stora och små bokstäver.
- Kan innehålla siffror och understrykningar (‘_’).
- Om det första tecknet är en understrykning kan variabeln endast vara tillgänglig från sitt eget lokala omfång.
- Variabler är skiftlägeskänsliga.
F # 15) Vad kan du förvänta dig om du inte tecknar ett licensavtal för bidragsgivare?
Svar: Det är ett obligatoriskt villkor att underteckna ett CLA (Contributor License Agreement) för kodbidragare till Puppet eller Facter, utan vilka deras kod inte kan accepteras. För att hitta och ladda ner Puppet- eller Facter-kod skriven i Ruby ska användaren logga in på sitt GitHub-konto och underteckna ett avtal.
F # 16) Förklara vikten och placeringen av codedir i Puppet?
Svar: codedir används av Master och applicera kommando, men inte av agenten. Det är huvudkatalogen för data och kod som använder en miljö som innehåller manifest och moduler, global modulkatalog och Hieradata och konfiguration.
Denna kod finns i följande lokala kataloger
I fall av Windows: C: ProgramData PuppetLabs marionett etc.
Medan för Linux: / etc / dir / PuppetLabs / code
F # 17) Beskriv Hiera.
Svar: Hiera är ett sökningssystem för konfigurationsdata i nyckel-värde-format. Det hjälper till att hämta data från Puppet-kod. Den här koden använder detta system för explicita parametersökning för klasser från en katalog. Detta system använder Puppets fakta för att identifiera datakällor. Dess 5thversion stöder datafiler i JSON-, YAML- och EYAML-format.
Det söker konfigurationsdata i tre oberoende konfigurationsskikt med start från global dålig miljö och slutligen modulskikt med konfiguration.
F # 18) Beskriv virtuella resurser i Puppet.
Svar: Under Puppet-installationen inträffar ett duplicerat resursdeklarationsfel om samma resurs används mer än en gång. Detta verktyg löser problemet genom att införa en virtuell resurs. Att deklarera virtuell resurs gör sin resurs tillgänglig för samlare och realiserar funktion. Hanterar också tillstånd när resursen realiseras.
Du kan hitta orealiserade virtuella resurser som är inaktiva inkluderade i katalogen. Virtuella resurser används för hantering av resurser vars flera villkor över klasser uppfylls och för överlappande resursuppsättningar av flera klasser.
hur man använder en .bin-fil
F # 19) Beskriv modul-sökväg.
Svar: Befälhavarservice och med docktillämpningskommandot där marionettmanifest tillämpas lokalt, ladda innehållet från moduler (installerat i dockmodulens väg) från en eller flera av katalogerna. Det är den beställda listan över kataloger som Puppet sökt efter moduler. Dessa kataloger från listan över modulvägar är åtskilda av ett avgränsande tecken.
I Linux är det kolon (:) och i Windows är det semikolon (;).
F # 20) Ge detaljer om basmodulvägen.
Svar: Global modulkataloglista är basmodulvägen för tillämpning i alla miljöer, konfigurerad med basmodulvägsinställning, med standardvärde enligt nedan:
I fall av Linux: $ codedir / modules: / opt / puppetlabs / puppet / modules
I fall av Windows: $ codedir modules
F # 21) Beskriv om cachekatalogen i Puppet.
Svar: Marionett under normal drift lagrar genererad data i en cachekatalog som heter vardir. Dessa data kan brytas för analys. Vid agent och tillämpa kommando, Cache-katalogen finns på någon av följande platser:
I fall av Windows är det C: programmerad PuppetLabs marionett cache
Medan det i Linux är det / opt / puppetlabs / marionett / cache alternativt, genom att använda –vardir-alternativet på kommandoraden, kommer platsen för marionettcache-katalogen att anges. Vi kan ändra platsen för vardir-filer och kataloger genom att ändra inställningarna för puppet.conf.
F # 22) Förklara om 'Miljöer' i Puppet.
Svar: Miljö är en logisk distribution som separerar moduler och manifesteras i separata sektioner eller mappar för noder för att få lite kod beroende på vilken miljönod som tillhör, den är statiskt inställd i puppet.conf. Det är en funktion att dela upp infrastrukturkonfiguration i miljöer Admin kan använda en enda master för att betjäna flera isolerade konfigurationer.
F # 23) Beskriv resurser i Puppet.
Svar: Puppet Resources använder bygga, designa och hantera system- eller serverinfrastruktur. Detta verktyg har flera typer av resurser för att bygga och definiera nya resurser för att definiera systemarkitektur. Marionettkodblock i manifestfilen (resursdeklaration) skapas med hjälp av DML (Declarative Modeling Language).
Det innehåller Resurstyp, Resursparameter, Attribut, och Värden.
F # 24) Förklara typer av resurser i Puppet.
Svar: Marionettstyrda systemkomponenter analyseras med hjälp av resurstyper. Få vanliga resurstyper är grupp, paket, användare, fil och tjänst.
Det finns två typer av resurser, inbyggda typer och anpassade typer. Några av de inbyggda resurstyperna är grupp, paket, användare, fil och service. Du kan hitta anpassade typer som distribueras i dockmoduler som hänvisas från forge.puppet.com.
F # 25) Förklara noddefinition i marionett.
Svar: Noddefinition eller uttalande är ett marionettkodblock som matchar nodens katalog. Det tillåter tilldelning av en specifik konfiguration till den drabbade noden.
Deras syntax liknar den för klassdefinitioner med nodnyckelord, noddefinitionsnamn, öppning av lockigt stöd, en blandning av klass- och resursdeklarationer, samlare, variabler, villkorliga uttalanden, funktioner och kedjevandringsförhållanden, slutligen en avslutande lockig klammer.
F # 26) Beskriv funktionerna i Puppet.
Svar: Marionettfunktioner är plug-ins som används under katalogkompilering. Funktionsanrop efter manifest gör att funktionen körs och returneras och ändrar katalogen som en bieffekt.
hur man gör en testplan
Man kan skapa sina egna funktioner som accepterar argument genom parametrar för att transformera data och konstruera värden. Dessa är plug-ins eller uttryck som kallas för att lösa värde och kan antingen vara inbyggda eller anpassade.
F # 27) Ge exempel för att konfigurera system med Puppet
Svar: Några exempel på systemet som är konfigurerat med marionett listas nedan:
- Hantera NTP-tjänst: Network Time Protocol (NTP) är de viktigaste tjänsterna som kan hanteras och konfigureras med hjälp av marionett, för att synkronisera tid över alla noder.
- Hantera Sudo-privilegier: Sudo-kommandot på dina agenter kommer att identifiera systemanvändare med förhöjda åtkomstbehörigheter.
- Hantera en DNS-namnserverfil: Namnserver som kartlägger IP-adresser som förstås av datorer med läsbara URL-adresser kan hanteras med detta konfigurationsverktyg.
- Hantera brandväggsregler: Olika regler och policyer som applikationsportar (TCP / UDP), nätverksportar, IP-adress och åtkomst-neka uttalanden kan utformas med brandvägg, med verktygets brandväggspolicyer kan hanteras.
F # 28) Beskriv huvud- eller platsmanifest i marionett.
Svar: Agent skickar tillstånd för resurser som kallas fakta för att behärska, baserat på den mottagna informationen. Master skapar katalog i form av en enda manifestfil, känd som huvud- eller platsmanifest. Mastern använder huvudmanifestfilen, antingen en enda eller katalog med .pp-filer, konfigurerad av den aktuella nodens miljö, som med hjälp av manifestinställningen i environment.conf bestämmer huvudmanifestet.
F # 29) Vad menar du med att använda marionett?
Svar: Puppet Apply är ett fristående exekveringskommando för applicering på enskilt manifest. Den här koden när den används på modulvägen via kommandoraden eller konfigurationsfilen fungerar som katalog. 'Marionettansökan' är en kommandoradskod för att tillämpa en konfiguration.
F # 30) Lista företag som använder Puppet.
Svar: Få multinationella företagsorganisationer som använder Puppet i sin infrastrukturhantering och konfiguration är:
- KPN - nederländskt fasta och mobiltelekommunikationsföretag, Nederländerna
- CERN - Europeiska organisationen för kärnkraftsforskning
- Aegon UK - finansiell tjänsteleverantör
- NYSE - New York Stock Exchange
- ICE - Interkontinentalt utbyte
- ANZ Bank
- Cisco
- Splunk
F # 31) Förklara vilka förberedelser du behöver före installationen innan du installerar Puppet Open Source.
Svar: Det finns några förberedelser och krav innan du installerar Puppet Open Source
- Val av server som master.
- Validera servrar och nätverk är redo och förberedda för installation med följande instruktioner:
- Val av distributionstyp för den valda servern. Vi kan använda Docker-komponeringsbaserad stack-puppet ware eller om du redan har Docker, sedan klona repo.
- kör docker-compose up-kommandot
- Installera agenter
- När Puppet Server har konfigurerats måste vi installera agentpaketet på den nodmaskin där konfigurationshanteringsverktyget behövs.
- Baserat på ditt operativsystem har du Linux, OS X och Microsoft Windows att välja.
- Du kan använda NTP och sudoers för att automatisera Puppet-kod för utformning av konfiguration.
F # 32) Förklara Puppet Enterprise.
Svar: Puppet Enterprise är skalbart över olika team, system, lokala eller över molnservrar, genom att implementera efterlevnadspolicyer och säkerhet tillsammans med konfiguration för lokal och molnmigrerande infrastruktur med noll stillestånd.
Det genererar också rapporter om status för kod som byggs, och information om vem och vilka ändringar som gjordes på en infrastrukturkod, utlöser analyskontroller av regelbundna intervall på infrastruktur för att bedöma eventuell påverkan före någon incident.
F # 33) Beskriv Puppet Remediate.
Svar: Den skannar infrastrukturen och producerar data om sårbarheter i spårbara och granskningsbara format för att prioritera deras upplösningar. Åtgärda balanseringsverktyg som bedömer sårbarheter och prioriterar uppgifter som behöver omedelbar lösning, deltar i sådana uppgifter genom att köra förbyggda uppgifter som hantera paket, tjänster eller köra skalskriptet och åtgärda problem omedelbart.
F # 34) Förklara hur Puppet Relay fungerar.
Svar: Puppet Relay övervakar din infrastruktur och kör automatiseringsskript som inte bara utlöser varningar vid eventuella incidenter med API: er, DevOps-verktyg tillgängliga genom att ansluta lokala eller molnanslutna system utan återställer exempel med hjälp av standardkonfigurationsdetaljer som finns i kataloger från manifestet och slutligen informera instansens lag.
F # 35) Vad är bult?
Svar: Bolt automatiserar samordning, hantering och installation av datorsystem och relaterade tjänster som tidigare behandlats manuellt och underhåller hela organisationens infrastruktur.
Slutsats
Puppet är ett automatiserat konfigurationshanteringsverktyg för lokal och virtuell infrastruktur som följer klientservermodellen, där en maskin är master och andra maskiner fungerar som agent eller noder. Huvudsyftet är att hantera resurser på din infrastruktur. Resurs är en kod som hanterar serverns egenskaper som ett användarkonto eller programinnehåll.
Detta konfigurationshanteringsverktyg ger oss möjlighet att uttrycka serverkonfiguration i kod för att automatiskt hantera din infrastruktur.
Vi är säkra på att den här guiden om Puppet-intervjufrågor hjälper dig att förbereda dig för din kommande intervju.
Rekommenderad läsning
- Intervjufrågor och svar
- ETL Testing Intervju Frågor och svar
- Några knepiga manuella testfrågor och svar
- 35+ Top Apache Tomcat intervjufrågor och svar
- Topp 35 Vanliga frågor om struts Intervju Frågor och svar
- 35+ vanligaste Microsoft Excel-intervjufrågor och svar
- Topp 35 Android-intervjufrågor och svar
- TOPP 35 HTML5 intervjufrågor och svar