Ինչպես մենք տարհանեցինք Յանդեքսի հերթափոխը

Ինչպես մենք տարհանեցինք Յանդեքսի հերթափոխը

Երբ աշխատանքը տեղավորվում է մեկ նոութբուքում և կարող է կատարվել ինքնուրույն այլ մարդկանցից, ապա հեռավոր վայր տեղափոխվելու խնդիր չկա՝ պարզապես առավոտյան տանը մնալը: Բայց ոչ բոլորն են այդքան հաջողակ:

Հերթապահ հերթափոխը ծառայությունների հասանելիության մասնագետների թիմն է (SREs): Այն ներառում է հերթապահ ադմինիստրատորներ, մշակողներ, մենեջերներ, ինչպես նաև ընդհանուր «վահանակ»՝ բաղկացած 26 LCD վահանակներից՝ յուրաքանչյուրը 55 դյույմ: Ընկերության ծառայությունների կայունությունը և խնդիրների լուծման արագությունը կախված են հերթափոխի աշխատանքից:

Այսօր Դմիտրի Մելիքով tal10n, հերթապահ հերթափոխի մենեջերը կխոսի այն մասին, թե ինչպես են հաշված օրերի ընթացքում հաջողվել տեխնիկա տեղափոխել իրենց տուն և աշխատանքային նոր գործընթացներ հաստատել։ Ես նրան խոսք եմ տալիս։

— Երբ ունես ժամանակի անվերջ պաշար, ամեն ինչով կարող ես հարմարավետ տեղաշարժվել ցանկացած վայրում: Բայց կորոնավիրուսի արագ տարածումը մեզ բոլորովին այլ պայմանների մեջ է դրել։ Yandex-ի աշխատակիցներն առաջիններից էին, ովքեր անցան հեռավար աշխատանքի՝ նույնիսկ մինչև ինքնամեկուսացման ռեժիմի ներդրումը։ Դա տեղի ունեցավ այսպես. Հինգշաբթի օրը՝ մարտի 12-ին, ինձ խնդրեցին գնահատել թիմի աշխատանքը տուն տեղափոխելու հնարավորությունը: Ուրբաթ օրը՝ 13-ին, առաջարկություն հայտնվեց՝ անցնել հեռավոր աշխատանքի: Երեքշաբթի՝ մարտի 17-ի գիշերը ամեն ինչ պատրաստ ունեինք՝ հերթապահներն աշխատում էին տնից, տեխնիկան տեղափոխվեց, բացակայող ծրագրակազմը գրվեց, պրոցեսները վերակազմավորվեցին։ Եվ հիմա ես ձեզ կասեմ, թե ինչպես ենք մենք դա հանել: Բայց նախ պետք է հիշել այն խնդիրները, որոնք լուծում է հերթափոխը:

Ով ենք մենք

Yandex-ը խոշոր ընկերություն է, որն ունի հարյուրավոր ծառայություններ: Որոնման, ձայնային օգնականի և բոլոր այլ ապրանքների կայունությունը կախված է ոչ միայն մշակողներից: Տվյալների կենտրոնի էլեկտրամատակարարումը կարող է խափանվել: Ասֆալտը փոխարինելիս աշխատողը կարող է պատահաբար վնասել օպտիկական մալուխը: Կամ կարող է լինել օգտատերերի ակտիվության աճ՝ առաջացնելով հզորությունների վերաբաշխման հրատապ անհրաժեշտություն: Ավելին, մենք բոլորս ապրում ենք մեծ, բարդ ենթակառուցվածքներում, և մի ապրանքի թողարկումը կարող է պատահաբար հանգեցնել մյուսի դեգրադացման:

Մեր բաց տարածքում գտնվող 26 վահանակները մեկուկես հազար ահազանգեր են և մեր ծառայությունների հարյուրից ավելի գծապատկերներ և վահանակներ: Ըստ էության, սա հսկայական ախտորոշիչ վահանակ է: Փորձառու հերթապահ ադմինիստրատորը կարող է արագ հասկանալ կարևոր բաղադրիչների կարգավիճակը՝ նայելով դրան և կարող է ուղղություն սահմանել տեխնոլոգիական խնդրի հետաքննության համար: Սա չի նշանակում, որ մարդը պետք է անընդհատ նայի բոլոր սարքերին. ավտոմատացումը ինքնին ուշադրություն կգրավի՝ ծանուցում ուղարկելով հերթապահի հատուկ ինտերֆեյսին, բայց առանց տեսողական վահանակի խնդրի լուծումը կարող է երկար տևել։

Երբ խնդիրներ են առաջանում, հերթապահը նախ գնահատում է նրանց առաջնահերթությունը։ Այնուհետև այն մեկուսացնում է խնդիրը կամ նվազագույնի է հասցնում դրա ազդեցությունը օգտատերերի վրա:

Խնդիրը մեկուսացնելու մի քանի ստանդարտ եղանակներ կան: Դրանցից մեկը ծառայությունների դեգրադացումն է, երբ հերթապահ ադմինիստրատորն անջատում է որոշ գործառույթներ, որոնք ամենաքիչն են նկատում օգտատերերը։ Սա թույլ է տալիս ժամանակավորապես նվազեցնել բեռը և պարզել, թե ինչ է տեղի ունեցել: Եթե ​​տվյալների կենտրոնի հետ խնդիր է առաջանում, հերթապահը կապվում է օպերացիոն թիմի հետ, հասկանում է խնդիրը, վերահսկում դրա լուծման ժամկետները և, անհրաժեշտության դեպքում, ներգրավում է մասնագիտացված թիմեր:

Երբ հերթապահ ադմինիստրատորը չի կարողանում մեկուսացնել թողարկման պատճառով առաջացած խնդիրը, նա այդ մասին հայտնում է սպասարկման թիմին, և մշակողները սխալներ են փնտրում նոր կոդում: Եթե ​​նրանք չեն կարողանում պարզել դա, ապա ադմինիստրատորը ներգրավում է մշակողներին այլ ապրանքների կամ ծառայությունների հասանելիության ինժեներներից:

Ես կարող եմ երկար խոսել այն մասին, թե ինչպես է ամեն ինչ աշխատում այստեղ, բայց կարծում եմ, որ ես արդեն փոխանցել եմ էությունը։ Հերթապահությունը համակարգում է բոլոր ծառայությունների աշխատանքը և վերահսկում գլոբալ խնդիրները։ Հերթապահ ադմինիստրատորի համար կարևոր է, որ ախտորոշիչ վահանակն իր աչքի առաջ լինի։ Ահա թե ինչու, հեռավար աշխատանքի անցնելիս, դուք չեք կարող բոլորին պարզապես նոութբուք տալ: Գծագրերը և ազդանշանները չեն տեղավորվի էկրանին: Ինչ անել?

Գաղափար

Գրասենյակում հերթապահող բոլոր տասը ադմինիստրատորները հերթափոխով աշխատում են մեկ վահանակի հետևում, որը ներառում է 26 մոնիտոր, երկու համակարգիչ, չորս NVIDIA Quadro NVS 810 վիդեո քարտեր, երկու դարակաշարերի անխափան սնուցման աղբյուր և մի քանի անկախ ցանցային մուտքեր: Մենք պետք է ապահովեինք, որ բոլորն ունենան տանը աշխատելու հնարավորություն: Պարզապես հնարավոր չէ նման պատ հավաքել բնակարանում (կինս հատկապես ուրախ կլինի դրա համար), ուստի մենք որոշեցինք ստեղծել շարժական տարբերակ, որը կարելի է բերել և հավաքել տանը:

Մենք սկսեցինք փորձարկել կոնֆիգուրացիան: Մեզ անհրաժեշտ էր բոլոր սարքերը տեղավորել ավելի քիչ էկրանների վրա, ուստի մոնիտորի հիմնական պահանջը պիքսելների բարձր խտությունն էր: Մեր միջավայրում առկա 4K մոնիտորներից մենք ընտրեցինք Lenovo P27u-10-ը փորձարկման համար:

Նոթբուքներից մենք վերցրեցինք 16 դյույմանոց MacBook Pro: Այն ունի բավականին հզոր գրաֆիկական ենթահամակարգ, որն անհրաժեշտ է մի քանի 4K էկրանների վրա պատկերներ ցուցադրելու համար և չորս ունիվերսալ Type-C միակցիչներ: Դուք կարող եք հարցնել. ինչու ոչ աշխատասեղան: Նոթբուքը պահեստից ճիշտ նույնով փոխարինելը շատ ավելի հեշտ և արագ է, քան նույնական համակարգի միավորը հավաքելը և կազմաձևելը: Եվ այն ավելի քիչ է կշռում:

Այժմ մենք պետք է հասկանայինք, թե իրականում քանի մոնիտոր կարող ենք միացնել նոութբուքին: Եվ այստեղ խնդիրը միակցիչների քանակը չէ, մենք դա կարողացանք պարզել միայն հավաքված համակարգը փորձարկելու միջոցով:

Ինչպես մենք տարհանեցինք Յանդեքսի հերթափոխը

Փորձարկում

Մենք բավականին հարմարավետ տեղադրեցինք բոլոր գծապատկերներն ու ազդանշանները չորս մոնիտորների վրա և նույնիսկ միացրինք դրանք նոութբուքին, բայց խնդիր առաջացավ: Միացված մոնիտորների վրա 4x4K պիքսելների ցուցադրումը այնպիսի ծանրաբեռնվածություն է առաջացնում վիդեո քարտի վրա, որ նոութբուքը դատարկվում էր նույնիսկ լիցքավորման ժամանակ: Բարեբախտաբար, խնդիրը լուծվեց Lenovo ThinkPad Thunderbolt 3 Dock Gen 2-ի օգնությամբ: Ես կարողացա միացնել մոնիտորը, սնուցման աղբյուրը և նույնիսկ իմ սիրելի մկնիկը և ստեղնաշարը դոկինգ կայանին:

Բայց անմիջապես ի հայտ եկավ մեկ այլ խնդիր. GPU-ն այնքան էր սեղմվում, որ նոութբուքը գերտաքացավ, ինչը նշանակում է, որ մարտկոցը նույնպես գերտաքացավ, որն արդյունքում անցավ պաշտպանիչ ռեժիմի և դադարեց լիցքավորվել: Ընդհանուր առմամբ, սա շատ օգտակար ռեժիմ է, որը պաշտպանում է վտանգավոր իրավիճակներից: Որոշ դեպքերում խնդիրը լուծվել է բարձր տեխնոլոգիական սարքի օգնությամբ՝ նոութբուքի տակ տեղադրված գնդիկավոր գրիչ՝ օդափոխությունը բարելավելու համար։ Բայց սա ոչ բոլորին օգնեց, այնպես որ մենք նաև բարձրացրինք ստանդարտ օդափոխիչի արագությունը:

Եվս մեկ տհաճ հատկանիշ կար. Բոլոր գծապատկերները և զգուշացումները պետք է տեղադրվեն խիստ սահմանված տեղում: Պատկերացրեք, որ դուք ինքնաթիռ եք վարում վայրէջք կատարելու համար, և այնուհետև արագության ցուցիչները, բարձրաչափերը, վարիոմետրերը, վերաբերմունքի ցուցիչները, կողմնացույցները և դիրքի ցուցիչները սկսում են փոխել չափը և ցատկել տարբեր վայրեր: Այսպիսով, մենք որոշեցինք ստեղծել մի ծրագիր, որը կօգնի այս հարցում: Մի երեկո մենք այն գրեցինք Electron.js-ում՝ վերցնելով պատրաստի API Windows-ի ստեղծման և կառավարման վերաբերյալ: Մենք ավելացրել ենք կոնֆիգուրացիայի պրոցեսոր և դրանց պարբերական թարմացում, ինչպես նաև սահմանափակ թվով մոնիտորների աջակցություն: Քիչ անց նրանք ավելացրին աջակցություն տարբեր կարգավորումների համար:

