VM-ի կատարողականի վերլուծություն VMware vSphere-ում: Մաս 3. Պահպանում

VM-ի կատարողականի վերլուծություն VMware vSphere-ում: Մաս 3. Պահպանում

Մաս 1. CPU-ի մասին
Մաս 2. Հիշողության մասին

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

Ես կքննարկեմ թեման՝ օգտագործելով պահեստավորման համակարգերի բլոկային մուտքի օրինակը, թեև ֆայլերի մուտքի համար հաշվիչները մոտավորապես նույնն են:

Մի քիչ տեսություն

Վիրտուալ մեքենաների սկավառակի ենթահամակարգի աշխատանքի մասին խոսելիս մարդիկ սովորաբար ուշադրություն են դարձնում երեք փոխկապակցված պարամետրերի վրա.

  • մուտքային/ելքային գործողությունների քանակը (Input/Output Operations Per Second, IOPS);
  • թողունակություն;
  • մուտքային/ելքային գործառնությունների ուշացում (Latency):

IOPS-ի քանակը սովորաբար կարևոր է պատահական ծանրաբեռնվածության համար. մուտք դեպի սկավառակի բլոկներ, որոնք տեղակայված են տարբեր վայրերում: Նման բեռի օրինակ կարող են լինել տվյալների բազաները, բիզնես հավելվածները (ERP, CRM) և այլն:

Շրջանառություն կարևոր է հաջորդական բեռների համար. մուտք դեպի բլոկներ, որոնք գտնվում են մեկը մյուսի հետևից: Օրինակ, ֆայլերի սերվերները (բայց ոչ միշտ) և տեսահսկման համակարգերը կարող են նման բեռ առաջացնել:

Արտադրողականությունը կապված է I/O գործողությունների քանակի հետ հետևյալ կերպ.

Արտադրողականություն = IOPS * Բլոկի չափը, որտեղ Բլոկի չափը բլոկի չափն է։

Բլոկի չափը բավականին կարևոր հատկանիշ է: ESXi-ի ժամանակակից տարբերակները թույլ են տալիս մինչև 32 ԿԲ չափի բլոկներ: Եթե ​​բլոկը նույնիսկ ավելի մեծ է, այն բաժանվում է մի քանիսի: Ոչ բոլոր պահեստավորման համակարգերը կարող են արդյունավետ աշխատել նման մեծ բլոկների հետ, ուստի ESXi Ընդլայնված կարգավորումներում կա DiskMaxIOSize պարամետր: Օգտագործելով այն՝ կարող եք նվազեցնել հիպերվիզորի կողմից բաց թողնված առավելագույն բլոկի չափը (ավելի մանրամասն այստեղ) Նախքան այս պարամետրը փոխելը, ես խորհուրդ եմ տալիս խորհրդակցել պահեստավորման համակարգի արտադրողի հետ կամ գոնե փորձարկել փոփոխությունները լաբորատոր նստարանի վրա: 

Բլոկի մեծ չափը կարող է վնասակար ազդեցություն ունենալ պահեստավորման աշխատանքի վրա: Նույնիսկ եթե IOPS-ի և թողունակության քանակը համեմատաբար փոքր է, մեծ ուշացումները կարող են դիտվել մեծ բլոկի չափով: Հետեւաբար, ուշադրություն դարձրեք այս պարամետրին:

Ժամկետանցություն - ամենահետաքրքիր կատարողական պարամետրը: Վիրտուալ մեքենայի համար I/O հետաձգումը բաղկացած է.

  • ուշացումներ հիպերվիզորի ներսում (KAVG, միջին միջուկի MilliSec/Read);
  • տվյալների ցանցի և պահպանման համակարգի (DAVG, Average Driver MilliSec/Command) կողմից տրամադրվող ուշացում:

Ընդհանուր ուշացումը, որը տեսանելի է հյուրի OS-ում (GAVG, Average Guest MilliSec/Command) KAVG-ի և DAVG-ի գումարն է:

GAVG-ը և DAVG-ը չափվում են, և KAVG-ն հաշվարկվում է՝ GAVG–DAVG:

VM-ի կատարողականի վերլուծություն VMware vSphere-ում: Մաս 3. Պահպանում
Աղբյուր

Եկեք ավելի սերտ նայենք ԿԱՎԳ. Նորմալ շահագործման ընթացքում KAVG-ը պետք է հակված լինի զրոյի կամ առնվազն շատ ավելի քիչ լինի, քան DAVG-ը: Միակ դեպքը, որը ես գիտեմ, որտեղ KAVG-ն ակնկալվում է, որ բարձր է, VM սկավառակի IOPS սահմանաչափն է: Այս դեպքում, երբ փորձեք գերազանցել սահմանը, KAVG-ն կավելանա:

KAVG-ի ամենակարևոր բաղադրիչը QAVG-ն է՝ հիպերվիզորի ներսում մշակման հերթի ժամանակը: KAVG-ի մնացած բաղադրիչներն աննշան են:

Սկավառակի ադապտեր վարորդի և լուսինների հերթն ունի ֆիքսված չափ: Բարձր բեռնված միջավայրերի համար կարող է օգտակար լինել մեծացնել այս չափը: Այստեղ նկարագրում է, թե ինչպես կարելի է մեծացնել ադապտերների վարորդի հերթերը (միևնույն ժամանակ կավելանա հերթը դեպի լուսիններ): Այս կարգավորումն աշխատում է, երբ միայն մեկ VM է աշխատում լուսնի հետ, ինչը հազվադեպ է լինում: Եթե ​​լուսնի վրա մի քանի VM կա, դուք նույնպես պետք է մեծացնեք պարամետրը Disk.SchedNumReqOutstanding (հրահանգներ  այստեղ). Մեծացնելով հերթը, դուք համապատասխանաբար նվազեցնում եք QAVG և KAVG:

Բայց նորից, նախ կարդացեք HBA վաճառողի փաստաթղթերը և փորձարկեք փոփոխությունները լաբորատորիայի նստարանին:

Լուսնի մոտ հերթի չափի վրա կարող է ազդել SIOC (Storage I/O Control) մեխանիզմի ներառումը: Այն ապահովում է միատեսակ մուտք դեպի Լուսին կլաստերի բոլոր սերվերներից՝ դինամիկ կերպով փոխելով հերթը դեպի լուսին սերվերների վրա: Այսինքն, եթե հյուրընկալողներից մեկն աշխատում է VM-ով, որը պահանջում է անհամաչափ քանակի կատարողականություն (աղմկոտ հարևան VM), SIOC-ը կրճատում է այս հոսթի (DQLEN) մինչև լուսնի հերթի երկարությունը: Ավելի մանրամասն այստեղ.

Մենք դասավորել ենք KAVG-ն, հիմա մի փոքր մասին ԴԱՎԳ. Այստեղ ամեն ինչ պարզ է. DAVG-ն արտաքին միջավայրի (տվյալների ցանց և պահեստավորման համակարգ) ներդրած ուշացումն է: Յուրաքանչյուր ժամանակակից և ոչ այնքան ժամանակակից պահեստավորման համակարգ ունի իր կատարողական հաշվիչներ: DAVG-ի հետ կապված խնդիրները վերլուծելու համար իմաստ ունի նայել դրանք: Եթե ​​ESXi-ի և պահեստավորման կողմում ամեն ինչ կարգին է, ստուգեք տվյալների ցանցը:

Աշխատանքի հետ կապված խնդիրներից խուսափելու համար ընտրեք ճիշտ ուղու ընտրության քաղաքականություն (PSP) ձեր պահեստավորման համակարգի համար: Գրեթե բոլոր ժամանակակից պահեստավորման համակարգերն աջակցում են PSP Round-Robin-ին (ALUA-ով կամ առանց, Ասիմետրիկ տրամաբանական միավորի հասանելիության): Այս քաղաքականությունը թույլ է տալիս օգտագործել պահեստավորման համակարգ տանող բոլոր հասանելի ուղիները: ALUA-ի դեպքում օգտագործվում են միայն լուսնի սեփականատեր հսկիչ տանող ուղիները: ESXi-ի ոչ բոլոր պահեստավորման համակարգերն ունեն լռելյայն կանոններ, որոնք սահմանում են Round-Robin քաղաքականությունը: Եթե ​​ձեր պահեստավորման համակարգի համար կանոն չկա, օգտագործեք պահեստավորման համակարգի արտադրողի պլագին, որը կստեղծի համապատասխան կանոն կլաստերի բոլոր հոսթների վրա, կամ ինքներդ կստեղծեք կանոն: Մանրամասներ այստեղ

Նաև պահեստավորման համակարգերի որոշ արտադրողներ խորհուրդ են տալիս փոխել IOPS-ների քանակը մեկ ճանապարհի համար 1000-ի ստանդարտ արժեքից մինչև 1: Մեր պրակտիկայում դա հնարավորություն տվեց ավելի շատ «քամել» պահեստավորման համակարգից և զգալիորեն կրճատել ձախողման համար պահանջվող ժամանակը: վերահսկիչի ձախողման կամ թարմացման դեպքում: Ստուգեք վաճառողի առաջարկությունները, և եթե հակացուցումներ չկան, ապա փորձեք փոխել այս պարամետրը: Մանրամասներ այստեղ.

