Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

Եթե ​​դուք կառավարում եք վիրտուալ ենթակառուցվածք, որը հիմնված է VMware vSphere-ի (կամ ցանկացած այլ տեխնոլոգիական ստեկի) վրա, հավանաբար հաճախ եք լսում օգտատերերի բողոքները. «Վիրտուալ մեքենան դանդաղ է աշխատում»: Այս հոդվածների շարքում ես կվերլուծեմ կատարողականի ցուցանիշները և կպատմեմ ձեզ, թե ինչ և ինչու է այն դանդաղում և ինչպես համոզվել, որ այն չի դանդաղում:

Ես կքննարկեմ վիրտուալ մեքենայի կատարման հետևյալ ասպեկտները.

  • Պրոցեսոր,
  • RAM,
  • ՍԿՍԱՎՈՐ,
  • Անց:

Ես կսկսեմ պրոցեսորից:

Կատարումը վերլուծելու համար մեզ անհրաժեշտ կլինի.

  • vCenter Performance Հաշվիչներ – կատարողականի հաշվիչներ, որոնց գրաֆիկները կարելի է դիտել vSphere Client-ի միջոցով: Այս հաշվիչների վերաբերյալ տեղեկատվությունը հասանելի է հաճախորդի ցանկացած տարբերակում («հաստ» հաճախորդ C#-ում, վեբ հաճախորդ՝ Flex-ում և վեբ հաճախորդ՝ HTML5): Այս հոդվածներում մենք կօգտագործենք C# հաճախորդի սքրինշոթները, միայն այն պատճառով, որ դրանք ավելի լավ տեսք ունեն մանրանկարչության մեջ :)
  • ESXTOP – կոմունալ ծրագիր, որն աշխատում է ESXi հրամանի տողից: Նրա օգնությամբ դուք կարող եք իրական ժամանակում ստանալ կատարողականի հաշվիչների արժեքները կամ վերբեռնել այդ արժեքները որոշակի ժամանակահատվածում .csv ֆայլ՝ հետագա վերլուծության համար: Հաջորդը, ես ձեզ ավելին կպատմեմ այս գործիքի մասին և մի քանի օգտակար հղումներ կներկայացնեմ թեմայի վերաբերյալ փաստաթղթերին և հոդվածներին:

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

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

ESXi-ում առանձին գործընթաց՝ VMware տերմինաբանության աշխարհը, պատասխանատու է յուրաքանչյուր vCPU-ի (վիրտուալ մեքենայի միջուկ) աշխատանքի համար: Կան նաև սպասարկման գործընթացներ, բայց VM-ի կատարողականի վերլուծության տեսանկյունից դրանք ավելի քիչ հետաքրքիր են։

ESXi-ում գործընթացը կարող է լինել չորս վիճակներից մեկում.

  • Վազում – գործընթացը կատարում է որոշ օգտակար աշխատանք:
  • Սպասեք: – գործընթացը որևէ աշխատանք չի կատարում (անգործուն) կամ սպասում է մուտքի/ելքի:
  • Կոստոպ – պայման, որը տեղի է ունենում բազմամիջուկ վիրտուալ մեքենաներում: Դա տեղի է ունենում, երբ հիպերվիզորի պրոցեսորի ժամանակացույցը (ESXi CPU Scheduler) չի կարող պլանավորել բոլոր ակտիվ վիրտուալ մեքենայի միջուկների միաժամանակյա կատարումը ֆիզիկական սերվերի միջուկների վրա: Ֆիզիկական աշխարհում բոլոր պրոցեսորային միջուկները աշխատում են զուգահեռ, VM-ի ներսում գտնվող հյուր ՕՀ-ն ակնկալում է նմանատիպ վարքագիծ, ուստի հիպերվիզորը պետք է դանդաղեցնի VM միջուկները, որոնք կարող են ավելի արագ ավարտել իրենց ժամացույցը: ESXi-ի ժամանակակից տարբերակներում պրոցեսորի ժամանակացույցն օգտագործում է մի մեխանիզմ, որը կոչվում է հանգիստ համաժամանակացում. հիպերվիզորը հաշվի է առնում «ամենաարագ» և «ամենադանդաղ» վիրտուալ մեքենայի միջուկի (թեք) միջև եղած բացը: Եթե ​​բացը գերազանցում է որոշակի շեմը, արագ միջուկը մտնում է ծախսային վիճակ: Եթե ​​VM միջուկները շատ ժամանակ են ծախսում այս վիճակում, դա կարող է առաջացնել աշխատանքի հետ կապված խնդիրներ:
  • Պատրաստ – գործընթացը մտնում է այս վիճակի մեջ, երբ հիպերվիզորը չի կարողանում ռեսուրսներ հատկացնել դրա կատարման համար: Պատրաստի բարձր արժեքները կարող են VM-ի աշխատանքի հետ կապված խնդիրներ առաջացնել:

Հիմնական վիրտուալ մեքենայի պրոցեսորի աշխատանքի հաշվիչներ

CPU-ի օգտագործում, %. Ցույց է տալիս տվյալ ժամանակահատվածի համար պրոցեսորի օգտագործման տոկոսը:

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

Ինչպե՞ս վերլուծել: Եթե ​​VM-ը հետևողականորեն օգտագործում է պրոցեսորը 90%-ով կամ գագաթնակետերը մինչև 100%, ապա մենք խնդիրներ ունենք: Խնդիրները կարող են արտահայտվել ոչ միայն VM-ի ներսում հավելվածի «դանդաղ» գործողության մեջ, այլ նաև ցանցի միջոցով VM-ի անհասանելիության մեջ: Եթե ​​մոնիտորինգի համակարգը ցույց է տալիս, որ VM-ը պարբերաբար ընկնում է, ուշադրություն դարձրեք CPU Usage գրաֆիկի գագաթնակետին:

Կա ստանդարտ ահազանգ, որը ցույց է տալիս վիրտուալ մեքենայի պրոցեսորի ծանրաբեռնվածությունը.

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

Ինչ անել? Եթե ​​VM-ի CPU-ի օգտագործումը անընդհատ անցնում է տանիքի միջով, ապա կարող եք մտածել vCPU-ների քանակի ավելացման մասին (ցավոք, դա միշտ չէ, որ օգնում է) կամ VM-ն ավելի հզոր պրոցեսորներով սերվեր տեղափոխելու մասին:

CPU-ի օգտագործումը ՄՀց-ում

vCenter Usage-ի գծապատկերներում %-ով դուք կարող եք տեսնել միայն ամբողջ վիրտուալ մեքենայի համար, առանձին միջուկների համար գծապատկերներ չկան (Esxtop-ում կան % արժեքներ միջուկների համար): Յուրաքանչյուր միջուկի համար կարող եք տեսնել Օգտագործումը ՄՀց-ով:

Ինչպե՞ս վերլուծել: Պատահում է, որ հավելվածը օպտիմիզացված չէ բազմամիջուկ ճարտարապետության համար. այն օգտագործում է միայն մեկ միջուկ 100%, իսկ մնացածը պարապ են առանց բեռնվածության: Օրինակ, լռելյայն կրկնօրինակման կարգավորումներով, MS SQL-ը սկսում է գործընթացը միայն մեկ միջուկի վրա: Արդյունքում, կրկնօրինակումը դանդաղում է ոչ թե սկավառակների դանդաղ արագության պատճառով (սա այն է, ինչի մասին սկզբում դժգոհում էր օգտվողը), այլ այն պատճառով, որ պրոցեսորը չի կարողանում հաղթահարել: Խնդիրը լուծվեց՝ փոխելով պարամետրերը. կրկնօրինակումը սկսեց զուգահեռ աշխատել մի քանի ֆայլերում (համապատասխանաբար՝ մի քանի գործընթացներում):

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր
Միջուկների վրա անհավասար բեռի օրինակ:

Կա նաև մի իրավիճակ (ինչպես վերը նշված գրաֆիկում), երբ միջուկները բեռնված են անհավասարաչափ, և դրանցից ոմանք ունեն 100% գագաթներ: Ինչպես միայն մեկ միջուկ բեռնելու դեպքում, CPU Usage-ի տագնապը չի աշխատի (դա ամբողջ VM-ի համար է), բայց կլինեն աշխատանքի հետ կապված խնդիրներ:

Ինչ անել? Եթե ​​վիրտուալ մեքենայի ծրագրակազմը բեռնում է միջուկները անհավասարաչափ (օգտագործում է միայն մեկ միջուկ կամ միջուկների մի մասը), իմաստ չունի ավելացնել դրանց թիվը: Այս դեպքում ավելի լավ է VM-ը տեղափոխել ավելի հզոր պրոցեսորներով սերվեր:

Կարող եք նաև փորձել ստուգել էներգիայի սպառման կարգավորումները սերվերի BIOS-ում: Շատ ադմինիստրատորներ BIOS-ում միացնում են High Performance ռեժիմը և դրանով իսկ անջատում C-states և P-states էներգախնայողության տեխնոլոգիաները: Ժամանակակից Intel պրոցեսորներն օգտագործում են Turbo Boost տեխնոլոգիան, որը մեծացնում է առանձին պրոցեսորային միջուկների հաճախականությունը՝ ի հաշիվ այլ միջուկների։ Բայց այն աշխատում է միայն այն դեպքում, երբ միացված են էներգախնայողության տեխնոլոգիաները: Եթե ​​դրանք անջատենք, պրոցեսորը չի կարող նվազեցնել բեռնված միջուկների էներգիայի սպառումը:

VMware-ը խորհուրդ է տալիս չանջատել էներգախնայողության տեխնոլոգիաները սերվերների վրա, այլ ընտրել այնպիսի ռեժիմներ, որոնք հնարավորինս թողնում են էներգիայի կառավարումը հիպերվիզորին։ Այս դեպքում հիպերվիզորի էներգիայի սպառման կարգավորումներում դուք պետք է ընտրեք Բարձր կատարողականություն:

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

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

CPU-ն պատրաստ է

Եթե ​​VM միջուկը (vCPU) գտնվում է Ready վիճակում, այն օգտակար աշխատանք չի կատարում: Այս պայմանը տեղի է ունենում, երբ հիպերվիզորը չի գտնում ազատ ֆիզիկական միջուկ, որին կարող է վերագրվել վիրտուալ մեքենայի vCPU գործընթացը:

Ինչպե՞ս վերլուծել: Սովորաբար, եթե վիրտուալ մեքենայի միջուկները 10%-ից ավելի ժամանակի պատրաստ վիճակում են, դուք կնկատեք աշխատանքի հետ կապված խնդիրներ: Պարզ ասած, ավելի քան 10% ժամանակի VM-ը սպասում է ֆիզիկական ռեսուրսների հասանելիությանը:

vCenter-ում կարող եք դիտել CPU Ready-ի հետ կապված 2 հաշվիչ.

  • պատրաստակամություն,
  • Պատրաստ է:

Երկու հաշվիչների արժեքները կարող են դիտվել ինչպես ամբողջ VM-ի, այնպես էլ առանձին միջուկների համար:
Պատրաստությունը ցույց է տալիս արժեքը անմիջապես որպես տոկոս, բայց միայն իրական ժամանակում (վերջին ժամի տվյալները, չափման միջակայքը 20 վայրկյան): Ավելի լավ է այս հաշվիչն օգտագործել միայն «կրունկների վրա տաք» խնդիրներ փնտրելու համար:

Պատրաստի հակաարժեքները կարող են դիտվել նաև պատմական տեսանկյունից: Սա օգտակար է օրինաչափություններ հաստատելու և խնդրի ավելի խորը վերլուծության համար: Օրինակ, եթե վիրտուալ մեքենան որոշակի ժամանակ սկսում է աշխատանքի հետ կապված խնդիրներ ունենալ, կարող եք համեմատել CPU Ready արժեքի միջակայքերը սերվերի ընդհանուր բեռնվածության հետ, որտեղ աշխատում է այս VM-ը, և միջոցներ ձեռնարկել բեռնվածությունը նվազեցնելու համար (եթե DRS ձախողվում է):

Ready-ը, ի տարբերություն Readiness-ի, ցուցադրվում է ոչ թե տոկոսներով, այլ միլիվայրկյաններով։ Սա Sumation տիպի հաշվիչ է, այսինքն՝ ցույց է տալիս, թե որքան ժամանակ է եղել VM միջուկը չափման ժամանակահատվածում Ready վիճակում։ Դուք կարող եք այս արժեքը վերածել տոկոսի՝ օգտագործելով պարզ բանաձևը.

(CPU պատրաստի ամփոփման արժեք / (գծապատկերի լռելյայն թարմացման միջակայքը վայրկյաններով * 1000)) * 100 = CPU պատրաստ %

Օրինակ, ստորև բերված գրաֆիկում VM-ի համար գագաթնակետային Ready արժեքը ամբողջ վիրտուալ մեքենայի համար կլինի հետևյալը.

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

Պատրաստի տոկոսը հաշվարկելիս պետք է ուշադրություն դարձնել երկու կետի.

  • Ամբողջ VM-ի համար Ready արժեքը միջուկների միջև Ready-ի գումարն է:
  • Չափման միջակայքը. Իրական ժամանակի համար դա 20 վայրկյան է, իսկ, օրինակ, ամենօրյա գծապատկերներում՝ 300 վայրկյան։

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

Եկեք հաշվարկենք Ready-ը ստորև բերված գրաֆիկի տվյալների հիման վրա: (324474/(20*1000))*100 = 1622% ամբողջ VM-ի համար: Եթե ​​նայեք միջուկներին, այնքան էլ սարսափելի չէ՝ 1622 թ/64 = 25% մեկ միջուկի համար: Այս դեպքում բռնումը բավականին հեշտ է նկատել. Ready արժեքը անիրատեսական է: Բայց եթե մենք խոսում ենք 10-20% ամբողջ VM-ի համար մի քանի միջուկներով, ապա յուրաքանչյուր միջուկի համար արժեքը կարող է լինել նորմալ միջակայքում:

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

Ինչ անել? Ready բարձր արժեքը ցույց է տալիս, որ սերվերը չունի բավարար պրոցեսորային ռեսուրսներ վիրտուալ մեքենաների բնականոն աշխատանքի համար: Նման իրավիճակում մնում է նվազեցնել պրոցեսորի կողմից գերաբաժանորդագրումը (vCPU:pCPU): Ակնհայտ է, որ դրան կարելի է հասնել՝ նվազեցնելով առկա VM-ների պարամետրերը կամ VM-ների մի մասը տեղափոխելով այլ սերվերներ:

Co-stop

Ինչպե՞ս վերլուծել: Այս հաշվիչը նույնպես Գումարի տիպի է և փոխարկվում է տոկոսների այնպես, ինչպես Ready:

(CPU co-stop գումարման արժեք / (գծապատկերի լռելյայն թարմացման միջակայքը վայրկյաններով * 1000)) * 100 = CPU co-stop %

Այստեղ դուք նույնպես պետք է ուշադրություն դարձնեք VM-ի միջուկների քանակին և չափման միջակայքին:
Costop վիճակում միջուկը օգտակար աշխատանք չի կատարում։ VM-ի չափի և սերվերի վրա նորմալ բեռնվածության ճիշտ ընտրության դեպքում «co-stop» հաշվիչը պետք է մոտ լինի զրոյին:

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր
Այս դեպքում ծանրաբեռնվածությունը ակնհայտորեն աննորմալ է :)

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