Մոնտաժում և առաքում

Երկուշաբթի օրը օգնության գրասեղանի մոգերը մեզ համար ձեռք էին բերել 40 մոնիտոր, տասը նոթբուք և նույնքան միացման կայան։ Չգիտեմ, թե ինչպես են դա նրանց հաջողվել, բայց շատ շնորհակալ եմ:

Ինչպես մենք տարհանեցինք Յանդեքսի հերթափոխը

Մնում էր այդ ամենը հասցնել հերթապահ ադմինիստրատորների բնակարաններին։ Իսկ սրանք տասը հասցեներ են Մոսկվայի տարբեր հատվածներում՝ հարավ, արևելք, կենտրոն, և նաև Բալաշիխա, որը գրասենյակից 45 կիլոմետր հեռավորության վրա է (ի դեպ, Սերպուխովից հետո պրակտիկանտ է ավելացվել)։ Պետք էր ինչ-որ կերպ այս ամենը բաշխել մարդկանց միջև, կառուցել լոգիստիկա։

Ես մուտքագրել եմ մեր Քարտեզների բոլոր հասցեները, դեռ հնարավորություն կա օպտիմալացնել երթուղին տարբեր կետերի միջև (օգտագործել եմ գործիքի անվճար բետա տարբերակը սուրհանդակների համար)։ Մենք մեր թիմը բաժանեցինք չորս անկախ թիմերի՝ երկու հոգուց բաղկացած, յուրաքանչյուրն իր երթուղին: Իմ մեքենան ամենատարողն էր, ուստի միանգամից չորս աշխատակցի համար սարքավորումներ վերցրի։

Ինչպես մենք տարհանեցինք Յանդեքսի հերթափոխը

Ամբողջ առաքումը տեւել է ռեկորդային երեք ժամ։ Երկուշաբթի երեկոյան ժամը տասին դուրս եկանք գրասենյակից։ Գիշերվա ժամը մեկին արդեն տանն էի։ Նույն գիշեր մենք նոր տեխնիկայով հերթապահեցինք։

Հետ, որ արդյունքում

Մեկ մեծ դիագնոստիկ կոնսոլի փոխարեն մենք յուրաքանչյուր հերթապահի բնակարանում հավաքեցինք տասը համեմատաբար շարժական։ Իհարկե, դեռ որոշ մանրամասներ կային, որ պետք է կարգավորել։ Օրինակ՝ հերթապահի համար մեկ «երկաթյա» հեռախոս ունեինք ծանուցումների համար։ Սա չաշխատեց նոր պայմաններում, ուստի մենք ստեղծեցինք «վիրտուալ հեռախոսներ» հերթապահների համար (ըստ էության, մեսենջերի ալիքները): Եղել են նաև այլ փոփոխություններ. Բայց գլխավորն այն է, որ ռեկորդային ժամանակում մեզ հաջողվեց տեղափոխել ոչ միայն մարդկանց՝ նվազեցնելով նրանց վարակվելու վտանգը, այլև մեր ամբողջ աշխատանքը՝ առանց գործընթացներին և արտադրանքի կայունությանը վնասելու։ Արդեն մեկ ամիս է, ինչ աշխատում ենք այս ռեժիմով։

Ստորև կարող եք գտնել մեր հերթապահների իրական աշխատատեղերի լուսանկարները:

Ինչպես մենք տարհանեցինք Յանդեքսի հերթափոխը

Ինչպես մենք տարհանեցինք Յանդեքսի հերթափոխը

Ինչպես մենք տարհանեցինք Յանդեքսի հերթափոխը

Ինչպես մենք տարհանեցինք Յանդեքսի հերթափոխը

Ինչպես մենք տարհանեցինք Յանդեքսի հերթափոխը

Source: www.habr.com