PowerFlex: Genopbygning og genbalancering, der påvirker ydeevnen i frontend IO-workloads
Summary: Genopbygning og genbalancering, der påvirker frontend IO-workloaden.
Symptoms
Når en genopbygning eller rebalancering begynder, kan frontend-applikationens IOPS falde drastisk.
- En SDS-node eller -disk mislykkedes, hvilket har fået en genopbygning til at begynde.
- Der er føjet en SDS-node eller -disk til klyngen eller storagepuljen, hvilket har påbegyndt en genbalancering.
- En SDS-node eller -diske fjernes fra klyngen eller lagerpuljen, hvilket får en genbalancering til at begynde.
- Frontend IOPS rulles drastisk ned (op til 50 % eller mere af den forventede IOPS), når genopbygningen/rebalanceringen starter.
Påvirkning
Hvis hastigheden og ressourcerne til en genopbygning eller rebalancering øges, reduceres den tid, det tager at oprette de to fulde kopier af hver blok, som ScaleIO har brug for. SDC'ers gennemstrømning og IOPS kan dog blive påvirket, og slutbrugeren kan bemærke applikationslangsomhed eller muligvis endda IO-fejl. Den effekt, disse ændringer kan have på frontend IO, skal forstås, før ændringen foretages.
Cause
Genopbygning og rebalancering bruger den samme disk og muligvis netværksressourcer, som SDC'erne bruger, og tager dermed båndbredde i både disk og netværk. Genopbygning og rebalancering bruger også to SDS-tråde som standard, defineret som parallelitetsparameteren.
SDS oprettede disse tråde og tager ekstra CPU og hukommelse, hvis stødt over standard på to tråde. Dette får SDS til at bruge mere CPU-tid og ressourcer på genopbygning/rebalance, end det ville, hvilket medfører, at der bruges mindre CPU-tid og ressourcer på at betjene frontend-IO'er.
Resolution
Der er et par ting at tjekke her. Genopbygningen og rebalanceringen kan påvirkes af følgende parametre:
1 – SDS-netværksbegrænsning Denne grænse for, hvordan I/O hvert SDS bruger til de forskellige angivne kategorier. Standard i alle kategorier er "Ubegrænset".
A-Fra scli:
scli --set_sds_network_limits (--protection_domain_id | --protection_domain_name ) [--rebuild_limit ] [--rebalance_limit ][--overall_limit ] [--i_am_sure] Example, setting the rebuild limit to 100 MB/s: scli --set_sds_network_limits --protection_domain_name pd1 --rebuild_limit 100
B-Fra brugergrænseflade:
Gå til listen over beskyttelsesdomæner, vælg det pågældende beskyttelsesdomæne, og vælg "Netværksbegrænsning" på listen Rediger.

2 – Storagepuljens I/O-prioritet Denne indstilling er pr. storagepulje og ændrer IO-prioriteten for genopbygning eller rebalancering og påvirker systemets ydeevne. Standardindstillingen er "Begræns samtidig IO" indstillet til 1 for både genopbygning og genbalancering.
A-Fra scli:
scli --set_rebuild_policy ((( protection_domain_id | --protection_domain_name ) --storage_pool_name ) | --storage_pool_id ) --policy [Options][--i_am_sure] scli --set_rebalance_policy ((( protection_domain_id | --protection_domain_name ) --storage_pool_name ) | --storage_pool_id ) --policy [Options][--i_am_sure]
POLITIKKEN kan være en af: no_limit, limit_concurrent_io, favor_application_io, dynamic_bandwidth_throttling
Hvis du bruger andet end "no_limit" til politikken, er det nødvendigt at bruge kommandoen OPTIONS. Se PowerFlex-dokumentationen for at få flere referencer til disse indstillinger.
B-Fra brugergrænseflade: Gå til listen Storage Pool, vælg den pågældende Storage Pool, og vælg "I/O-prioritet" på ændringslisten.

3- Samtidige genopbygnings- og rebalanceaktiviteter. Standardindstillingen her er 2.
A- Denne parameter kan kun ændres fra scli:
scli --set_rebuild_rebalance_parallelism (((--protection_domain_id | --protection_domain_name ) --storage_pool_name ) | --storage_pool_id ) (--limit ) Example, setting the limit to 5: scli --set_rebuild_rebalance_parallelism --protection_domain_name pd1 --storage_pool_name HDD_POOL --limit 5
BEMÆRK: Hvis du bruger parameteren storage_pool_id i kommandoen, behøver du ikke også at angive beskyttelsesdomæne-id et eller -navnet og navnet på lagerpuljen. Medmindre andet er angivet af ScaleIO-understøttelse, skal denne parameter være på 2. Forøgelse af denne indstilling vil påvirke frontend IO negativt hurtigere end netværksbegrænsningen og I / O-prioritetsindstillingerne.