Բացի այդ, co-stop-ը կավելանա, եթե մեկ VM-ի ակտիվ միջուկները օգտագործեն շղթաներ մեկ ֆիզիկական սերվերի միջուկի վրա, որի գործառույթը միացված է հիպերտրադինգը: Այս իրավիճակը կարող է առաջանալ, օրինակ, եթե VM-ն ունի ավելի շատ միջուկներ, քան ֆիզիկապես հասանելի է սերվերում, որտեղ այն աշխատում է, կամ եթե «preferHT» պարամետրը միացված է VM-ի համար: Դուք կարող եք կարդալ այս պարամետրի մասին այստեղ.

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

Մի ավելացրեք միջուկներ ռեզերվում, դա կարող է աշխատանքի հետ կապված խնդիրներ առաջացնել ոչ միայն բուն VM-ի, այլև սերվերի նրա հարևանների համար:

Այլ օգտակար CPU չափումներ

Վազում – որքան ժամանակ (մս) չափման ժամանակահատվածում vCPU-ն գտնվել է RUN վիճակում, այսինքն՝ իրականում օգտակար աշխատանք է կատարել:

պարապ – որքան ժամանակ (մս) է եղել vCPU-ն չափման ժամանակահատվածում անգործության վիճակում: Idle-ի բարձր արժեքները խնդիր չեն, vCPU-ն պարզապես «անելու բան չուներ»:

Սպասեք: – որքան ժամանակ (մս) է եղել vCPU-ն չափման ժամանակահատվածում սպասման վիճակում: Քանի որ IDLE-ն ներառված է այս հաշվիչում, սպասման բարձր արժեքները նույնպես խնդիր չեն ցույց տալիս: Բայց եթե Wait IDLE-ը ցածր է, երբ սպասումը բարձր է, դա նշանակում է, որ VM-ն սպասում էր I/O գործողությունների ավարտին, և դա, իր հերթին, կարող է ցույց տալ խնդիր կոշտ սկավառակի կամ VM-ի ցանկացած վիրտուալ սարքի աշխատանքի հետ:

Առավելագույնը սահմանափակ է – որքան ժամանակ (մս) չափման ժամանակահատվածում vCPU-ն եղել է պատրաստ վիճակում՝ պայմանավորված ռեսուրսների սահմանված սահմանաչափով: Եթե ​​կատարումը անհասկանալիորեն ցածր է, ապա օգտակար է ստուգել այս հաշվիչի արժեքը և պրոցեսորի սահմանաչափը VM-ի կարգավորումներում: VM-ները իսկապես կարող են սահմաններ ունենալ, որոնց մասին դուք տեղյակ չեք: Օրինակ, դա տեղի է ունենում, երբ VM-ը կլոնավորվել է կաղապարից, որի վրա դրվել է CPU-ի սահմանաչափը:

