Բառը[Թաքցնել][Ցուցադրում]
- 1. Ի՞նչ նկատի ունեք DevOps ասելով:
- 2. Թվարկե՛ք DevOps-ի որոշ սկզբունքներ:
- 3. Թվարկե՛ք DevOps-ի ամենահայտնի գործիքներից մի քանիսը:
- 4. Ի՞նչ է ենթակառուցվածքը որպես ծածկագիր:
- 5. Բացատրե՛ք DevOps-ի կյանքի ցիկլը:
- 6. Ի՞նչ է կոնֆիգուրացիայի կառավարումը:
- 7. Որո՞նք են DevOps-ի հիմնական առավելությունները:
- 8. Որո՞նք են Տարբերակների վերահսկման համակարգի օգտագործման առավելությունները:
- 9. Ի՞նչ է git stash-ը:
- 10. Ի՞նչ է CI/CD-ն:
- 11. Ի՞նչ է CI/CD խողովակաշարը:
- 12. Ի՞նչ է շարունակական թեստավորումը:
- 13. Ինչպե՞ս է DevOps-ը տարբերվում Agile-ից:
- 14. Կարո՞ղ եք նշել մի քանի հիմնական կատարողական ցուցանիշներ (KPI), որոնք օգտագործվում են DevOps-ի հաջողությունը չափելու համար:
- 15 Նշե՛ք մի քանի ամպային հարթակներ, որոնք օգտագործվում են DevOps-ն իրականացնելու համար:
- 16. Ինչպե՞ս է AWS-ն առնչվում DevOps-ին:
- 17. AWS DevOps-ում կոնկրետ ի՞նչ է CodePipeline-ը:
- 18. Ի՞նչ է կոնկրետ CodeBuild-ը AWS DevOps-ում:
- 19. Ի՞նչ է իրականում AWS Lambda-ն AWS DevOps-ի համատեքստում:
- 20. Ծրագրավորման ո՞ր շրջանակներն են համատեղելի AWS CodeBuild-ի հետ:
- 21. AWS DevOps-ում ի՞նչ են միկրոծառայությունները:
- 22. Ի՞նչ դեր է խաղում Amazon QuickSight-ը AWS DevOps-ում:
- 23. AWS DevOps-ում ինչպե՞ս են հաղորդակցվում Kubernetes կոնտեյներները:
- 24. Ի՞նչ է հիբրիդային ամպը AWS DevOps-ում:
- 25. Ի՞նչ է Անսիբլը:
- 26. Ո՞րն է սելենի նպատակը:
- 27. Ի՞նչ է սելենի ցանցը և ի՞նչ է այն անում:
- 28. Ի՞նչ է Selenium IDE-ն:
- 29. DevOps-ում ի՞նչ նկատի ունեք Տիկնիկ ասելով:
- 30. Puppet-ն ավելի հզոր դարձնելու համար ի՞նչ բաց կոդով կամ համայնքային գործիքներ եք օգտագործում:
- 31. Բացատրե՛ք Ջենքինսի վարպետ-ստրուկ ճարտարապետությունը:
- 32. Ինչպե՞ս կարելի է Ջենքինսը տեղափոխել կամ պատճենել մի սերվերից մյուսը:
- 33. Նշե՛ք Jenkins-ի մի քանի պլագիններ, որոնք ձեռնտու են:
- 34. Ի՞նչ է Նագիոսը:
- 35. Ինչպե՞ս է աշխատում Նագիոսը:
- 36. Ի՞նչ է իրականում Nagios Log Server-ը:
- 37. Ի՞նչ է պետական հետապնդումը Նագիոսում:
- 38. Ի՞նչ են կոնտեյներները, կոնկրետ:
- 39. Ի՞նչ է իրականում Docker պատկերը:
- 40. Ի՞նչ է իրականում Docker կոնտեյները:
- 41. Ո՞րն է Dockerfile-ի նպատակը:
- 42. Ի՞նչ է իրականում «Զույգ ծրագրավորումը»:
- 43. Ի՞նչ է իրականում խոհարարը:
- 44. Ի՞նչ է իրականում կապույտ/կանաչ տեղակայման ձևը:
- 45. Ի՞նչ է Memcached-ը:
- 46. Որո՞նք են Memcached-ի առանձնահատկությունները:
- 47. Նշե՛ք ցանցի մոնիտորինգի մի քանի օգտակար գործիքներ:
- 48. Որո՞նք են DevOps խողովակաշարի ստեղծման որոշ խոչընդոտներ:
- 49. Կոնկրետ ո՞րն է Secure Shell-ի նպատակը:
- 50. Ի՞նչ է կոնկրետ CBD-ն:
- Եզրափակում
Զարգացում և գործառնություններ այն է, ինչ ներկայացնում է DevOps-ը:
Դա ծրագրային ապահովման մշակման նոր տեսակ է, որը փոխել է ծրագրային ապահովման ստեղծման և տարածման եղանակը: DevOps տեխնիկան առաջնահերթություն է տալիս հաճախակի, աստիճանական բարելավումներին, քան հազվադեպ մեծ գործառույթների հավաքածուներին:
DevOps-ն օգնում է ՏՏ գործառնություններին:
Մինչ DevOps-ը ՏՏ անձնակազմը ստիպված էր զբաղվել մի շարք խնդիրներով։
Արդյունքում ՏՏ բաժինը ենթարկվեց որոշ անցանկալի ստուգումների: Ամեն ինչ փոխվեց DevOps-ի ներդրմամբ, որը թույլ է տալիս ՏՏ գործառնություններին իրենց մտահոգությունները հաղորդել մնացած բիզնեսի հետ, ինչի արդյունքում բարելավվել է թափանցիկությունը և համագործակցությունը ՏՏ գործառնությունների և այլ գերատեսչությունների միջև:
Եթե դուք սկսել եք պատրաստվել ՏՏ բիզնեսի զարգացման և գործառնական պարտականություններին, ապա արդեն գիտակցում եք, որ դա դժվար մասնագիտություն է, որը կարող եք ներթափանցել:
Դու մտածում ես DevOps-ում կարիերայի մասին:
Եթե դա այդպես է, դուք ճիշտ տեղում եք եկել:
Ահա DevOps-ի ամենահաճախ տրվող հարցազրույցների հարցերն ու պատասխանները, որոնք կօգնեն ձեզ պատրաստվել DevOps-ի կարիերային ոլորտում:
1. Ի՞նչ նկատի ունեք DevOps ասելով:
Զարգացում և գործառնություններ (DevOps) երկու տերմիններ են, որոնք հաճախ օգտագործվում են որպես փոխադարձաբար: Դա ծրագրային ապահովման ինժեներական մոտեցում է, որը կենտրոնանում է մշակման և գործառնական թիմերի համախմբման վրա՝ նախագիծը յուրաքանչյուր մակարդակում ավտոմատացնելու համար:
Այս տեխնիկան հեշտացնում է նախագծի սպասարկման կառավարումը ավտոմատացնելը, որպեսզի գործառնական նպատակները հնարավոր լինի հասնել, և արտադրական միջավայրում օգտագործվող տեխնոլոգիական փաթեթն ավելի լավ հասկանալի լինի:
Այս ռազմավարությունը հիմնված է արագաշարժ մեթոդաբանության վրա և շեշտը դնում է թիմային հաղորդակցության, ռեսուրսների կառավարման և համագործակցության վրա:
2. Թվարկե՛ք DevOps-ի որոշ սկզբունքներ:
DevOps-ը հիմնված է հետևյալ սկզբունքների վրա.
- Շարունակական տեղակայում
- Ավտոմատ
- Մոնիտորինգ
- Անվտանգություն
- Ենթակառուցվածքը որպես ծածկագիր
3. Թվարկե՛ք DevOps-ի ամենահայտնի գործիքներից մի քանիսը:
Ամենից հաճախ օգտագործվող DevOps գործիքներն են.
- գնալ
- Հղիություն
- դոկեր
- Selenium
- Տիկնիկ
- Chef
- Jenkins
4. Ի՞նչ է ենթակառուցվածքը որպես ծածկագիր:
Ենթակառուցվածքը որպես կոդը կամ IaC-ն ծրագրային ապահովման վրա հիմնված ՏՏ տեխնիկա է, որը կոդավորում և պահպանում է հիմքում ընկած ՏՏ ենթակառուցվածքը: Առանձին ապարատային սարքեր և օպերացիոն համակարգեր ձեռքով կարգավորելու փոխարեն ենթակառուցվածքը որպես կոդ թույլ է տալիս մշակողներին և օպերացիոն թիմերին ավտոմատ կերպով կառավարել, վերահսկել և տրամադրել ռեսուրսներ:
5. Բացատրե՛ք DevOps-ի կյանքի ցիկլը:
DevOps-ը բաժանված է վեց փուլերի. Դրա փուլերը հետևում են որոշակի ցիկլին:
Այնուամենայնիվ, ոչ մի փուլ չի բաժանվում սահմաններով, և ոչ մի փուլ չի սկսվում, նույնիսկ եթե նախորդն ամբողջությամբ ավարտված է: Եկեք հիմա ավելի սերտ նայենք DevOps ցիկլի փուլին:
- Պլանավորում – The DevOps-ի կյանքի ցիկլի սկզբնական մասը ներառում է պլանավորում և ծրագրային ապահովման մշակում: Այս փուլը ենթադրում է ծրագրի մանրակրկիտ ըմբռնում` նրա անդամների վերջնական աշխատանքային նպատակին հասնելու համար: Սա նաև սնուցում է զարգացման և գործառնությունների տարբեր փուլերը: Կարևոր է նաև, որ կազմակերպությունները վերապատրաստվեն գործիքների և չափումների վերաբերյալ՝ ծրագրի կառավարման վերաբերյալ հստակ պատկերացում ունենալու համար:
- Զարգացում – ընթացքում Այս փուլում նախագիծը կառուցվում է ենթակառուցվածքների նախագծման, կոդերի մշակման, թեստերի հաստատման կամ ավտոմատացման գործընթացի միջոցով: Ապացույցները կարևոր են այս փուլում: Հավելվածները և տվյալների գործունեությունը կառավարելու համար մշակողները կոդ են պահում կոդերի կառավարիչում, որը թույլ է տալիս դիտել, տարբերակել և շատ ավելին:
- Շարունակական ինտեգրում - սա քայլը ավտոմատացնում է վավերացման և փորձարկման մեխանիզմները: Սա ունի եզակի առանձնահատկություն, որը երաշխավորում է, որ մշակման միջավայրը ճիշտ կազմաձևված է նախքան ծառայության մեջ թողարկվելը, որը համատեղում է այն այլ հավելվածների հետ:
- Ավտոմատացված տեղակայում – DevOps խրախուսում է գործիքների և սկրիպտների օգտագործումը տեղակայման ավտոմատացման համար, որի վերջնական նպատակն է ավտոմատացնել ամբողջ գործընթացը գործառույթի ակտիվացման միջոցով: Ամպի առաջացումը, որպես ծածկագիր, որը ստիպում է անցնել ենթակառուցվածքի վերջնական կառավարումից դեպի մշտական ծախսերի օպտիմալացման կառավարում, այս ժամանակաշրջանի ամենակարևոր բաղադրիչն է:
- Գործողություն - Բոլորը DevOps-ի գործառնությունները սովորաբար իրականացվում են անընդհատ ծրագրային ապահովման ողջ կյանքի ընթացքում՝ ենթակառուցվածքի դինամիկ բնույթի պատճառով: Փոխակերպումը, հասանելիությունը և մասշտաբայնությունը հնարավոր են այս հարթակով:
- Մոնիտորինգ - Սա DevOps գործընթացի շարունակական փուլ է: DevOps-ը հետևում և վերլուծում է տվյալներ, որոնք ցույց են տալիս հավելվածի ներկա վիճակը:
6. Ի՞նչ է կոնֆիգուրացիայի կառավարումը:
Կազմաձևման կառավարումը (CM) փոփոխությունների համակարգված մշակման գործընթաց է, որպեսզի համակարգի ամբողջականությունը պահպանվի ժամանակի ընթացքում:
Սա ենթադրում է մի շարք կանոններ, ռազմավարություններ, գործընթացներ և գործիքներ փոփոխությունների առաջարկների գնահատման, կառավարման և մոնիտորինգի համար, ինչպես նաև անհրաժեշտ փաստաթղթերը պահպանելու համար: CM-ն նպաստում է ծրագրի նախագծմանը և զարգացմանը՝ տալով վարչական և տեխնիկական ուղղորդում:
7. Որո՞նք են DevOps-ի հիմնական առավելությունները:
Հետևյալները DevOps-ի հիմնական առավելություններն են.
Առավելությունները տեխնոլոգիայի առումով
- Խնդիրներ, որոնք այնքան էլ դժվար չէ լուծել
- Ծրագրային ապահովման առաքում շարունակական հիմունքներով
- Թերությունները հայտնաբերվում են ավելի վաղ և ավելի արագ շտկվում:
Ընկերության առավելությունները
- Գործառնական միջավայրեր, որոնք կայուն են
- Հատկություններն ավելի արագ են մատուցվում:
- Բարելավվել է թիմերի միջև համագործակցությունը և հաղորդակցությունը:
8. Որո՞նք են Տարբերակների վերահսկման համակարգի օգտագործման առավելությունները:
- VCS-ը կոկիկ կերպով կազմակերպում է բոլոր նախորդ տարբերակներն ու տարբերակները:
- Բոլոր աշխատակիցները կարող են ցանկացած պահի դիտել ֆայլը՝ օգտագործելով Տարբերակի հսկողություն Համակարգ (VCS): Այն նաև թույլ է տալիս միավորել ընդհանուր տարբերակում կատարված բոլոր փոփոխությունները:
- Այն կոչված է օգնելու բազմաթիվ անհատների՝ թույլ տալով նրանց համագործակցել տեքստային ֆայլերի վրա՝ դարձնելով մի քանի մեքենաների միջև փոխանակումը շատ պարզ:
- Այն շատ կարևոր է այն թղթերի համար, որոնք պահանջում են շատ վերաձևակերպումներ և խմբագրումներ, քանի որ այն ստեղծում է թղթի հետք՝ վերջնական հրատարակությունները վերաձևակերպելու և թարմացնելու համար:
- Այն թույլ է տալիս թիմի բոլոր անդամներին դիտել նախագծի ողջ պատմությունը, ինչը թույլ է տալիս մեզ օգտագործել ցանկացած թիմակցի պահեստը կենտրոնական սերվերի խափանման դեպքում:
9. Ի՞նչ է git stash-ը:
Git stash հրամանը ժամանակավորապես պահպանում է փոփոխությունները աշխատանքային գրացուցակում: Սա ապահովում է մաքուր աշխատանքային միջավայր մշակողների համար: Այնուհետև նրանք կարող են օգտագործել git ընթացակարգը՝ փոփոխությունները միաձուլելու համար: Հետևված ֆայլերի փոփոխությունները միաձուլվում են աշխատանքային գրացուցակում, երբ այս հրամանը կատարվում է: Git գրացուցակում git stash հրամանը կարող է օգտագործվել մի քանի անգամ: Դա git-ի պահոց է:
10. Ի՞նչ է CI/CD-ն:
Շարունակական ինտեգրում (CI) մշակման մեթոդ է, որի դեպքում մշակողները պետք է օրական բազմաթիվ անգամներ ինտեգրեն կոդը ընդհանուր պահոցում: Այնուհետև ավտոմատ ձևավորումը վավերացնում է յուրաքանչյուր գրանցում, ինչը թիմերին թույլ է տալիս վաղ հայտնաբերել խնդիրները:
Շարունակական տեղակայում ծրագրային ապահովման ինժեներական տեխնիկա է, որն օգտագործում է ավտոմատացված տեղակայում՝ արտադրանքի ֆունկցիոնալությունը առաջարկելու համար: Այն օգնում է փորձարկողներին որոշել, թե արդյոք կոդի բազայի փոփոխությունները պատշաճ են և կայուն:
11. Ի՞նչ է CI/CD խողովակաշարը:
Ծրագրային ապահովման առաքման գործընթացը ավտոմատացված է CI/CD խողովակաշարի միջոցով: Այն ստեղծում է կոդ, կատարում է թեստեր և օգնում է ձեզ ճիշտ տեղակայել ծրագրաշարի նոր տարբերակը: CI/CD խողովակաշարը վերացնում է մարդկային սխալները, ծրագրավորողներին տալիս է կարծիք և հնարավորություն է տալիս արագ կրկնել արտադրանքը: CI/CD խողովակաշարը ավտոմատացնում և վերահսկում է ծրագրային ապահովման արտադրանքի զարգացման կյանքի ցիկլը: Այն ընդգրկում է ողջ գործընթացը՝ ինտեգրումից և փորձարկումից մինչև առաքում և տեղակայում: CI/CD խողովակաշարը վերաբերում է այս փոխկապակցված գործողություններին:
12. Ի՞նչ է շարունակական թեստավորումը:
Շարունակական թեստավորումը ավտոմատացված թեստերի իրականացման գործընթաց է՝ որպես ծրագրային ապահովման մատակարարման խողովակաշարի մաս՝ վերջին թողարկումում բիզնես ռիսկերի վերաբերյալ իրական ժամանակում հետադարձ կապ առաջարկելու համար: Յուրաքանչյուր կառուցում շարունակաբար փորձարկվում է այս եղանակով, որպեսզի խուսափեն ծրագրային ապահովման առաքման կյանքի ցիկլի փուլային փոխարկման հետ կապված դժվարություններից և թույլ տան Մշակող թիմերին ստանալ արագ արձագանք: Սա հանգեցնում է ծրագրավորողի արտադրողականության հսկայական շահի, քանի որ բոլոր թեստերն այլևս կարիք չունեն վերագործարկվելու յուրաքանչյուր թարմացումից և նախագծի վերակառուցումից հետո:
13. Ինչպե՞ս է DevOps-ը տարբերվում Agile-ից:
DevOps-ը մեթոդ կամ մշակույթ է, որը թույլ է տալիս զարգացման և գործառնությունների թիմերին աշխատել միասին՝ հաջող արտադրանք ստեղծելու համար: SDLC ցիկլի շարունակական զարգացումը, ինտեգրումը, փորձարկումը, տեղակայումը և մոնիտորինգը այն մոտեցումներից են, որոնք կարող են օգտագործվել դա իրականացնելու համար: Արտադրանքի հաջող մեկնարկի համար DevOps-ը նպատակ ունի կամրջել ծրագրավորողների և գործառնությունների միջև առկա բացը:
Agile-ը ծրագրային ապահովման մշակման գործընթաց է, որն ընդգծում է ծրագրային ապահովման արտադրանքի աստիճանական, կրկնվող և արագ թողարկումները՝ միաժամանակ ներառելով հաճախորդի տվյալները: Այս մոտեցումը կամրջում է հաճախորդների և մշակողների պահանջների մասին գիտելիքների միջև առկա բացը:
14. Կարո՞ղ եք նշել մի քանի հիմնական կատարողական ցուցանիշներ (KPI), որոնք օգտագործվում են DevOps-ի հաջողությունը չափելու համար:
Հիմնական կատարողականի ցուցիչները կամ KPI-ները չափման մի տեսակ են, որը չափում է, թե որքան լավ է ինչ-որ բան անում: Ստորև բերված են DevOps-ի հաջողությունը չափելու առավել հաճախ օգտագործվող KPI-ներից մի քանիսը.
- Հաճախորդների տոմսեր
- Հաջող տեղակայման հաճախականությունը և ժամանակը
- Սխալների/Ձախողումների տոկոսադրույքները
- Չհաջողված տեղակայումներ
- Հավելվածի օգտագործումը, կատարումը և երթեւեկությունը
- Ավտոմատացված թեստային գործի անցումների տոկոսը:
- Հավելվածի առկայությունը
- Փոխել ծավալի հարցումները
- Մինչև հայտնաբերումը (MTTD)
- Մինչև վերականգնումը (MTTR)
15 Նշե՛ք մի քանի ամպային հարթակներ, որոնք օգտագործվում են DevOps-ն իրականացնելու համար:
Ստորև բերված են DevOps-ի ներդրման ամպային հաշվարկման ամենատարածված հարթակներից մի քանիսը.
- Amazon Web Services
- Google Cloud- ը
- Երկնագույն
16. Ինչպե՞ս է AWS-ն առնչվում DevOps-ին:
Amazon Web Services-ը (AWS) ամպային սպասարկման հարթակ է, որը հեշտացնում է DevOps-ի սկզբունքների իրականացումը:
Տրված լուծումները մեծապես կօգնեն թիմերին կառավարել բարդ կարգավորումները և ինժեներներին հաջողությամբ աշխատել DevOps-ի կողմից տրամադրված բարձր արագությամբ:
17. AWS DevOps-ում կոնկրետ ի՞նչ է CodePipeline-ը:
AWS-ն առաջարկում է CodePipeline-ը որպես շարունակական ինտեգրման և առաքման ծառայություն:
Այն ներառում է նաև ենթակառուցվածքների փոփոխություններ: Սահմանված թողարկման մոդելի արձանագրություններով, որոնք օգտատերը սահմանում է, այնպիսի գործողությունները, ինչպիսիք են կառուցումը, փորձարկումը և տեղադրումը յուրաքանչյուր կառուցումից հետո, դառնում են համեմատաբար պարզ:
CodePipeline-ը երաշխավորում է, որ ծրագրային ապահովման նոր թարմացումները և հնարավորությունները մատուցվում են հուսալի և արագ:
18. Ի՞նչ է կոնկրետ CodeBuild-ը AWS DevOps-ում:
AWS-ն ապահովում է CodeBuild-ը, որը լիովին կառավարվող ներքին կառուցման ծառայություն է, որն օգնում է սկզբնական կոդի կազմմանը, փորձարկմանը և պատրաստի տեղակայման համար նախատեսված ծրագրային փաթեթների ստեղծմանը: Ադմինիստրացիայի, տեղաբաշխման կամ տրամադրման կարիք չկա, քանի որ կառուցման սերվերները ավտոմատ կերպով մեծանում են:
Կառուցման գործառնություններն իրականացվում են զուգահեռ սերվերների վրա՝ ապահովելով ամենամեծ առավելությունը՝ որևէ կառուցապատում հերթում չթողնելու համար:
19. Ի՞նչ է իրականում AWS Lambda-ն AWS DevOps-ի համատեքստում:
AWS Lambda-ն հաշվողական ծառայություն է, որը թույլ է տալիս հաճախորդներին գործարկել ծրագրեր՝ առանց սերվերների բացահայտ տրամադրման կամ կառավարման:
Օգտագործողները կարող են գործարկել ցանկացած կոդ իրենց հավելվածների կամ ծառայությունների համար՝ օգտագործելով AWS Lambda՝ առանց նախկին ինտեգրման: Դա նույնքան պարզ է, որքան կոդ ներկայացնելը և Lambda-ին թույլ տալը կարգավորել այն ամեն ինչ, որն անհրաժեշտ է այն գործելու և զարգացնելու համար:
20. Ծրագրավորման ո՞ր շրջանակներն են համատեղելի AWS CodeBuild-ի հետ:
AWS CodeBuild-ը ներառում է Python, Ruby, Java, Android, Docker, Node.js և Go միջավայրեր:
Նախաստորագրելով և ստեղծելով Docker պատկերը, կարող է ստեղծվել նաև հատուկ միջավայր: Այն այնուհետև տեղափոխվում է EC2 կամ DockerHub ռեգիստրներ: Այն հետագայում օգտագործվում է օգտատերերի կառուցման նախագծի նկարին անդրադառնալու համար:
21. AWS DevOps-ում ի՞նչ են միկրոծառայությունները:
Միկրոսպասարկման ճարտարապետությունը մեկ հավելվածը որպես ծառայությունների հավաքածու նախագծելու տեխնիկա է:
Այս ծառայություններից յուրաքանչյուրն ունի իր գործընթացի կառուցվածքը և շփվում է մյուսների հետ սահմանված ինտերֆեյսի միջոցով, որը և՛ թեթև է, և՛ հեշտ օգտագործման համար: Այս հաղորդակցության մեծ մասը կատարվում է HTTP և API հարցումների միջոցով:
22. Ի՞նչ դեր է խաղում Amazon QuickSight-ը AWS DevOps-ում:
Amazon QuickSight-ը AWS Business Analytics-ի գործիք է, որը հեշտացնում է վիզուալիզացիաներ ստեղծելը, վերլուծություններ կատարելը և արդյունքներից բիզնես պատկերացումներ ստանալը:
Դա արագ տեմպերով և ամբողջովին ամպի վրա հիմնված ծառայություն է, որն օգտատերերին տրամադրում է այն հայտնաբերելու և օգտագործելու մի քանի տարբերակներ:
23. AWS DevOps-ում ինչպե՞ս են հաղորդակցվում Kubernetes կոնտեյներները:
Kubernetes-ում տարրը, որը հայտնի է որպես պատիճ, օգտագործվում է բեռնարկղերի միջև քարտեզագրելու համար:
Ցանկացած պահի պատիճը կարող է պահել մեկից ավելի կոնտեյներ: Պատիճների հարթ ցանցի հիերարխիայի պատճառով այս պատիճների միջև կապը ծածկույթի ցանցում պարզ է:
24. Ի՞նչ է հիբրիդային ամպը AWS DevOps-ում:
Հիբրիդային ամպը հաշվողական միջավայր է, որը միավորում է մասնավոր և հանրային ամպերը:
Հիբրիդային ամպերը կարող են կառուցվել՝ տեղադրելով VPN թունել ամպային VPN-ի և ներքին ցանցի միջև: AWS Direct Connect-ը կարող է նաև պարզապես շրջանցել ինտերնետը և ապահով կերպով միանալ VPN-ի և տվյալների կենտրոնի միջև:
25. Ի՞նչ է Անսիբլը:
Ansible-ը միջպլատֆորմային համակարգչային աջակցության ավտոմատացման ծրագիր է, որը հեշտ է օգտագործել, բայց չափազանց հզոր:
Այն նախատեսված է հատկապես ՏՏ մասնագետների համար, ովքեր օգտագործում են այն հավելվածների տեղակայման, աշխատակայանների և սերվերների արդիականացման, ամպային ապահովման, կոնֆիգուրացիայի կառավարման, ներծառայության կազմակերպման և գործնականում մնացած ամեն ինչի համար: համակարգերի ադմինիստրատոր կատարում է շաբաթական կամ օրական կտրվածքով:
Ansible-ը տեղադրելու համար պարզ է, քանի որ այն չի պահանջում որևէ գործակալային ծրագրակազմ կամ անվտանգության այլ ենթակառուցվածք:
26. Ո՞րն է սելենի նպատակը:
Սելենն օգտագործվում է DevOps-ում՝ շարունակական փորձարկման համար: Գործիքը կենտրոնանում է ֆունկցիոնալ և ռեգրեսիոն փորձարկման վրա:
27. Ի՞նչ է սելենի ցանցը և ի՞նչ է այն անում:
Selenium Grid-ի նպատակն է նույն կամ տարբեր թեստային սցենարներ գործարկել բազմաթիվ հարթակներում և բրաուզերներում՝ բաշխված թեստավորում կատարելու համար: Այն օգնում է փորձարկմանը տարբեր սցենարներում և ունի կատարման ժամանակը նվազեցնելու կարողություն:
28. Ի՞նչ է Selenium IDE-ն:
Selenium-ի ինտեգրված զարգացման միջավայրը (IDE) ապահովում է Selenium script-ի մշակման մեկ պատուհան: Այն հասանելի է նաև որպես Firefox ընդլայնում և կարող է օգտագործվել վրիպազերծման, փոփոխման և թեստեր գրանցելու համար:
Selenium IDE-ն ներառում է ամբողջ Selenium Core-ը, որը թույլ է տալիս մեզ վերարտադրել և ձայնագրել թեստերը նույն համատեքստում, որտեղ դրանք կգործարկվեն: Հրահանգները արագ փոխելու ճկունության և ավտոմատ լրացման աջակցության պատճառով Selenium IDE-ն լավագույն միջավայրն է սելենի թեստեր գրելու համար՝ անկախ մեզ դուր եկած փորձարկումներից:
29. DevOps-ում ի՞նչ նկատի ունեք Տիկնիկ ասելով:
Դա կազմաձևման կառավարման ծրագիր է՝ վարչական պարտականությունների ավտոմատացման համար: Puppet-ն օգտագործում է Master-Slave ճարտարապետություն, որի դեպքում երկու միավորներ շփվում են կոդավորված ալիքի միջոցով: Համակարգի ադմինիստրատորները պատասխանատու են մի շարք կրկնվող պարտականությունների համար, ներառյալ սերվերների տեղադրումը և կազմաձևումը:
Նման գործողությունները ավտոմատացնելու համար հնարավոր է սցենարներ գրել, բայց դա դժվարանում է, երբ ենթակառուցվածքը հսկայական է: Կազմաձևման կառավարումը հիանալի լուծում է: Տիկնիկային օգնում է սերվերների կազմաձևման, տեղակայման և կառավարման հետ:
Դա ոչ միայն հեշտացնում է նման կրկնվող աշխատանքները, այլև ընդհանուր առմամբ զգալի ժամանակ է խնայում:
30. Puppet-ն ավելի հզոր դարձնելու համար ի՞նչ բաց կոդով կամ համայնքային գործիքներ եք օգտագործում:
Jira-ն օգտագործվում է փոփոխություններին և հարցումներին հետևելու համար, և մենք դրանք կառավարում ենք ներքին ընթացակարգի միջոցով:
Այնուհետև, լավագույն փորձի համաձայն, մենք օգտագործում ենք Git և Puppet's Code Manager հավելվածը՝ Puppet կոդը կառավարելու համար: Բացի այդ, մենք օգտագործում ենք Jenkins-ի շարունակական ինտեգրման խողովակաշարը և բաժակի փորձարկման շրջանակը՝ մեր Տիկնիկային բոլոր թարմացումները կատարելու համար:
31. Բացատրե՛ք Ջենքինսի վարպետ-ստրուկ ճարտարապետությունը:
- Ամեն անգամ, երբ կա կոդերի հանձնում, Jenkins վարպետը վերբերում է կոդը հեռավոր GitHub պահոցից:
- Այն բաժանում է առաջադրանքը Ջենքինսի բոլոր ստրուկների միջև:
- Ստրուկներն իրականացնում են, կառուցում, փորձարկում և ստեղծում են թեստի արդյունքներ Ջենքինսի տիրոջ խնդրանքով:
32. Ինչպե՞ս կարելի է Ջենքինսը տեղափոխել կամ պատճենել մի սերվերից մյուսը:
Ես կսկսեմ աշխատանքի գրացուցակը հինից նոր սերվեր տեղափոխելով: Կան այլ տարբերակներ, որոնք ես թվարկել եմ ստորև.
Հնարավոր է.
- Պարզապես տեղափոխեք համապատասխան աշխատատեղերի գրացուցակը մեկ Jenkins-ի տեղադրումից մյուսը՝ աշխատանքը տեղափոխելու համար:
- Ստեղծեք աշխատանքի գրացուցակի կլոն նոր անունով՝ գոյություն ունեցող աշխատանքը կրկնօրինակելու համար:
- Գրացուցակը կարող է վերանվանվել գոյություն ունեցող առաջադրանքը վերանվանելու համար: Եթե դուք վերանվանեք աշխատանք, ցանկացած այլ աշխատանք, որը փորձում է անվանել վերանվանված աշխատանքը, նույնպես պետք է վերանվանվի:
33. Նշե՛ք Jenkins-ի մի քանի պլագիններ, որոնք ձեռնտու են:
Ստորև ես ներառել եմ մի քանի կարևոր հավելվածներ.
- Պատճենել արտեֆակտը
- միանալ
- Կանաչ գնդակներ
- Maven 2 նախագծեր
- Amazon EC2- ը
- HTML հրատարակիչ
34. Ի՞նչ է Նագիոսը:
Մոնիտորինգի գործիքներից մեկը Nagios-ն է։ DevOps մշակույթում, ի թիվս այլ բաների, այն օգտագործվում է համակարգերի, հավելվածների, ծառայությունների և բիզնես գործընթացների շարունակական մոնիտորինգի համար:
Խափանման դեպքում Nagios-ը կարող է տեղեկացնել տեխնիկական աշխատակիցներին՝ թույլ տալով նրանց սկսել անսարքությունների վերացումը՝ նախքան բիզնեսի գործառնությունների, վերջնական օգտագործողների կամ հաճախորդների ազդեցությունը:
Պետք չէ բացատրել, թե ինչու ենթակառուցվածքի չբացահայտված խափանումը ազդում է ձեր ընկերության վերջնական գծի վրա՝ օգտագործելով Nagios-ը:
35. Ինչպե՞ս է աշխատում Նագիոսը:
Nagios-ը սերվերի վրա հիմնված մոնիտորինգի համակարգ է, որը գործում է որպես դեյմոն կամ ծառայություն: Nagios-ը կանոնավոր կերպով կատարում է պլագիններ նույն սերվերի վրա, և նրանք կապվում են ձեր ցանցի կամ ինտերնետի հյուրընկալողների կամ սերվերների հետ: Վեբ ինտերֆեյսը կարող է օգտագործվել կարգավիճակի մասին տեղեկությունները դիտելու համար:
Եթե ինչ-որ բան պատահի, դուք կարող եք նաև տեղեկացվել էլեկտրոնային փոստի կամ SMS-ի միջոցով: Nagios daemon-ը աշխատում է ժամանակացույցի պես՝ ծրագրեր իրականացնելով կոնկրետ ժամանակներում: Այն պահպանում է այդ սկրիպտների արդյունքը և գործարկում նորերը, եթե արդյունքը փոխվի:
36. Ի՞նչ է իրականում Nagios Log Server-ը:
Nagios Log Server-ը հեշտացնում է մատյանների տվյալները դիտելը: Զարթուցիչների տեղադրումը, հնարավոր վտանգների հայտնաբերման դեպքում նախազգուշացումը, գրանցամատյանների տվյալների պարզապես որոնումը և ցանկացած համակարգի արագ աուդիտը բոլորն են այն բաները, որոնցում Nagios Log Server-ը գերազանցում է:
Մենք կարող ենք ստանալ մեր բոլոր գրանցամատյանների տվյալները մեկ վայրում՝ բարձր հասանելիությամբ, օգտագործելով Nagios Log Server:
37. Ի՞նչ է պետական հետապնդումը Նագիոսում:
Այն օգտագործվում է իրերը հետևելու համար: Երբ հոսթինգը միացված է հյուրընկալողի կամ ծառայության համար, Nagios-ը ուշադիր հետևելու է այդ հոսթին կամ ծառայությանը և նկատում է ցանկացած փոփոխություն, որը նա նկատում է ստուգման արդյունքների ելքում:
Կարող եք նաև ասել. «Դա կարող է բավականին շահավետ լինել գրանցամատյանների հետագա ուսումնասիրության ժամանակ», կախված ձեր և հարցազրուցավարի խոսակցությունից: Հոսթի կամ ծառայության ստուգման արդյունքը հաղորդվում է միայն բնորոշ հանգամանքներում, եթե հյուրընկալողը կամ ծառայությունը փոխել է կարգավիճակը նախորդ ստուգումից հետո»:
38. Ի՞նչ են կոնտեյներները, կոնկրետ:
Կոնտեյներներն օգտագործվում են ծրագրավորողի նոութբուքից մինչև փորձնական միջավայր, այնուհետև արտադրություն ստեղծելու հետևողական հաշվողական միջավայր: Կոնտեյները մեկ փաթեթ է, որը պարունակում է մի ամբողջ գործարկման միջավայր՝ ծրագիր, ինչպես նաև դրա բոլոր կախվածությունները, գրադարանները, այլ բաղադրիչները և կազմաձևման ֆայլերը, որոնք անհրաժեշտ են այն գործարկելու համար:
ՕՀ-ի բաշխման և օժանդակ ենթակառուցվածքի անհավասարությունները վերացվում են հավելվածի հարթակի և դրա կախվածությունների կոնտեյներացման միջոցով:
39. Ի՞նչ է իրականում Docker պատկերը:
Docker կոնտեյները գալիս է Docker պատկերից: Այլ կերպ ասած, Docker պատկերները օգտագործվում են կոնտեյներներ կառուցելու համար: Պատկերները կառուցված են build հրամանով, և երբ գործարկվեն, դրանք կկազմեն կոնտեյներ: Docker ռեեստրը, ինչպիսին է registry.hub.docker.com-ը, պահում է պատկերները:
Պատկերները նախատեսված են այլ լուսանկարների շերտերից կառուցվելու համար, քանի որ դրանք կարող են բավականին մեծանալ՝ թույլ տալով նվազագույն քանակությամբ տվյալներ տրամադրել՝ պատկերները ցանցով փոխանցելիս:
40. Ի՞նչ է իրականում Docker կոնտեյները:
Docker կոնտեյներները ներառում են ծրագիրը և դրա բոլոր կախվածությունները, բայց դրանք կիսում են միջուկը այլ կոնտեյներների հետ և գործում են որպես առանձին գործընթացներ օգտագործողի տարածքում՝ հյուրընկալող ՕՀ-ում: Docker կոնտեյներները չեն պահանջում որևէ հատուկ ենթակառուցվածք աշխատելու համար. դրանք կարող են աշխատել ցանկացած մեքենայի, ցանկացած ենթակառուցվածքի և ցանկացած ամպի վրա:
Դուք կարող եք կառուցել Docker կոնտեյներներ՝ կա՛մ ստեղծելով Docker պատկեր և այնուհետև այն գործարկելով, կա՛մ Dockerhub-ից Docker պատկերներ օգտագործելով: Docker բեռնարկղերը, ըստ էության, գործարկման ժամանակի Docker պատկերներ են:
41. Ո՞րն է Dockerfile-ի նպատակը:
Docker-ը կարող է կարդալ հրահանգները Dockerfile-ից և ինքնաբերաբար ստեղծել պատկերներ ձեզ համար:
Dockerfile-ը տեքստային ֆայլ է, որը պարունակում է բոլոր հրամանները, որոնք օգտագործողը կարող է օգտագործել հրամանի տողից պատկեր ստեղծելու համար: Օգտագործողները կարող են օգտագործել docker build-ը ավտոմատացնելու համար, որը կատարում է բազմաթիվ հրամանների տողի հրահանգներ անընդմեջ:
42. Ի՞նչ է իրականում «Զույգ ծրագրավորումը»:
Զույգ ծրագրավորումը ինժեներական մոտեցում է, որտեղ երկու ծրագրավորողներ համագործակցում են նույն համակարգի, դիզայնի և կոդի վրա:
Նրանք հավատարիմ են «Ծայրահեղ ծրագրավորման» սկզբունքներին: Այս դեպքում ծրագրավորողներից մեկը կոչվում է «վարորդ», իսկ մյուսը կոչվում է «դիտորդ», որը շարունակաբար ստուգում է ծրագրի առաջընթացը՝ հետագա դժվարությունները բացահայտելու համար:
43. Ի՞նչ է իրականում խոհարարը:
Այն հզոր ավտոմատացման հարթակ է, որը ենթակառուցվածքը վերածում է կոդի: Դուք կարող եք օգտագործել այս գործիքը գործողությունները ավտոմատացնող սցենարներ ստեղծելու համար:
44. Ի՞նչ է իրականում կապույտ/կանաչ տեղակայման ձևը:
Կապույտ-կանաչ օրինաչափությունը շարունակական տեղակայման, հավելվածների թողարկման մեթոդաբանություն է, որը կենտրոնանում է օգտատերերի տրաֆիկի աստիճանական անցման վրա ծրագրի կամ ծառայության նախկինում գործող տարբերակից գրեթե նույնական նոր թողարկման վրա. երկու տարբերակներն էլ աշխատում են արտադրության մեջ:
Կապույտ միջավայրը ներկայացնում է ծրագրի նախորդ տարբերակը, մինչդեռ կանաչ միջավայրը ներկայացնում է ընթացիկ տարբերակը: Արտադրական երթևեկությունն աստիճանաբար կտեղափոխվի կապույտից կանաչ միջավայր, և երբ ամբողջությամբ փոխանցվի, կապույտ միջավայրը կպահպանվի միայն հետադարձ պահանջի դեպքում:
45. Ի՞նչ է Memcached-ը:
Memcached-ը բաշխված հիշողության օբյեկտների քեշավորման տեխնոլոգիա է, որը լիովին անվճար է և բաց կոդով: Սա սովորաբար օգտագործվում է դինամիկ վեբ ծրագրեր կառավարել հիշողությունը RAM-ում տվյալների քեշավորման միջոցով: Սա նվազեցնում է արտաքին աղբյուրների հարցումների քանակը: Տվյալների բազայի ծանրաբեռնվածության նվազեցումը նաև օգնում է դինամիկ առցանց հավելվածների արագացմանը:
46. Որո՞նք են Memcached-ի առանձնահատկությունները:
Ահա Memcached-ի ամենաուշագրավ բնութագրերից մի քանիսը.
- Թարմացված օբյեկտները պահվում են CAS Tokens-ի միջոցով:
- Կոդն ավելի ընթեռնելի դարձնելու համար օգտագործվում են հետադարձ զանգեր:
- Նվազեցրեք պատասխանի ժամանակը կամ արդյունքի համար պահանջվող ժամանակը՝ օգտագործելով GetDelayed-ը:
- Նոր հաճախորդի հետ օգտագործելու համար ստեղծեք երկուական արձանագրություն:
- Բարդ տվյալների հետ օգտագործման համար առաջարկվում է Igbinary տվյալների տարբերակ:
47. Նշե՛ք ցանցի մոնիտորինգի մի քանի օգտակար գործիքներ:
Ստորև բերված են ցանցի մոնիտորինգի ամենատարածված գործիքներից մի քանիսը.
- Splunk
- Իցինգա 2
- Wireshark
- Nagios
- OpenNMS- ը
48. Որո՞նք են DevOps խողովակաշարի ստեղծման որոշ խոչընդոտներ:
Տեխնոլոգիական պայթյունների այս դարաշրջանում DevOps-ը ներկայացնում է մի շարք խնդիրներ: Ժամանակի մեծ մասը դա կապված է տվյալների միգրացիայի և նոր գործառույթների արագ ինտեգրման հետ: Եթե տվյալների միգրացիան ձախողվի, համակարգը կարող է դառնալ անկայուն, ինչը կարող է հանգեցնել հետագա խնդիրների:
Այնուամենայնիվ, CI համակարգի ներսում դա կարելի է կարգավորել՝ օգտագործելով հատկանիշի դրոշակ, որն օգնում է արտադրանքի աճող թողարկումներին: Սա, հետ վերադարձի գործառույթի հետ միասին, կարող է օգնել մեղմել որոշ խնդիրներ:
49. Կոնկրետ ո՞րն է Secure Shell-ի նպատակը:
SSH-ը սովորաբար օգտագործվում է երկու համակարգիչները կապելու և դրանք հեռակա կարգով գործարկելու համար: SSH-ը հիմնականում օգտագործվում է օպերացիոն թիմի կողմից, քանի որ գործառնական թիմը կզբաղվի այնպիսի գործերով, որոնք կպահանջեն հեռավոր մուտք դեպի ադմինիստրատորի համակարգ:
Մշակողները նույնպես կօգտագործեն SSH, թեև ավելի քիչ չափով, քան օպերացիոն թիմը, քանի որ նրանք հիմնականում աշխատելու են տեղական համակարգերի վրա: Ինչպես նախկինում ասվեց, DevOps-ի մշակման և գործառնությունների թիմերը կհամագործակցեն և կաշխատեն միասին:
SSH-ը կօգտագործվի, երբ գործառնական թիմը բախվի խնդրի և զարգացման թիմի օգնության կարիքն ունենա:
50. Ի՞նչ է կոնկրետ CBD-ն:
CBD-ն, որը նաև հայտնի է որպես բաղադրիչի վրա հիմնված ստեղծում, արտադրանքի մշակման նոր մեթոդ է:
Զրոյից սկսելու փոխարեն՝ այս ռազմավարության մշակողները միշտ փնտրում են գոյություն ունեցող լավ սահմանված, փորձարկված և հաստատված բաղադրիչներ՝ արտադրանք կազմելու և հավաքելու համար:
Եզրափակում
Լավագույն DevOps-ի հարցազրույցի հարցերն ու պատասխաններն այժմ ավարտված են: DevOps-ը կենսական նշանակություն ունի ոչ միայն ծրագրային ապահովման մշակումն արագացնելու, այլ նաև ծրագրաշարի որակը բարելավելու համար:
DevOps-ը սեղանին է բերում թարմ վերաբերմունք, արագաշարժ տեխնիկա և խելացի տեխնոլոգիաներ, որոնք բոլորը միասին աշխատում են այդ նպատակին հասնելու համար: DevOps-ը կարող է նաև օգնել հայտնաբերել կոդի սխալները, բարելավել թիմային հաղորդակցությունը և նվազեցնել ծրագրային ապահովման մշակման ընդհանուր արժեքը:
Թողնել գրառում