Հիմնական վիրտուալ մեքենայի սկավառակի ենթահամակարգի կատարողականի հաշվիչները

Սկավառակի ենթահամակարգի աշխատանքի հաշվիչներ vCenter-ում հավաքվում են Datastore, Disk, Virtual Disk բաժիններում.

VM-ի կատարողականի վերլուծություն VMware vSphere-ում: Մաս 3. Պահպանում

Բաժին Տվյալների բազան Կան vSphere սկավառակի պահեստների (տվյալների պահեստների) չափումներ, որոնց վրա գտնվում են VM սկավառակները: Այստեղ դուք կգտնեք ստանդարտ հաշվիչներ հետևյալի համար.

  • IOPS (վայրկյանում կարդալու/գրելու միջին հարցումներ), 
  • թողունակություն (Կարդալ/Գրելու արագություն), 
  • ուշացումներ (Կարդալ/Գրել/Ամենաբարձր ուշացում):

Սկզբունքորեն ամեն ինչ պարզ է հաշվիչների անվանումներից։ Թույլ տվեք ևս մեկ անգամ ձեր ուշադրությունը հրավիրել այն փաստի վրա, որ այստեղ վիճակագրությունը հատուկ VM-ի (կամ VM սկավառակի) համար չէ, այլ ընդհանուր վիճակագրություն ամբողջ տվյալների պահեստի համար: Իմ կարծիքով, ավելի հարմար է այս վիճակագրությունը ESXTOP-ում նայել, թեկուզ այն բանից ելնելով, որ այնտեղ չափման նվազագույն ժամկետը 2 վայրկյան է։

Բաժին Սկավառակ կան չափումներ բլոկ սարքերի վրա, որոնք օգտագործվում են VM-ի կողմից: Գոյություն ունեն IOPS-ի համար գումարման տիպի հաշվիչներ (չափման ժամանակահատվածում մուտքային/ելքային գործողությունների քանակը) և մի քանի հաշվիչներ՝ կապված արգելափակման մուտքի հետ (հրամանները ընդհատվել են, ավտոբուսի վերակայումը): Իմ կարծիքով, ավելի հարմար է նաև այս տեղեկատվությունը դիտել ESXTOP-ում։

Բաժին Վիրտուալ սկավառակ – ամենաօգտակարը VM սկավառակի ենթահամակարգի կատարողական խնդիրների հայտնաբերման տեսանկյունից: Այստեղ դուք կարող եք տեսնել յուրաքանչյուր վիրտուալ սկավառակի կատարումը: Հենց այս տեղեկությունն է անհրաժեշտ՝ հասկանալու համար, թե արդյոք կոնկրետ վիրտուալ մեքենան խնդիր ունի: Ի լրումն ստանդարտ հաշվիչների՝ I/O գործառնությունների քանակի, կարդալու/գրելու ծավալի և ուշացումների համար, այս բաժինը պարունակում է օգտակար հաշվիչներ, որոնք ցույց են տալիս բլոկի չափը՝ Read/Write request size:

Ստորև նկարը ցույց է տալիս VM սկավառակի աշխատանքի գրաֆիկը, որտեղ կարող եք տեսնել IOPS-ի քանակը, հետաձգումը և բլոկի չափը: 

VM-ի կատարողականի վերլուծություն VMware vSphere-ում: Մաս 3. Պահպանում

Դուք կարող եք նաև դիտել կատարողականի ցուցանիշները ամբողջ տվյալների պահեստի համար, եթե SIOC-ը միացված է: Ահա հիմնական տեղեկատվությունը միջին ուշացման և IOPS-ի վերաբերյալ: Լռելյայնորեն, այս տեղեկատվությունը կարող է դիտվել միայն իրական ժամանակում:

VM-ի կատարողականի վերլուծություն VMware vSphere-ում: Մաս 3. Պահպանում

ESXTOP

ESXTOP-ն ունի մի քանի էկրաններ, որոնք տեղեկատվություն են տրամադրում հյուրընկալող սկավառակի ենթահամակարգի, որպես ամբողջության, առանձին վիրտուալ մեքենաների և դրանց սկավառակների մասին:

Սկսենք վիրտուալ մեքենաների մասին տեղեկություններից: «Disk VM» էկրանը կանչվում է «v» ստեղնով.

VM-ի կատարողականի վերլուծություն VMware vSphere-ում: Մաս 3. Պահպանում

NVDISK VM սկավառակների քանակն է: Յուրաքանչյուր սկավառակի համար տեղեկատվությունը դիտելու համար սեղմեք «e» և մուտքագրեք հետաքրքրություն ներկայացնող VM-ի GID-ը:

Այս էկրանին մնացած պարամետրերի իմաստը պարզ է դառնում նրանց անուններից:

Անսարքությունների վերացման մեկ այլ օգտակար էկրան է սկավառակի ադապտեր: Կանչվում է «d» ստեղնով (ներքևի նկարում ընտրված են A,B,C,D,E,G դաշտերը).

VM-ի կատարողականի վերլուծություն VMware vSphere-ում: Մաս 3. Պահպանում

NPTH – դեպի լուսիններ տանող ուղիների քանակը, որոնք տեսանելի են այս ադապտերից: Ադապտերի վրա յուրաքանչյուր ուղու համար տեղեկատվություն ստանալու համար սեղմեք «e» և մուտքագրեք ադապտերի անունը.

VM-ի կատարողականի վերլուծություն VMware vSphere-ում: Մաս 3. Պահպանում

ԱԿԼԵՆ - ադապտերի վրա հերթի առավելագույն չափը:

Այս էկրանին կան նաև հետաձգման հաշվիչներ, որոնց մասին ես խոսեցի վերևում. KAVG/cmd, GAVG/cmd, DAVG/cmd, QAVG/cmd.

Սկավառակի սարքի էկրանը, որը կանչվում է «u» ստեղնը սեղմելով, տեղեկատվություն է տրամադրում առանձին բլոկային սարքերի՝ լուսինների մասին (Ա, Բ, Ֆ, Գ, I դաշտերը ընտրված են ստորև նկարում): Այստեղ դուք կարող եք տեսնել լուսինների համար հերթի կարգավիճակը:

VM-ի կատարողականի վերլուծություն VMware vSphere-ում: Մաս 3. Պահպանում

DQLEN - բլոկ սարքի հերթի չափը:
ACTV – ESXi միջուկում I/O հրամանների քանակը:
QUED – հերթում I/O հրամանների քանակը:
%ԱՄՆ ԴՈԼԱՐ – ACTV / DQLEN × 100%.
LOAD – (ACTV + QUED) / DQLEN.

Եթե ​​%USD-ը բարձր է, դուք պետք է մտածեք հերթի ավելացման մասին: Որքան շատ հրամաններ լինեն հերթում, այնքան բարձր է QAVG-ն և, համապատասխանաբար, KAVG-ը:

Դուք կարող եք նաև տեսնել Սկավառակի սարքի էկրանին, թե արդյոք VAAI-ն (vStorage API for Array Integration) աշխատում է պահեստավորման համակարգում: Դա անելու համար ընտրեք A և O դաշտերը:

VAAI մեխանիզմը թույլ է տալիս աշխատանքի մի մասը փոխանցել հիպերվիզորից անմիջապես պահեստավորման համակարգ, օրինակ՝ զրոյացնել, պատճենել բլոկները կամ արգելափակել:

VM-ի կատարողականի վերլուծություն VMware vSphere-ում: Մաս 3. Պահպանում

Ինչպես տեսնում եք վերևի նկարում, VAAI-ն աշխատում է պահեստավորման այս համակարգի վրա. ակտիվորեն օգտագործվում են Zero և ATS պրիմիտիվները:

ESXi-ում սկավառակի ենթահամակարգի հետ աշխատանքը օպտիմալացնելու խորհուրդներ

  • Ուշադրություն դարձրեք բլոկի չափին.
  • Սահմանեք հերթի օպտիմալ չափը HBA-ի վրա:
  • Մի մոռացեք միացնել SIOC-ը տվյալների պահեստներում:
  • Ընտրեք PSP պահեստավորման համակարգի արտադրողի առաջարկություններին համապատասխան:
  • Համոզվեք, որ VAAI-ն աշխատում է:

Օգտակար հոդվածներ թեմայի շուրջ.http://www.yellow-bricks.com/2011/06/23/disk-schednumreqoutstanding-the-story/
http://www.yellow-bricks.com/2009/09/29/whats-that-alua-exactly/
http://www.yellow-bricks.com/2019/03/05/dqlen-changes-what-is-going-on/
https://www.codyhosterman.com/2017/02/understanding-vmware-esxi-queuing-and-the-flasharray/
https://www.codyhosterman.com/2018/03/what-is-the-latency-stat-qavg/
https://kb.vmware.com/s/article/1267
https://kb.vmware.com/s/article/1268
https://kb.vmware.com/s/article/1027901
https://kb.vmware.com/s/article/2069356
https://kb.vmware.com/s/article/2053628
https://kb.vmware.com/s/article/1003469
https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/performance/vsphere-esxi-vcenter-server-67-performance-best-practices.pdf

Source: www.habr.com

Добавить комментарий