Devops Pytania i odpowiedzi na wywiad 2022 – najczęściej zadawane

Opublikowany: 2021-01-08

Spis treści

Pytania i odpowiedzi dotyczące wywiadu DevOps

Jesteś inżynierem Devops i szukasz pracy, więc spójrzmy na najczęściej zadawane pytania do wywiadu Devops

W porównaniu z innymi dziedzinami informatyki DevOps nie jest zbyt popularny. Ale to dlatego, że zarówno proste, jak i złożone do zrozumienia.

Na początek nie jest to narzędzie ani oprogramowanie. Jest to raczej rodzaj kultury pracy i metodologii, w której zespoły programistyczne (programiści) i operacyjne (wdrożeniowcy) są łączone w celu ciągłego rozwoju, integracji, testowania, wdrażania i monitorowania. Ostatecznym celem jest szybsze tworzenie i dostarczanie produktu przy jak najniższym wskaźniku awaryjności. Uzupełnia i współpracuje z metodologią Agile, ale nie jest do niej podobna.

Jeśli jesteś kimś, kto interesuje się mieszaną naturą tej dziedziny i chce w niej pracować, poniższe pytania na rozmowie kwalifikacyjnej pomogą ci przejść przez bramy i zdobyć tę wymarzoną pracę.

  • Jakie są popularne narzędzia DevOps?
    • Marionetka
    • Ansible
    • Git
    • Maven
    • Szef Kuchni
    • Jenkins
    • Doker
    • Nagios
    • ELK
  • Jakie są podstawowe operacje DevOps?
    • Rozwój
    • Kontrola wersji
    • Testowanie
    • Integracja
    • Zastosowanie
    • Dostawa
    • Konfiguracja
    • Monitorowanie
    • Opinia
  • Jakie są 3 ważne KPI w DevOps?
    • Częstotliwość wdrażania
    • Odsetek nieudanych wdrożeń
    • Średni czas do odzyskania po awarii
  • Co to jest system kontroli wersji?
    VCS to oprogramowanie, które umożliwia twórcom oprogramowania współpracę, zachowując jednocześnie całą historię wykonanej pracy do dowolnego momentu.
  • Istnieją 2 rodzaje VCS:
    • Centralny VCS. Przykład: Git
    • Dystrybuuje/zdecentralizowany VCS. Przykład: SVN
  • Powodem, dla którego VCS jest integralną częścią DevOps jest to, że:
    • Pozwala programistom na wspólną pracę nad fragmentem kodu
    • Nie pozwala im nadpisywać nawzajem swoich zmian
    • Utrzymuje historię każdej wersji w historii
  • Jaka jest różnica między Git pull a Git fetch?
    W postaci prostego równania
    Git pull = pobieranie z Git + scalanie z Git
    Polecenie git pull służy do ściągania wszelkich nowo dokonanych zmian lub zatwierdzeń do gałęzi docelowej w lokalnym repozytorium z gałęzi z centralnego repozytorium.
    Polecenie git fetch również ma ten sam cel. Jednak zamiast przechowywać nowe zmiany i zatwierdzenia w gałęzi docelowej, przechowuje je w nowej gałęzi. Aby zmiany miały odzwierciedlenie również w gałęzi docelowej, musimy użyć polecenia git merge.
    Równanie przydaje się przy zapamiętywaniu funkcji każdego polecenia.
  • Skąd możemy wiedzieć, czy gałąź w Git została połączona z masterem?
    Za pomocą polecenia git branch -merged LUB git branch -no-merged.
    Pierwsza wyświetla wszystkie gałęzie, które zostały połączone z bieżącą gałęzią, podczas gdy druga wyświetla gałęzie, które nie zostały jeszcze połączone.
  • Jakie strategie rozgałęziania są dostępne w usłudze Git?
    • Rozgałęzienie funkcji
      W tej strategii rozgałęziania wszystkie zmiany funkcji są przechowywane w gałęzi. Gdy testy automatyczne testują i weryfikują gałąź funkcji, gałąź jest scalana z wzorcem.
    • Rozgałęzienie zadań
      W ramach tej strategii każde zadanie realizowane jest we własnym oddziale. Klucz zadania jest dołączony wraz z nazwą oddziału. Obecność tego klucza ułatwia sprawdzenie, które zadanie jest realizowane przez który kod.
    • Rozgałęzienie wydania
      Gdy gałąź deweloperska jest gotowa ze swoimi funkcjami, jest klonowana w celu utworzenia gałęzi wydania. Utworzenie tej gałęzi wprawia w ruch cykl wydania, w którym nie ma żadnych nowych funkcji i można je dodawać. Jedyne zadania, które można wykonać, to: poprawki błędów, generowanie dokumentacji i inne zadania związane z wydaniem. Wydanie jest scalane z wersją główną i oznaczane numerem wersji, gdy jest gotowe do wysyłki.
  • Co to jest SubGit?
    SubGit to narzędzie służące do migracji SVN do Git.
  • Jak możemy sklonować repozytorium Git za pomocą Jenkinsa?
    Pierwszym krokiem jest wprowadzenie nazwy użytkownika i adresu e-mail w systemie Jenkins. Przejdź do katalogu zadań i wykonaj polecenie „git config”.
  • Jaka jest różnica między Poradnikiem Ansible a rolami?
    Poradniki:
    Zawierają sztuki
    Działaj jako mapy między gospodarzami i rolami
    Przykłady: webservers.yml, site.yml
    Role:
    Czy podzbiory sztuki nadają się do wielokrotnego użytku?
    Są zbiorem zadań do wykonania określonej roli
    Przykład: wspólne, serwery WWW
  • Co to jest Docker?
    Docker to rodzaj technologii, która pakuje wszystkie aplikacje i powiązane zależności w kontenery, zapewniając w ten sposób, że Twoja aplikacja działa płynnie i bezbłędnie w dowolnym środowisku. Do tworzenia tych kontenerów używane są obrazy platformy Docker.

