V tomto článku by som chcel hovoriť o vlastnostiach polí All Flash AccelStor pracujúcich s jednou z najpopulárnejších virtualizačných platforiem - VMware vSphere. Zamerajte sa najmä na tie parametre, ktoré vám pomôžu dosiahnuť maximálny efekt pri použití tak silného nástroja, akým je All Flash.
AccelStor NeoSapphire™ Všetky polia Flash sú
Celý proces nasadenia a následnej konfigurácie spoločnej prevádzky poľa AccelStor a virtualizačného systému VMware vSphere možno rozdeliť do niekoľkých etáp:
- Implementácia topológie pripojenia a konfigurácia siete SAN;
- Nastavenie všetkých Flash poľa;
- Konfigurácia hostiteľov ESXi;
- Nastavenie virtuálnych strojov.
Ako vzorový hardvér boli použité polia AccelStor NeoSapphire™ Fibre Channel a polia iSCSI. Základným softvérom je VMware vSphere 6.7U1.
Pred nasadením systémov popísaných v tomto článku sa dôrazne odporúča, aby ste si prečítali dokumentáciu od spoločnosti VMware týkajúcu sa problémov s výkonom (
Topológia pripojenia a konfigurácia siete SAN
Hlavnými komponentmi siete SAN sú HBA v hostiteľoch ESXi, prepínače SAN a uzly poľa. Typická topológia pre takúto sieť by vyzerala takto:
Termín prepínač sa tu vzťahuje na samostatný fyzický prepínač alebo sadu prepínačov (Fabric) a zariadenie zdieľané medzi rôznymi službami (VSAN v prípade Fibre Channel a VLAN v prípade iSCSI). Použitie dvoch nezávislých spínačov/látok odstráni možný bod zlyhania.
Priame pripojenie hostiteľov k poli, aj keď je podporované, sa dôrazne neodporúča. Výkon všetkých polí Flash je pomerne vysoký. A pre maximálnu rýchlosť musia byť použité všetky porty poľa. Preto je prítomnosť aspoň jedného prepínača medzi hostiteľmi a NeoSapphire™ povinná.
Prítomnosť dvoch portov na hostiteľskom HBA je tiež povinnou požiadavkou na dosiahnutie maximálneho výkonu a zabezpečenie odolnosti voči chybám.
Pri použití rozhrania Fibre Channel musí byť zónovanie nakonfigurované tak, aby sa eliminovali možné kolízie medzi iniciátormi a cieľmi. Zóny sú postavené na princípe „jeden iniciačný port – jeden alebo viac portov poľa“.
Ak používate pripojenie cez iSCSI v prípade použitia prepínača zdieľaného s inými službami, potom je nevyhnutné izolovať iSCSI prevádzku v rámci samostatnej VLAN. Dôrazne sa tiež odporúča povoliť podporu pre Jumbo Frames (MTU = 9000), aby sa zväčšila veľkosť paketov v sieti a tým sa znížilo množstvo režijných informácií počas prenosu. Je však potrebné pripomenúť, že pre správnu činnosť je potrebné zmeniť parameter MTU na všetkých sieťových komponentoch pozdĺž reťazca „iniciátor-prepínač-cieľ“.
Nastavenie všetkých Flash poľa
Pole sa dodáva zákazníkom s už vytvorenými skupinami
Pre pohodlie je tu funkcia na dávkové vytváranie niekoľkých zväzkov danej veľkosti naraz. Štandardne sa vytvárajú tenké zväzky, pretože to umožňuje efektívnejšie využitie dostupného úložného priestoru (vrátane podpory Space Reclamation). Pokiaľ ide o výkon, rozdiel medzi „tenkým“ a „hrubým“ objemom nepresahuje 1 %. Ak však chcete „vytlačiť všetku šťavu“ z poľa, vždy môžete previesť akýkoľvek „tenký“ objem na „hustý“. Malo by sa však pamätať na to, že takáto operácia je nezvratná.
Ďalej zostáva „publikovať“ vytvorené zväzky a nastaviť k nim prístupové práva od hostiteľov pomocou ACL (IP adresy pre iSCSI a WWPN pre FC) a fyzické oddelenie portmi polí. Pre modely iSCSI sa to robí vytvorením cieľa.
V prípade modelov FC sa publikovanie uskutočňuje vytvorením LUN pre každý port poľa.
Na urýchlenie procesu nastavenia je možné hostiteľov spojiť do skupín. Navyše, ak hostiteľ používa viacportový FC HBA (čo sa v praxi najčastejšie stáva), potom systém automaticky určí, že porty takéhoto HBA patria jednému hostiteľovi vďaka WWPN, ktoré sa líšia o jeden. Pre obe rozhrania je podporované aj dávkové vytváranie Target/LUN.
Dôležitou poznámkou pri používaní rozhrania iSCSI je vytvorenie viacerých cieľov pre zväzky naraz, aby sa zvýšil výkon, pretože front na cieli nemožno zmeniť a v skutočnosti bude prekážkou.
Konfigurácia hostiteľov ESXi
Na strane hostiteľa ESXi sa základná konfigurácia vykonáva podľa úplne očakávaného scenára. Postup pripojenia iSCSI:
- Pridať softvérový adaptér iSCSI (nevyžaduje sa, ak už bol pridaný alebo ak používate hardvérový adaptér iSCSI);
- Vytvorenie prepínača vSwitch, cez ktorý bude prechádzať prevádzka iSCSI, a pridanie fyzického uplinku a VMkernal k nemu;
- Pridanie adries polí do Dynamického zisťovania;
- Vytvorenie dátového úložiska
Niektoré dôležité poznámky:
- Vo všeobecnom prípade, samozrejme, môžete použiť existujúci vSwitch, ale v prípade samostatného vSwitch bude správa hostiteľských nastavení oveľa jednoduchšia.
- Aby sa predišlo problémom s výkonom, je potrebné oddeliť správu a prevádzku iSCSI na samostatné fyzické linky a/alebo siete VLAN.
- IP adresy VMkernal a zodpovedajúce porty poľa All Flash musia byť v rovnakej podsieti, opäť kvôli problémom s výkonom.
- Na zabezpečenie odolnosti voči chybám podľa pravidiel VMware musí mať vSwitch aspoň dva fyzické uplinky
- Ak používate rámy Jumbo Frame, musíte zmeniť MTU vSwitch aj VMkernal
- Bolo by užitočné pripomenúť, že podľa odporúčaní VMware pre fyzické adaptéry, ktoré budú použité na prácu s iSCSI prevádzkou, je potrebné nakonfigurovať Teaming a Failover. Najmä každý VMkernal musí fungovať len cez jeden uplink, druhý uplink musí byť prepnutý do nepoužívaného režimu. Pre odolnosť voči chybám musíte pridať dva VMkernals, z ktorých každý bude fungovať prostredníctvom vlastného uplinku.
Adaptér VMkernel (vmk#)
Fyzický sieťový adaptér (vmnic#)
vmk1 (Storage01)
Aktívne adaptéry
vmnic2
Nepoužité adaptéry
vmnic3
vmk2 (Storage02)
Aktívne adaptéry
vmnic3
Nepoužité adaptéry
vmnic2
Na pripojenie cez Fibre Channel nie sú potrebné žiadne predbežné kroky. Okamžite môžete vytvoriť úložisko údajov.
Po vytvorení Datastore sa musíte uistiť, že zásada Round Robin pre cesty k cieľu/LUN sa používa ako najvýkonnejšia.
Nastavenia VMware štandardne zabezpečujú použitie tejto politiky podľa schémy: 1000 1000 požiadaviek cez prvú cestu, ďalších 1 XNUMX požiadaviek cez druhú cestu atď. Takáto interakcia medzi hostiteľom a poľom dvoch ovládačov bude nevyvážená. Preto odporúčame nastaviť zásadu Round Robin = XNUMX parameter cez Esxcli/PowerCLI.
Parametre
Pre Esxcli:
- Zoznam dostupných LUN
esxcli storage NMP zoznam zariadení
- Kopírovať názov zariadenia
- Zmena zásad Round Robin
esxcli storage nmp psp roundrobin deviceconfig set —type=iops —iops=1 —device=“Device_ID”
Väčšina moderných aplikácií je navrhnutá na výmenu veľkých dátových paketov s cieľom maximalizovať využitie šírky pásma a znížiť zaťaženie procesora. ESXi preto štandardne vydáva I/O požiadavky na úložné zariadenie v kusoch až do 32767 kB. V niektorých scenároch však bude výmena menších kusov produktívnejšia. Pre polia AccelStor sú to nasledujúce scenáre:
- Virtuálny počítač používa UEFI namiesto Legacy BIOS
- Používa vSphere Replication
Pre takéto scenáre sa odporúča zmeniť hodnotu parametra Disk.DiskMaxIOSize na 4096.
Pre iSCSI pripojenia sa odporúča zmeniť parameter Login Timeout na 30 (predvolená hodnota 5), aby sa zvýšila stabilita pripojenia a deaktivovalo sa oneskorenie DelayedAck pre potvrdenia preposlaných paketov. Obe možnosti sú v klientovi vSphere: Hostiteľ → Konfigurovať → Úložisko → Úložné adaptéry → Rozšírené možnosti pre adaptér iSCSI
Pomerne jemným bodom je počet zväzkov použitých pre úložisko údajov. Je zrejmé, že pre uľahčenie správy existuje túžba vytvoriť jeden veľký objem pre celý objem poľa. Prítomnosť niekoľkých zväzkov a teda aj úložiska údajov má priaznivý vplyv na celkový výkon (viac o frontoch nižšie). Preto odporúčame vytvoriť aspoň dva zväzky.
VMware ešte relatívne nedávno radil obmedziť počet virtuálnych strojov na jednom datastore, opäť s cieľom získať čo najvyšší výkon. Teraz, najmä s rozšírením VDI, však tento problém už nie je taký akútny. To však neruší dlhoročné pravidlo - distribuovať virtuálne stroje, ktoré vyžadujú intenzívne IO, cez rôzne dátové úložiská. Na určenie optimálneho počtu virtuálnych strojov na zväzok nie je nič lepšie ako
Nastavenie virtuálnych strojov
Pri nastavovaní virtuálnych strojov neexistujú žiadne špeciálne požiadavky, skôr sú celkom bežné:
- Použitie najvyššej možnej verzie VM (kompatibilita)
- Pri hustejšom umiestňovaní virtuálnych strojov, napríklad vo VDI, je opatrnejšie nastaviť veľkosť RAM (keďže štandardne sa pri štarte vytvorí stránkovací súbor veľkosti úmernej RAM, čo spotrebúva užitočnú kapacitu a má vplyv na záverečné vystúpenie)
- Použite najproduktívnejšie verzie adaptérov z hľadiska IO: sieťový typ VMXNET 3 a SCSI typ PVSCSI
- Použite Thick Provision Eager Zeroed typ disku pre maximálny výkon a Thin Provisioning pre maximálne využitie úložného priestoru
- Ak je to možné, obmedzte prevádzku počítačov, ktoré nie sú kritické I/O, pomocou funkcie Virtual Disk Limit
- Nezabudnite nainštalovať VMware Tools
Poznámky o frontoch
Front (alebo Outstanding I/Os) je počet vstupných/výstupných požiadaviek (príkazy SCSI), ktoré čakajú na spracovanie v akomkoľvek danom čase pre konkrétne zariadenie/aplikáciu. V prípade pretečenia frontu sa vydávajú chyby QFULL, čo v konečnom dôsledku vedie k zvýšeniu parametra latencie. Pri použití diskových (vretenových) úložných systémov teoreticky platí, že čím vyšší je front, tým vyšší je ich výkon. Nemali by ste to však zneužívať, pretože je ľahké naraziť na QFULL. V prípade All Flash systémov je na jednej strane všetko o niečo jednoduchšie: napokon pole má rádovo nižšie latencie, a preto väčšinou nie je potrebné samostatne regulovať veľkosť frontov. Ale na druhej strane, v niektorých scenároch použitia (silný skreslenie požiadaviek IO na konkrétne virtuálne stroje, testy na maximálny výkon atď.) je potrebné, ak nie zmeniť parametre front, tak aspoň pochopiť, aké ukazovatele možno dosiahnuť, a hlavné je, akým spôsobom.
Na samotnom poli AccelStor All Flash neexistujú žiadne obmedzenia vo vzťahu k objemom alebo I/O portom. V prípade potreby môže aj jeden zväzok prijať všetky prostriedky poľa. Jediné obmedzenie vo fronte je pre ciele iSCSI. Práve z tohto dôvodu bola vyššie naznačená potreba vytvorenia niekoľkých (ideálne do 8 kusov) cieľov pre každý zväzok na prekonanie tejto hranice. Zopakujme tiež, že polia AccelStor sú veľmi produktívne riešenia. Preto by ste mali používať všetky porty rozhrania systému, aby ste dosiahli maximálnu rýchlosť.
Na strane hostiteľa ESXi je situácia úplne iná. Samotný hostiteľ uplatňuje prax rovnakého prístupu k zdrojom pre všetkých účastníkov. Preto existujú samostatné IO fronty pre hosťujúci OS a HBA. Fronty do hosťujúceho OS sú kombinované z frontov na virtuálny adaptér SCSI a virtuálny disk:
Fronta na HBA závisí od konkrétneho typu/dodávateľa:
Konečný výkon virtuálneho počítača bude určený najnižším limitom hĺbky frontu spomedzi hostiteľských komponentov.
Vďaka týmto hodnotám vieme vyhodnotiť ukazovatele výkonu, ktoré môžeme v konkrétnej konfigurácii získať. Napríklad chceme poznať teoretický výkon virtuálneho stroja (bez viazania bloku) s latenciou 0.5 ms. Potom jeho IOPS = (1,000 XNUMX/latencia) * Vynikajúce I/O (limit hĺbky frontu)
príklady
Príklad 1
- Adaptér FC Emulex HBA
- Jeden VM na dátové úložisko
- Paravirtuálny SCSI adaptér VMware
Tu limit hĺbky fronty určuje Emulex HBA. Preto IOPS = (1000/0.5)*32 = 64 kB
Príklad 2
- Softvérový adaptér VMware iSCSI
- Jeden VM na dátové úložisko
- Paravirtuálny SCSI adaptér VMware
Tu je limit hĺbky frontu už určený Paravirtuálnym SCSI adaptérom. Preto IOPS = (1000/0.5)*64 = 128K
Najlepšie modely všetkých polí Flash AccelStor (napr.
Výsledkom je, že pri správnej konfigurácii všetkých opísaných komponentov virtuálneho dátového centra môžete dosiahnuť veľmi pôsobivé výsledky z hľadiska výkonu.
4K náhodné, 70 % čítanie/30 % zápis
V skutočnosti je skutočný svet oveľa zložitejší, než sa dá opísať jednoduchým vzorcom. Jeden hostiteľ vždy hosťuje viacero virtuálnych počítačov s rôznymi konfiguráciami a požiadavkami IO. A spracovanie I/O má na starosti hostiteľský procesor, ktorého výkon nie je nekonečný. Takže, aby ste odomkli celý potenciál toho istého
Zdroj: hab.com