Փոխանակում սպասել – որքան ժամանակ է vCPU-ն սպասել չափման ժամանակահատվածում VMkernel Swap-ով գործողության: Եթե ​​այս հաշվիչի արժեքները զրոյից բարձր են, ապա VM-ն միանշանակ ունի աշխատանքի հետ կապված խնդիրներ: SWAP-ի մասին ավելին կխոսենք RAM հաշվիչների մասին հոդվածում:

ESXTOP

Եթե ​​vCenter-ում կատարողականի հաշվիչները լավ են պատմական տվյալները վերլուծելու համար, ապա խնդրի գործառնական վերլուծությունը ավելի լավ է անել ESXTOP-ում: Այստեղ բոլոր արժեքները ներկայացված են պատրաստի տեսքով (ոչինչ թարգմանելու կարիք չկա), իսկ նվազագույն չափման ժամկետը 2 վայրկյան է։
CPU-ի համար ESXTOP էկրանը կանչվում է «c» ստեղնով և ունի հետևյալ տեսքը.

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

Հարմարության համար կարող եք թողնել միայն վիրտուալ մեքենայի գործընթացները՝ սեղմելով Shift-V:
Առանձին VM միջուկների չափումները դիտելու համար սեղմեք «e» և մուտքագրեք հետաքրքրություն ներկայացնող VM-ի GID-ը (30919 ստորև ներկայացված սքրինշոթում).

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