Działa tylko na platformach Linux i Cloud:

  • openSUSE 12.3+
  • Gentoo
  • ArchLinux
  • RHEL 6,5+
  • Fedora 20+
  • Microsoft Azure
  • Miejsce w szafie

By wymienić tylko kilka.

  • Co to jest Scrum?
    Scrum jest jak narzędzie do rozwiązywania zadań, które wykorzystuje iteracje i praktyki przyrostowe do dzielenia złożonego oprogramowania i zadań programistycznych na mniejsze, możliwe do wykonania części. Każda iteracja trwa 2 tygodnie.
  • Jakie narzędzia SCM są obsługiwane przez Jenkins?
    • RTC
    • Siła
    • Przeźroczyste
    • Git
    • Subwersja
    • CVS

Obszar objęty DevOps jest ogromny, ponieważ jest połączeniem 2 unikalnych etapów tworzenia oprogramowania. Powyższa lista daje wyobrażenie o rodzaju zadawanych pytań i nie jest w żaden sposób wyczerpująca. Jednak dla silnego startu nie możesz się pomylić. Powodzenia w przygotowaniu rozmowy kwalifikacyjnej!

Ucz się kursów inżynierii oprogramowania online z najlepszych światowych uniwersytetów. Zdobywaj programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.

Wniosek

Na tym kończymy nasze Pytania i Odpowiedzi do Wywiadu Devops . Mamy nadzieję, że nasz przewodnik będzie pomocny. Będziemy regularnie aktualizować przewodnik, aby być na bieżąco.

Jeśli chcesz zostać inżynierem DevOps, sprawdź program Executive PG IIIT-B i upGrad w programie rozwoju oprogramowania Full Stack.

Co to jest DevOps?

DevOps to termin używany do opisania współpracy programistów, inżynierów niezawodności witryny i inżynierów zapewniania jakości. Można to postrzegać jako metodologię lub kulturę. Jest to filozofia wykorzystywana do tworzenia i dostarczania aplikacji poprzez współpracę programistów i operacji IT. Termin DevOps to połączenie dwóch słów Development i Operations. Opracowano i wdrożono nowe praktyki DevOps, aby pomóc programistom w efektywniejszej współpracy między sobą i operacjami IT w celu szybszego dostarczania oprogramowania klientom.

Czym jest narzędzie do kontroli wersji używane w DevOps?

Git to jedno z najpopularniejszych narzędzi wykorzystywanych w DevOps. Jest to rozproszony system kontroli wersji, używany głównie do zarządzania kodem źródłowym. Git przechowuje każdą wersję projektu we własnym repozytorium. Najlepszą cechą Git jest jego rozproszony charakter. Każdy programista może łatwo współpracować i udostępniać kod innym członkom swojej grupy. Najlepsze jest to, że oszczędza to programistom dużo czasu podczas kodowania, co prowadzi do lepszej pracy.

Czym zajmuje się programista DevOps?

Słowo DevOps to połączenie dwóch terminów: Rozwój i Operacje. Termin został wymyślony przez Patricka Debois i odnosi się do niedawnego trendu łączenia dwóch aspektów cyklu życia oprogramowania i zacierania tradycyjnych podziałów ich obowiązków. Inżynierowie DevOps współpracują z zespołem tworzącym oprogramowanie oraz zespołem obsługującym serwery. Rolę inżyniera DevOps można podsumować w następujący sposób: przejmuje na własność wszystkie rzeczy związane z dostarczaniem pojedynczej usługi lub systemu oraz wszystkich usług i systemów wspierających, współpracuje z zespołem deweloperskim w celu zidentyfikowania zależności między rozwojem a działaniem, oraz Współpracuje z zespołem operacyjnym, aby pomóc zautomatyzować operacje i rozwój procesu dostawy. Działa jako łącznik między zespołami rozwoju i operacji oraz zespołem ds. zarządzania produktem i projektem.