Top 50 DevOps pohovorových otázek a odpovědí (PDF)
Zde jsou otázky a odpovědi na pohovor DevOps pro čerstvější i zkušené kandidáty, aby získali svou vysněnou práci.
Otázky a odpovědi k rozhovoru DevOps pro začátečníky
1) Vysvětlete, co je DevOps?
Jde o nově vznikající pojem v oblasti IT, který není ničím jiným než praxí, která klade důraz na spolupráci a komunikaci jak softwarových vývojářů, tak implementačního (provozního) týmu. Zaměřuje se na rychlejší dodávání softwarových produktů a snižování chybovosti verzí.
👉 Zdarma ke stažení PDF: Otázky a odpovědi k rozhovoru DevOps >>
2) Uveďte, jaké jsou klíčové aspekty nebo principy za DevOps?
Klíčovým aspektem nebo principem DevOps je
- Infrastruktura jako kód
- Průběžné nasazení
- Automatizace
- monitorování
- Bezpečnost
3) Jaké jsou hlavní operace DevOps s vývojem aplikací a infrastrukturou?
Základní operace DevOps jsou
Vývoj aplikací
- Tvorba kódu
- Pokrytí kódu
- Testování jednotek
- Obal
- Rozvinutí
Infrastruktura
- Provisioning
- Konfigurace
- Orchestrace
- Rozvinutí
4) Vysvětlete, jak se v AWS zpracovává nebo provádí „kód infrastruktury“?
V AWS,
- Kód pro infrastrukturu bude v jednoduchém formátu JSON
- Tento kód JSON bude uspořádán do souborů nazývaných šablony
- Tyto šablony lze nasadit na AWS devops a poté je spravovat jako zásobníky
- Later služba CloudFormation provede operaci Vytvoření, odstranění, aktualizace atd. v zásobníku
5) Vysvětlete, který skriptovací jazyk je pro inženýra DevOps nejdůležitější?
Jednodušší skriptovací jazyk bude pro inženýra DevOps lepší. Python se zdá být velmi populární.
6) Vysvětlete, jak je DevOps užitečné pro vývojáře?
devops může vývojářům pomoci opravit chybu a rychle implementovat nové funkce. Pomáhá také k jasnější komunikaci mezi členy týmu.
7) Uveďte některé oblíbené nástroje pro DevOps?
Některé z oblíbených nástrojů pro DevOps jsou
- Jenkins
- Nagios
- Monit
- ELK (Elasticsearch, Logstash, Kibana)
- Jenkins
- přístavní dělník
- Možná
- Git
8) Uveďte, v jakém případě jste použili SSH?
Použil jsem SSH k přihlášení ke vzdálenému počítači a práci na příkazovém řádku. Kromě toho jsem jej také použil k tunelování do systému, abych usnadnil zabezpečenou šifrovanou komunikaci mezi dvěma nedůvěryhodnými hostiteli přes nezabezpečenou síť.
9) Vysvětlete, jak byste řešili kontrolu revizí (verzí)?
Můj přístup k řízení revizí by byl zveřejnění kódu na SourceForge nebo GitHubu, aby si ho mohl prohlédnout každý. Také zveřejním kontrolní seznam z poslední revize, abych se ujistil, že všechny nevyřešené problémy jsou vyřešeny.
10) Jaké jsou typy požadavků HTTP?
Typy požadavků HTTP jsou
- GET
- HLAVA
- PUT
- POST
- NÁPLAST
- DELETE
- STOPA
- PŘIPOJIT
- VOLBY
11) Vysvětlete, co byste zkontrolovali, kdyby se linuxový build-server náhle začal zpomalovat?
Pokud se Linux-build-server náhle začne zpomalovat, zkontrolujte následující tři věci
Odstraňování problémů na aplikační úrovni | Problémy související s RAM, problémy se čtením a zápisem I/O disku, problémy související s místem na disku atd. |
Řešení problémů na úrovni systému | Zkontrolujte soubor protokolu aplikace NEBO soubor protokolu aplikačního serveru, problémy s výkonem systému, protokol webového serveru – zkontrolujte protokoly HTTP, tomcat lo, jboss nebo WebLogic a zjistěte, zda čas odezvy/příjmu aplikačního serveru není příčinou zpomalení nebo úniku paměti aplikace |
Odstraňování problémů se závislými službami | Problémy související s antivirem, problémy související s firewallem, problémy se sítí, problémy s dobou odezvy serveru SMTP atd. |
12) Jaké jsou klíčové součásti DevOps?
Zde jsou některé důležité Fáze životního cyklu DevOps:
- Neustálý vývoj
- Kontinuální integrace
- Průběžné testování
- Kontinuální nasazení
- Průběžné sledování
- Průběžná zpětná vazba
- Nepřetržitý Operace
13) Uveďte několik cloudových platforem, které se používají pro implementaci DevOps
Populární platforma cloud computingu používaná pro implementaci DevOps jsou:
- Google Cloud
- Amazon Webové služby
- Microsoft Azure
14) Uveďte některé výhody používání systému správy verzí
- Systém správy verzí umožňuje členům týmu kdykoli volně pracovat na jakémkoli souboru.
- Všechny minulé verze a varianty jsou úzce nabaleny uvnitř VCS.
- Distribuované VCS vám pomůže uložit kompletní historii projektu, takže v případě poruchy na centrálním serveru můžete použít místní úložiště Git člena vašeho týmu.
- Umožňuje vám zjistit, jaké přesné změny byly provedeny v obsahu souboru
15) Vysvětlete Git Bisect
Git bisect vám pomůže najít revizi, která přinesla chybu, pomocí binárního vyhledávání.
16) Jaká je konstrukce?
Sestavení je metoda, při které se zdrojový kód skládá, aby se ověřilo, zda funguje jako jeden celek. V procesu vytváření sestavení bude zdrojový kód podroben kompilaci, kontrole, testování a nasazení.
17) Co je to loutka?
Loutka je užitečný nástroj pro řízení projektů. Pomáhá vám automatizovat úkoly správy.
18) Vysvětlete dvoufaktorovou autentizaci
Dvoufaktorová autentizace je metoda zabezpečení, při které uživatel poskytuje dva způsoby identifikace ze samostatných kategorií.
19) Vysvětlete pojem „Canary Uvolnění'.
Canary release je vzor, který snižuje riziko zavedení nové verze softwaru do produkčního prostředí. Provádí se tak, že je řízeným způsobem zpřístupněn podskupině uživatelů. Než jej zpřístupníte celé uživatelské sadě.
20) Jaké typy testování jsou důležité pro zajištění připravenosti nové služby k produkci?
Musíte provádět průběžné testování, abyste se ujistili, že je nová služba připravena k produkci.
Otázky a odpovědi k rozhovoru DevOps pro zkušené
21) Co je to Vagrant?
Vagrant je nástroj, který dokáže vytvářet a spravovat virtualizovaná prostředí pro testování a vývoj softwaru.
22) Jaké je použití PTR v DNS?
Záznam ukazatele, který je také známý jako (PTR), se používá pro zpětné vyhledávání DNS.
23) Co je to šéfkuchař?
Je to výkonná automatizační platforma, která transformuje infrastrukturu do kódu. V tomto nástroji můžete používat skripty pro psaní, které se používají k automatizaci procesů.
24) Jaké jsou předpoklady pro implementaci DevOps?
Níže jsou uvedeny užitečné předpoklady pro implementaci DevOps:
- Alespoň jeden software pro správu verzí
- Správná komunikace mezi členy týmu
- Automatizované testování
- Automatizované nasazení
25) Uveďte některé osvědčené postupy, které by měly být dodržovány pro úspěch DevOps.
Zde jsou základní osvědčené postupy pro implementaci DevOps:
- Rychlost dodání znamená čas potřebný k tomu, aby se jakýkoli úkol dostal do produkčního prostředí.
- Sledujte, kolik defektů bylo nalezeno v různých
- Je důležité měřit skutečný nebo průměrný čas, který trvá zotavení v případě selhání v produkčním prostředí.
- Počet chyb hlášených zákazníkem také ovlivňuje kvalitu aplikace.
26) Vysvětlete nástroj SubGIt
SubGit vám pomůže migrovat SVN na Git. Umožňuje vám také vytvořit zapisovatelné zrcadlo Git místního nebo vzdáleného úložiště Subversion.
27) Vyjmenujte některé důležité nástroje pro monitorování sítě
Některé nejvýznamnější nástroje pro monitorování sítě jsou:
- Splunk
- Icinga 2
- Wireshark
- Nagios
- OpenNMS
28) Zda může vaše grafická karta fungovat Unity jak to můžeš vědět?
Když použijete příkaz
/usr/lib/Linux/unity_support_test-p
poskytne podrobný výstup o Unity's požadavky, a pokud jsou splněny, pak vaše grafická karta může běžet jednotně.
29) Vysvětlete, jak povolit zvuk při spuštění Ubuntu?
Chcete-li povolit zvuk při spuštění
- Klikněte na ovládací zařízení a poté klikněte na Spouštěcí aplikace
- v Předvolby spouštěcí aplikace okno, klepněte na tlačítko přidat přidat záznam
- Poté vyplňte informace do polí pro komentáře, jako je Jméno, Příkaz a Komentář
/usr/bin/canberra-gtk-play—id= "desktop-login"—description= "play login sound"
- Odhlaste se a poté se přihlaste, jakmile budete hotovi
Můžete jej také otevřít klávesovou zkratkou Ctrl+Alt+T
.
30) Jaký je nejrychlejší způsob otevření an Ubuntu terminál v konkrétním adresáři?
Chcete -li otevřít Ubuntu terminál v konkrétním adresáři, můžete použít vlastní klávesovou zkratku.
Chcete-li to provést, zadejte do příkazového pole nové vlastní klávesnice genom – terminál – – pracovní – adresář = /cesta/k/dir.
31) Vysvětlete, jak můžete získat aktuální barvu aktuální obrazovky na Ubuntu plocha počítače?
Obrázek na pozadí můžete otevřít v Gimpu (editor obrázků) a poté pomocí nástroje kapátko vybrat barvu na konkrétním bodě. Poskytuje vám hodnotu RGB barvy v tomto bodě.
32) Vysvětlete, jak vytváříte spouštěče na ploše v Ubuntu?
Chcete-li vytvořit spouštěče na ploše v Ubuntu Můžeš použít
ALT+F2 a poté zadejte „gnome-desktop-item-edit –create-new~/desktop“, spustí se starý dialog GUI a vytvoří se spouštěč na vaší ploše.
33) Vysvětlete, co je Memcached?
Memcached je bezplatný a open source, vysoce výkonný, distribuovaný systém ukládání objektů do paměti. Primárním cílem Memcached je zlepšit dobu odezvy pro data, která lze jinak obnovit nebo sestavit z jiného zdroje nebo databáze. Používá se, aby se předešlo nutnosti obsluhy SQL databáze nebo jiný zdroj opakovaně pro načítání dat pro souběžný požadavek.
Memcached lze použít pro
- Sociální sítě->Ukládání profilu do mezipaměti
- Agregace obsahu-> HTML/Ukládání stránek do mezipaměti
- Cílení reklam-> Sledování souborů cookie/profilu
- Vztah->Ukládání relace do mezipaměti
- Elektronický obchod -> Ukládání relace a HTML do mezipaměti
- Služby založené na umístění-> Škálování databázových dotazů
- Hraní a zábava->Ukládání relací do mezipaměti
Memcache pomáhá
- Zrychlení aplikačních procesů
- Určuje, co skladovat a co ne
- Snižte počet žádostí o načítání do databáze
- Snižuje I/O (vstup/výstup) přístup (pevný disk)
Nevýhodou Memcached je
- Nejedná se o trvalé úložiště dat
- Ne databáze
- Nejedná se o konkrétní aplikaci
- Nemůže ukládat do mezipaměti velký objekt
34) Zmínit některé důležité funkce Memcached?
Mezi důležité funkce Memcached patří
- CAS tokeny: Token CAS je připojen k objektu načtenému z mezipaměti. Tento token můžete použít k uložení aktualizovaného objektu.
- Zpětná volání: Zjednodušuje kód
- getDelayed: Zkracuje dobu zpoždění vašeho skriptu, který čeká na výsledky, které se vrátí ze serveru
- Binární protokol: U novějšího klienta můžete místo ASCII použít binární protokol
- Igbinář: Dříve klient vždy prováděl serializaci hodnoty s komplexními daty, ale s Memcached můžete použít igbinary option.
Otázky a odpovědi k rozhovoru DevOps pro 5+ zkušeností
35) Vysvětlete, zda je možné sdílet jednu instanci Memcache mezi více projekty?
Ano, je možné sdílet jednu instanci Memcache mezi více projekty. Memcache je úložný prostor a můžete spouštět memcache na jednom nebo více serverech. Klienta můžete také nakonfigurovat tak, aby mluvil s konkrétní sadou instancí. Na stejném hostiteli tedy můžete spustit dva různé procesy Memcache, a přesto jsou zcela nezávislé. Pokud jste svá data nerozdělili na oddíly, pak bude nutné vědět, ze které instance data získat nebo do které vložit.
36) Máte více serverů Memcache, na kterých jeden ze serverů memcache selže a má vaše data, pokusí se někdy získat klíčová data z tohoto jednoho neúspěšného serveru?
Data na serveru, který selhal, nebudou odstraněna, ale existuje ustanovení pro automatické selhání, které můžete nakonfigurovat pro více uzlů. Fail-over může být spuštěn během jakékoli chyby na úrovni soketu nebo serveru Memcached a nikoli během standardních chyb klienta, jako je přidání existujícího klíče atd.
37) Vysvětlete, jak můžete minimalizovat výpadky serveru Memcached?
- Když jedna instance selže, několik z nich selže, což způsobí větší zatížení databázového serveru, když se ztracená data znovu načtou, když klient zadá požadavek. Chcete-li se tomu vyhnout, pokud byl váš kód napsán tak, aby minimalizoval útisky mezipaměti, zanechá minimální dopad
- Dalším způsobem je vyvolat instanci Memcached na novém počítači pomocí IP adresy ztracených strojů
- Kód je další možností, jak minimalizovat výpadky serveru, protože vám dává svobodu měnit seznam serverů Memcached s minimální prací
- Nastavení hodnoty časového limitu je další možností, kterou někteří klienti Memcached implementují pro výpadek serveru Memcached. Když váš server Memcached selže, klient se bude pokoušet odeslat požadavek, dokud nebude dosaženo limitu časového limitu
38) Vysvětlete, jak můžete aktualizovat Memcached, když se změní data?
Když se data změní, můžete aktualizovat Memcached pomocí
- Proaktivní vymazání mezipaměti: Vymazání mezipaměti při vložení nebo aktualizaci
- Resetování mezipaměti: Je to podobné jako u první metody, ale místo pouhého mazání klíčů a čekání na další požadavek na obnovení mezipaměti dat resetujte hodnoty po vložení nebo aktualizaci.
39) Vysvětlete, co je to Dogpile efekt? Jak můžete tomuto efektu zabránit?
Dogpile efekt je událost, kdy vyprší platnost mezipaměti a webové stránky jsou zasaženy více požadavky ze strany klienta ve stejnou dobu. Tomuto efektu lze zabránit použitím zámku semaforu. V tomto systému, když hodnota vyprší, první proces získá zámek a začne generovat novou hodnotu.
40) Vysvětlete, jak by se Memcached neměl používat?
- Běžným zneužitím Memcached je použití jako úložiště dat, nikoli jako mezipaměť
- Nikdy nepoužívejte Memcached jako jediný zdroj informací, které potřebujete ke spuštění vaší aplikace. Data by měla být vždy dostupná také z jiného zdroje
- Memcached je pouze úložiště klíčů nebo hodnot a nemůže provádět dotaz na data ani iterovat obsah za účelem extrahování informací.
- Memcached nenabízí žádnou formu zabezpečení ani v oblasti šifrování, ani ověřování
41) Když se server vypne, jsou data uložená v Memcached stále dostupná?
Data uložená v Memcached nejsou trvanlivá, takže pokud je server vypnut nebo restartován, všechna data uložená v Memcached jsou smazána.
42) Uveďte, jaký je rozdíl mezi Memcache a Memcached?
- Memcache: Jedná se o rozšíření, které vám umožní pracovat přes praktická objektově orientovaná (OOP's) a procedurální rozhraní. Je navržen pro snížení zatížení databáze v dynamických webových aplikacích.
- Memcached: Jedná se o rozšíření, které využívá libmemcached knihovna, která poskytuje API pro komunikaci se servery Memcached. Používá se ke zvýšení dynamických webových aplikací zmírněním zatížení databáze. Je to nejnovější API.
43) Vysvětlete modrý/zelený vzor nasazení
Modrý/zelený barevný vzor řeší nejdůležitější výzvy, kterým čelíme během procesu automatického nasazení. V přístupu Blue/Green Deployment potřebujete zajistit dvě identická produkční prostředí. Pouze jeden z nich je však v daném okamžiku ŽIVÝ. Prostředí LIVE se nazývá modré prostředí.
Když tým připravuje další verzi svého softwaru, provádí poslední fázi testování v prostředí, které je známé jako zelené prostředí. Po ověření je provoz směrován do prostředí Green.
44) Jaké jsou kontejnery?
Kontejnery jsou z odlehčené virtualizace. Nabízejí izolaci mezi procesy.
45) Co je post mortem setkání s odkazem na DevOps?
Post mortem setkání se provádí, aby se prodiskutovalo, co se pokazilo a jaké kroky musíte podniknout, abyste se vyhnuli selhání.
46) Jaký je nejjednodušší způsob, jak postavit malý cloud?
VMfres je jednou z nejúčinnějších možností, jak vytvořit cloud IaaS z Virtual Box VM během okamžiku. Pokud však chcete lehké PaaS, pak je Dokku dobrou volbou, protože bash skript může být PaaS z kontejnerů Dokku.
47) Vyjmenujte dva nástroje, které se používají pro docker networking.
Pro docker networking můžete použít Kubernetes a Docker swarm.
48) Vyjmenujte některé oblasti, kde jsou implementovány DevOps
DevOps se používají pro výrobu, IT operace, zpětnou vazbu z výroby a vývoj softwaru.
49) Co je CBD?
CBD neboli Component-Based Development je jedinečný způsob, jak přistupovat k vývoji produktů. Při této metodě vývojáři vždy hledají existující dobře definované, testované a ověřené komponenty, aby je složili a sestavili do produktu, místo aby vyvíjeli od začátku.
50) Vysvětlete párové programování s odkazem na DevOps
Párové programování je inženýrská praxe pravidel extrémního programování. V této metodě dva programátoři pracují na stejném systému, na stejném návrhu/algoritmu/kódu.
Jeden programátor funguje jako „řidič“. Ostatní působí jako „pozorovatel“, který průběžně monitoruje postup projektu, aby identifikoval problémy. Role se mohou kdykoli obrátit bez předchozího upozornění.
51) Vysvětlete test odolnosti
Test, který zajišťuje obnovu bez ztráty dat a funkčnosti po selhání, se nazývá testy odolnosti.
52) Vyjmenujte tři důležité KPI DevOps
Tři nejběžnější KPI DevOps jsou:
- Mezitím zotavení po selhání
- Frekvence nasazení
- Procento neúspěšných nasazení
Tyto otázky na pohovoru také pomohou ve vašem životě (ústních)