Թույլ տվեք համառոտ անցնել լռելյայն ներկայացված սյունակներին։ Լրացուցիչ սյունակներ կարող են ավելացվել՝ սեղմելով «f»:

NWLD (Աշխարհների թիվը) - խմբում գործընթացների քանակը: Խումբը ընդլայնելու և յուրաքանչյուր գործընթացի համար չափումներ տեսնելու համար (օրինակ՝ բազմամիջուկ VM-ի յուրաքանչյուր միջուկի համար), սեղմեք «e»: Եթե ​​խմբում կա մեկից ավելի գործընթաց, ապա խմբի համար մետրային արժեքները հավասար են առանձին գործընթացների չափումների գումարին:

ՕԳՏԱԳՈՐԾՎԱԾ – քանի սերվերի պրոցեսորի ցիկլ է օգտագործվում գործընթացի կամ գործընթացների խմբի կողմից:

RUN – որքան ժամանակ է եղել չափման ժամանակահատվածում գործընթացը RUN վիճակում, այսինքն. օգտակար աշխատանք է կատարել. Այն տարբերվում է %USED-ից նրանով, որ հաշվի չի առնում հիպերթելավորումը, հաճախականության մասշտաբը և համակարգի առաջադրանքների վրա ծախսված ժամանակը (%SYS):

%SYS – Համակարգի առաջադրանքների վրա ծախսված ժամանակը, օրինակ՝ ընդհատումների մշակում, մուտք/ելք, ցանցի շահագործում և այլն: Արժեքը կարող է բարձր լինել, եթե VM-ն ունի մեծ I/O:

%OVRLP – որքա՞ն ժամանակ է ծախսել ֆիզիկական միջուկը, որի վրա աշխատում է VM գործընթացը, այլ գործընթացների առաջադրանքների վրա:

Այս ցուցանիշները միմյանց հետ կապված են հետևյալ կերպ.

%USED = %RUN + %SYS - %OVRLP:

Սովորաբար %USED չափիչն ավելի տեղեկատվական է:

ՍՊԱՍԵԼ – որքան ժամանակ է եղել չափման ժամանակահատվածում գործընթացը սպասման վիճակում: Միացնում է IDLE-ն:

%ՊԱՐՈՒՆ – որքա՞ն ժամանակ է եղել չափման ժամանակաշրջանում գործընթացը անգործուն վիճակում:

%SWPWT – որքան ժամանակ է vCPU-ն սպասել չափման ժամանակահատվածում VMkernel Swap-ով գործողության:

%VMWAIT – որքա՞ն ժամանակ է եղել չափման ժամանակահատվածում vCPU-ն իրադարձության սպասման վիճակում (սովորաբար I/O): vCenter-ում նմանատիպ հաշվիչ չկա: Բարձր արժեքները ցույց են տալիս VM-ում I/O-ի հետ կապված խնդիրներ:

%WAIT = %VMWAIT + %IDLE + %SWPWT:

Եթե ​​VM-ը չի օգտագործում VMkernel Swap-ը, ապա աշխատանքի հետ կապված խնդիրները վերլուծելիս խորհուրդ է տրվում նայել %VMWAIT-ին, քանի որ այս ցուցանիշը հաշվի չի առնում այն ​​ժամանակը, երբ VM-ն ոչինչ չէր անում (%IDLE):

%RDY – որքան ժամանակ է եղել չափման ժամանակահատվածում գործընթացը պատրաստ վիճակում:

%CSTP - չափման ժամանակահատվածում որքան ժամանակ է եղել գործընթացը ծախսային վիճակում:

%MLMTD – որքան ժամանակ է եղել չափման ժամանակահատվածում vCPU-ն պատրաստ վիճակում՝ պայմանավորված ռեսուրսների սահմանված սահմանաչափով:

%WAIT + %RDY + %CSTP + %RUN = 100% – VM միջուկը միշտ գտնվում է այս չորս վիճակներից մեկում:

CPU հիպերվիզորի վրա

vCenter-ն ունի նաև պրոցեսորի աշխատանքի հաշվիչներ հիպերվիզորի համար, բայց դրանք ոչ մի հետաքրքիր բան չեն. դրանք պարզապես սերվերի բոլոր VM-ների հաշվիչների գումարն են:
Սերվերում պրոցեսորի կարգավիճակը դիտելու ամենահարմար միջոցը Ամփոփում ներդիրում է՝

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

Սերվերի, ինչպես նաև վիրտուալ մեքենայի համար կա ստանդարտ ահազանգ.

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

Երբ սերվերի պրոցեսորի ծանրաբեռնվածությունը մեծ է, դրա վրա աշխատող VM-ները սկսում են աշխատանքի հետ կապված խնդիրներ ունենալ:

ESXTOP-ում սերվերի պրոցեսորի բեռնվածության տվյալները ներկայացված են էկրանի վերևում: Ի լրումն ստանդարտ պրոցեսորի բեռնվածության, որը հիպերվիզորների համար այնքան էլ տեղեկատվական չէ, կան ևս երեք չափումներ.

CORE UTIL (%) - ֆիզիկական սերվերի միջուկի բեռնում: Այս հաշվիչը ցույց է տալիս, թե որքան ժամանակ է միջուկը կատարել աշխատանքը չափման ժամանակահատվածում:

PCPU UTIL (%) – եթե Hyper-threading-ը միացված է, ապա յուրաքանչյուր ֆիզիկական միջուկում կա երկու շարանը (PCPU): Այս ցուցանիշը ցույց է տալիս, թե որքան ժամանակ է պահանջվել յուրաքանչյուր շղթայի աշխատանքը ավարտելու համար:

PCPU ՕԳՏԱԳՈՐԾՎԱԾ (%) – նույնը, ինչ PCPU UTIL (%), բայց հաշվի է առնում հաճախականության մասշտաբը (կամ նվազեցնելով հիմնական հաճախականությունը էներգախնայողության նպատակներով, կամ մեծացնելով հիմնական հաճախականությունը Turbo Boost տեխնոլոգիայի շնորհիվ) և հիպերթրեյդինգը:

PCPU_USED% = PCPU_UTIL% * արդյունավետ հիմնական հաճախականություն / անվանական հիմնական հաճախականություն:

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր
Այս սքրինշոթում որոշ միջուկների համար Turbo Boost-ի շնորհիվ USED արժեքը 100%-ից ավելի է, քանի որ հիմնական հաճախականությունը ավելի բարձր է, քան անվանականը:

Մի քանի խոսք այն մասին, թե ինչպես է հաշվի առնվում հիպերթելինգը։ Եթե ​​գործընթացները կատարվում են ժամանակի 100%-ով սերվերի ֆիզիկական միջուկի երկու թելերի վրա, մինչդեռ միջուկը գործում է անվանական հաճախականությամբ, ապա.

  • CORE UTIL միջուկի համար կլինի 100%,
  • PCPU UTIL երկու թելերի համար կլինի 100%,
  • Երկու թելերի համար օգտագործվող PCPU-ն կկազմի 50%:

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

ESXTOP-ն ունի նաև էկրան՝ սերվերի պրոցեսորի էներգիայի սպառման պարամետրերով: Այստեղ դուք կարող եք տեսնել, թե արդյոք սերվերն օգտագործում է էներգախնայողության տեխնոլոգիաներ՝ C-states և P-states: Զանգված է «p» ստեղնով.

Վիրտուալ մեքենայի աշխատանքի վերլուծություն VMware vSphere-ում: Մաս 1. պրոցեսոր

CPU-ի աշխատանքի ընդհանուր խնդիրներ

Վերջապես, ես կանդրադառնամ VM CPU-ի աշխատանքի հետ կապված խնդիրների բնորոշ պատճառներին և կարճ խորհուրդներ կտամ դրանք լուծելու համար.

Հիմնական ժամացույցի արագությունը բավարար չէ: Եթե ​​հնարավոր չէ թարմացնել ձեր VM-ն ավելի հզոր միջուկների, կարող եք փորձել փոխել էներգիայի կարգավորումները՝ Turbo Boost-ն ավելի արդյունավետ աշխատելու համար:

VM-ի սխալ չափագրում (չափազանց շատ/քիչ միջուկներ): Եթե ​​տեղադրեք մի քանի միջուկներ, VM-ի վրա պրոցեսորի մեծ բեռ կլինի: Եթե ​​շատ կա, բռնեք բարձր համակցված կանգառ:

Սերվերի վրա պրոցեսորի մեծ գերբաժանորդագրում: Եթե ​​VM-ն ունի բարձր Ready, նվազեցրեք պրոցեսորի գերբաժանորդագրումը:

Սխալ NUMA տոպոլոգիա խոշոր VM-ների վրա: VM-ի կողմից տեսած NUMA տոպոլոգիան (vNUMA) պետք է համընկնի սերվերի NUMA տոպոլոգիայի հետ (pNUMA): Այս խնդրի ախտորոշումը և հնարավոր լուծումները գրված են, օրինակ, գրքում «VMware vSphere 6.5 Host Resources Deep Dive». Եթե ​​դուք չեք ցանկանում ավելի խորանալ, և դուք չունեք լիցենզավորման սահմանափակումներ VM-ում տեղադրված ՕՀ-ի վրա, ապա VM-ում ստեղծեք բազմաթիվ վիրտուալ վարդակներ՝ մեկ միջուկ: Շատ բան չես կորցնի :)

Ինձ համար այսքանը CPU-ի մասին է: Հարցեր տալ. Հաջորդ մասում ես կխոսեմ RAM-ի մասին:

Օգտակար հղումներhttp://virtual-red-dot.info/vm-cpu-counters-vsphere/
https://kb.vmware.com/kb/1017926
http://www.yellow-bricks.com/2012/07/17/why-is-wait-so-high/
https://communities.vmware.com/docs/DOC-9279
https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/performance/whats-new-vsphere65-perf.pdf
https://pages.rubrik.com/host-resources-deep-dive_request.html

Source: www.habr.com

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