top 20 latest devops interview questions
Най-популярните въпроси и отговори за интервю за DevOps, за да изчистите успешно всяко интервю за DevOps:
Видяхме списъка с най-добрите Доставчици на услуги DevOps в последния ни урок.
DevOps се отнася не само до инструменти, но и до набор от най-добри практики, които ни позволяват да преодолеем разликата между екипите за разработка и експлоатация в областите на непрекъсната интеграция и внедряване, като използваме интегриран набор от инструменти за автоматизиране на доставката на софтуера.
Предложено четене => Уводно ръководство за DevOps
Нека сега разгледаме някои от най-често задаваните въпроси в интервюто за DevOps, заедно с възможните отговори, които можете да дадете. Отговорите могат да варират в зависимост от собствената работа и опит.
Най-добрите въпроси за интервю за DevOps с отговори
По-долу е даден списък с най-често задаваните въпроси на DevOps в интервютата:
Да започваме.
В # 1) Обяснете DevOps.
Отговор:
- DevOps насърчава комуникацията и сътрудничеството между екипите за бизнес, развитие и операции. В известен смисъл говорим за обединение.
- DevOps не е само за инструменти, но и за включване на хора и процеси.
- DevOps е вдъхновен от Agile процеса.
- DevOps се занимава с автоматизиране на процесите на разработване, пускане и работа.
- DevOps помага за скоростта на доставяне на приложения до крайните потребители.
- DevOps се занимава и с непрекъснато усъвършенстване, което помага при ученето чрез обратна връзка.
В # 2) Обяснете няколко предпоставки, които са полезни за внедряването на DevOps.
Отговор: Предварителните условия включват:
- Ангажираност на висше ниво в организацията.
- Необходимост от промяна да бъде съобщена в цялата организация.
- Софтуер за контрол на версиите.
- Автоматизирани инструменти за съответствие за обработка.
- Автоматизирано тестване
- Автоматизирано внедряване
В # 3) Кои са най-добрите практики за внедряване на DevOps?
Отговор: Внедряването на DevOps варира в различните организации. Днес организациите се стремят да доставят софтуера по-бързо и от тази гледна точка тук са моите мисли за това как DevOps може да постигне ефективна комуникация с всички заинтересовани страни, включително оперативния екип.
- Всяка организация има определени бизнес цели и внедряването на DevOps трябва да се приведе в съответствие с нея. Трябва да има известна нужда от промяна.
- Насърчаване на комуникацията и сътрудничеството, особено между развитието и операциите.
- Автоматизацията е ключът и трябва да се прави и извършва, когато е възможно, в рамките на SDLC етапите, за да се улесни работата на DevOps.
- Инструментите, използвани в DevOps, трябва да се интегрират много добре. От гледна точка на всякакви търговски инструменти като IBM Rational CLM или Microsoft TFS, внедряването на DevOps е добро, тъй като е от един доставчик. По същия начин, човек трябва да разгледа инструментите с отворен код, които се интегрират, за да дадат подобни желани резултати.
- Внедряването на DevOps не е успешно без практики за непрекъсната интеграция и непрекъсната доставка. Така че CI на вашия код със стриктно тестване и правене на CD е ключът към него.
- Много е важно екипът на Ops да гарантира, че приложенията работят много добре на подходящи нива. Ако е необходимо, те ще трябва да работят с екипите за разработка, за да създадат инструменти, които биха помогнали за вграждането на правилните възможности за наблюдение в приложенията.
- И накрая, насърчавайте обратната връзка от крайните потребители, за да се даде възможност за непрекъснато усъвършенстване, което е ключът към подобряване на процеса и предоставяне на качествен софтуер.
В # 4) Кои са ключовите компоненти на DevOps?
Отговор: Основните компоненти включват:
- Непрекъсната интеграция
- Непрекъснато тестване
- Непрекъсната доставка
- Непрекъснато наблюдение
Въпрос # 5) Обяснете непрекъснатата интеграция.
Отговор: Непрекъснатата интеграция е много важен компонент на Agile процеса. Обикновено разработчиците работят върху функции или потребителски истории в спринт и извършват своите промени в хранилището за контрол на версиите.
След като кодът бъде ангажиран, цялата работа на разработчиците е добре интегрирана и изграждането се извършва редовно въз основа на всяко чекиране или график. Следователно непрекъснатата интеграция като практика принуждава разработчика да интегрира промените си с останалите, за да получи ранна обратна връзка.
как да тествате sql инжектиране ръчно
Q # 6) Обяснете непрекъсната доставка.
Отговор: Непрекъсната доставка е разширение на Непрекъсната интеграция, което главно помага да се получат възможно най-скоро функциите, които разработчиците разработват до крайните потребители. По време на този процес той преминава през различни етапи на QA, Staging и т.н., а след това за доставка до системата за ПРОИЗВОДСТВО.
В # 7) Обяснете непрекъснато тестване.
Отговор: От горната цел на Непрекъснатата интеграция, която е да предостави приложението на крайните потребители, основно позволяват непрекъсната доставка. Това не може да бъде завършено без достатъчно количество тестване на устройства и тестване за автоматизация.
Следователно трябва да потвърдим, че кодът е създаден и интегриран с всички разработчици, които изпълняват, както се изисква.
В # 8) Обяснете непрекъснат мониторинг.
Отговор: Тъй като приложението е разработено и внедрено, ние трябва да наблюдаваме неговата ефективност. Мониторинг също е много важно, тъй като може да помогне за разкриване на дефектите, които може да не са били открити по-рано.
В # 9) Как ще подходите, когато даден проект трябва да внедри DevOps?
Отговор: Могат да се използват следните подходи, но това ще варира в зависимост от действителните сценарии на проекта или от организация до организация
Етап 1: За всяко внедряване на DevOps, оценката на съществуващия процес и внедряването за около 2 до 3 седмици, като се вземат средно 5 приложения, е задължителна за измерване на процеса AS-IS, идентифицира областите за подобрение и предоставя пътна карта за изпълнението.
Обикновено за провеждане на тази оценка трябва да бъде привлечен старши профил като архитект на DevOps.
Етап 2: Може да се направи пилотен POC, за да се демонстрира работата от край до край на DevOps. След като това бъде прието и одобрено от крайните потребители, само тогава трябва да се извърши действителното изпълнение, предаване и разгръщане на плана за участващите проекти.
Всички необходими части от обучението също ще трябва да бъдат придадени на процеса или инструментите. На този етап трябва да се включат архитекти, инженери и тестери на DevOps.
Етап 3: Сега проектите трябва да са в режим DevOps с всички компоненти на непрекъсната интеграция / доставка / тестване и наблюдение, които се следват.
В # 10) Може ли DevOps да се приложи към процес на водопад? Обяснете значението на Agile процеса в изпълнението на DevOps.
Отговор: В процеса на водопада, тъй като всички ние сме наясно, първоначално са събрани пълни изисквания, след това системата е проектирана, внедряването на системата след това е извършено, последвано от тестване на системата и внедряване на крайните потребители. В този процес проблемът беше, че имаше огромно време за изчакване за изграждане и внедряване, което направи много трудно получаването на обратна връзка.
единичен тест интеграция тест система тест
Решението на горния проблем беше, че Agile процесът трябва да внесе гъвкавост както в разработката, така и в операциите. Подвижният процес може да бъде главен или може да се изисква определена предпоставка за внедряването на DevOps. DevOps върви ръка за ръка с процеса Agile.
Фокусът е да се освободи софтуерът много навременно с по-кратки цикли на освобождаване и бърза обратна връзка. И така, фокусът на гъвкавия процес ще бъде основно върху скоростта, а в DevOps той работи добре с автоматизацията на различни инструменти
В # 11) Каква е разликата между непрекъсната доставка и непрекъснато внедряване?
Отговор: В пъргав спринт, Например, има много функции или потребителски истории, които са разработени, тествани и готови за внедряване. Но въз основа на клиентски сценарии и приоритети не всички ще бъдат разгърнати. И така, тук при непрекъсната доставка е много важно кодът да бъде лесно достъпен за внедряване.
В непрекъснатото внедряване всички промени, разработени от разработчика, преминават през различни етапи, за да бъдат внедрени в средата на ПРОИЗВОДСТВО по автоматизиран начин.
В # 12) Какъв е вашият опит в проектите DevOps?
Отговор: Обяснете ролята си на инженер на DevOps и как работите като част от 24 * 7 средата и може би на смени, проектите, свързани с автоматизирането на CI и CD тръбопровода и предоставянето на подкрепа за екипите по проекти.
Следователно, поемане на пълна отговорност за поддържане и разширяване на средите за автоматизация на DevOps до все повече проекти и различни технологии ( Пример: .NET, J2EE проекти), участващи в организацията.
Също така, обяснете процеса ( Пример Agile) и инструменти, които са участвали в автоматизация от край до край. Можете също така да говорите за вашия опит, ако има такъв, в поддръжката на DevOps в облачната среда.
В # 13) Кои са топ 10 на инструментите на DevOps, които се използват в индустрията днес?
Отговор: Списъкът включва:
- Джира
- GIT / SVN
- Bitbucket
- Дженкинс
- Бамбук
- SonarQube
- Artifactory / Nexus
- Докер
- Готвач / Куклен / Отговарящ
- IBM Urbancode Deploy / CA-RA
- Nagios / Splunk
Въпрос # 14) Можете ли да обясните как се използват инструментите, споменати в горния въпрос и как те се свързват, за да дадат модел на DevOps (CI / CD)?
Отговор:
Планиране
- Джира - Използва се за планиране на проекти и управление на издания
Непрекъсната интеграция
- Отивам - Контрол на версиите
- Дженкинс - Инструмент за непрекъсната интеграция с отворен код, който също може да помогне при непрекъсната доставка.
- SonarQube - Анализ на кода
- JFrog Artifactory - Мениджър на двоично хранилище
Непрекъсната доставка
- Готвач / Куклен / Отговарящ - Управление на конфигурацията и внедряване на приложения
- IBM Urbancode Deploy / CA RA - Непрекъсната доставка
Непрекъснато наблюдение
- Nagios / Splunk
Примерен работен процес на DevOps:
- Обикновено в Agile процес потребителските истории, задачи, дефекти и т.н. се съхраняват в JIRA и се възлагат на собствениците и разработчиците на продукти.
- Разработчиците вземат задачите, които са им възложени, и работят по разработката. Изходният код се контролира от версията и се съхранява в GIT. Разработчиците извършват своите промени в изходния код в GIT. В крайна сметка кодът се споделя между разработчиците, използващи GitHub.
- Дженкинс, който е инструмент за непрекъсната интеграция, дърпа кода и при всяко чекиране или въз основа на график изграждането се извършва с помощта на инструменти за изграждане като Maven или ANT.
- Тъй като J2EE WAR файловете се създават, те също се контролират от версиите и се съхраняват в двоичен мениджър на хранилище като Artifactory или Nexus.
- Тестване на единици с помощта на JUnit и анализ на кода със SonarQube също се извършва и автоматизира
- След приключване на горния процес непрекъснатата доставка се извършва в различни среди въз основа на одобрения, като се използват инструменти като IBM UrbanCode Deploy / CA RA Непрекъснато тестване (функционално и приемателно тестване) се извиква в подходящите тестови среди с помощта на инструменти като селен
- Непрекъснатият мониторинг ще бъде продължаваща дейност в PROD средата
В # 15) Какво представлява управлението на конфигурацията от гледна точка на инфраструктурата и да споменем няколко популярни използвани инструмента?
Отговор: Управлението на конфигурацията се състои от практики и различни инструменти, включени за автоматизиране на доставката и операциите на инфраструктурата. Всичко е да поддържате сървъра готов ( Пример Инсталиране на системни пакети, мрежови конфигурационни настройки) за разгръщане на приложението, след като приложението бъде разработено.
Така че Ops или системният администратор трябва да осигури паритет в различни среди (Dev, QA, PROD и т.н. ...) чрез осигуряване на системите.
Инструментите, използвани в това пространство за автоматизиране на задачите по управление на конфигурацията, описани по-горе, са Готвач / Куклен / Отговарящ
В # 16) Кои инструменти за скриптове се използват в DevOps?
тествайте уебсайт в различни браузъри безплатно
Отговор: Python, Ruby
Въпрос # 17) Обяснете типичните роли, включени в DevOps.
Отговор:
- Архитект на DevOps: Лидерът, който е отговорен за целия процес на DevOps.
- Инженер на DevOps: Човекът трябва да има опит с Agile, SCM или контрол на версиите, CI / CD и настройка на инструменти за автоматизация за същите, автоматизация на инфраструктурата и управление на база данни. Всеки разработчик, който има умения за кодиране или скриптове и има проницателност да влезе в разгръщането или системния администратор, може да се класира за ролята на инженер на DevOps.
Въпрос # 18) Участвали ли сте в внедряването на DevOps в облака? Ако да, коя платформа за изчислителни облаци?
Отговор:Примери за популярни платформи за изчислителни облаци:
- AWS - Уеб услуги на Amazon
- Microsoft Azure
- Google Cloud
Въпрос # 19) Обяснете някои от показателите, които са били следвани за успеха на DevOps.
Отговор:
Някои от примерите са както следва:
- Първият и най-важен фактор е скоростта на доставка, което означава време, необходимо на всеки работен артикул да попадне в производствената среда.
- Следва разгръщането и колко време ще отнеме, след като този процес бъде автоматизиран.
- Почти е необходимо да се проследи колко дефекти са открити в различни среди по отношение на средата на ПРОИЗВОДСТВО. Това е много важно при разглеждането на функциите, които трябва да бъдат пуснати по-бързо. Използването на Agile методологии помага много и основната цел е да се намалят дефектите на ниво ПРОИЗВОДСТВО.
- Обикновено внедряванията не се провалят, но е много важно да се следи този аспект и да има механизъм за връщане към предишната стабилна версия.
- Във всяко внедряване на DevOps, модулното тестване е от ключово значение, както и функционалното тестване. Въз основа на направените промени в кода, често трябва да разгледаме дали тези тестове се разбиват и до каква степен. Наложително е автоматизираният тест да е достатъчно здрав, за да поддържа промени в кода.
- Много е важно да се измери действителното или средното време, необходимо за възстановяване в случай на повреда в производствената среда. Това се нарича средно време за възстановяване (MTTR) и трябва да е кратко. Това също означава, че човек трябва да разполага с подходящи инструменти за мониторинг, за да поддържа времето за възстановяване кратко.
- Ефективността на приложението е друга ключова метрика, която трябва да се наблюдава, особено след като се извършат каквито и да е внедрявания.
- Много важен фактор за успеха е броят на грешките, докладвани от клиентите, което основно зависи от качеството на приложението.
В # 20) Какви са вашите очаквания от гледна точка на кариерата на DevOps?
Отговор: Да бъдат включени в процеса на доставка от край до край и най-важният аспект на спомагането за подобряване на процеса, така че да се даде възможност на екипите за разработка и експлоатация да работят заедно и да разбират гледната точка на другия.
Заключение
Това беше списъкът с най-популярните въпроси за интервюта на DevOps.
В началото на тази серия уроци за DevOps , разбрахме какво точно представлява DevOps, неговия процес и някои възможни начини за тяхното внедряване.
Въпросите за DevOps в този урок трябва да ви помогнат да завладеете интервюто за DevOps и да ви насочат към пътя на страхотна кариера в тази област. Тъй като споменатите въпроси са от гледна точка на DevOps, вие също трябва да владеете Agile процеса и инструментите, споменати в тази статия за CI и CD.
Надявам се, че сте се насладили на цялата гама от уроци в нашата серия DevOps и съм сигурен, че трябва да сте придобили огромни познания за концепцията на DevOps !! Пожелаваме ви успех !!!
Препоръчително четене
- 9 НАЙ-ДОБРИ DevOps конференции през 2021 г., които трябва да следвате
- Отговорни роли, интеграция с Jenkins в DevOps и EC2 модули
- Мониторинг на ефективността на приложението в DevOps
- AWS CodeCommit Урок за внедряване на DevOps в облак
- Най-добрите инструменти с отворен код DevOps (с инсталиране и конфигуриране)
- Сътрудничество в DevOps
- Управление на конфигурацията в практиките на DevOps
- Непрекъсната доставка в DevOps
- Непрекъснато внедряване в DevOps
- Непрекъсната интеграция в DevOps
- Непрекъснато тестване в DevOps
- Демистифициране на DevOps: Урок за видео (Част 1)
- DevOps Automation: Как се прилага автоматизацията в практиката на DevOps
- Практика на DevOps, базирана на пъргав манифест (част 2 - блок 1)
- Урок за тестване на DevOps: Как DevOps ще повлияе на QA тестването?
- Урок за DevOps: Най-доброто ръководство за DevOps (25+ урока)
- DevOps с Microsoft VSTS: CI / CD към уеб приложение на Azure
- Как да развием сътрудничество в екипите на DevOps
- Как да използвам Microsoft TFS за JAVA проекти с Eclipse в DevOps
- Значение на малките увеличения на доставките в DevOps