PowerFlex: Opnieuw opbouwen en opnieuw balanceren heeft invloed op de front-end IO workloadprestaties
Summary: Opnieuw opbouwen en balanceren van invloed op front-end IO-workload.
Symptoms
Wanneer een heropbouw of herverdeling begint, kan de IOPS van de front-endapplicatie drastisch dalen.
- Een SDS-knooppunt of schijf is mislukt, waardoor een heropbouw kan beginnen.
- Er is een SDS-knooppunt of schijf toegevoegd aan het cluster of de storagegroep, waardoor een herverdeling kan beginnen.
- Een of meer SDS-knooppunten worden verwijderd uit het cluster of de storagegroep, waardoor een herverdeling begint.
- Front-end IOP's drastisch verlaagd (tot 50% of meer van de verwachte IOP's) nadat het opnieuw samenstellen/opnieuw balanceren begint.
Impact
Als verhogingen van de snelheid en resources van een heropbouw of herverdeling worden uitgevoerd, vermindert dit de tijd die nodig is om de twee volledige kopieën van elk blok te maken die ScaleIO nodig heeft. De doorvoer en IOPS van SDC's kunnen echter worden beïnvloed en de eindgebruiker kan merken dat applicaties traag zijn of mogelijk zelfs IO-fouten optreden. Het effect dat deze wijzigingen kunnen hebben op frontend IO moet worden begrepen voordat de wijziging wordt aangebracht.
Cause
Opnieuw opbouwen en opnieuw balanceren gebruiken dezelfde schijf- en mogelijk netwerkbronnen die de SDC's gebruiken, waardoor bandbreedte in zowel schijf als netwerk wordt gebruikt. Opnieuw opbouwen en opnieuw balanceren gebruiken ook standaard twee SDS-threads, gedefinieerd als de parameter parallellisme.
De SDS heeft deze threads gemaakt en neemt extra CPU en geheugen in beslag als deze boven de standaardwaarde van twee threads wordt gestoten. Dit zorgt ervoor dat de SDS meer CPU-tijd en -resources besteedt aan het opnieuw samenstellen/opnieuw balanceren dan het geval zou zijn, waardoor er minder CPU-tijd en -resources worden besteed aan het leveren van front-end IO's.
Resolution
Er zijn een paar dingen die u hier moet controleren. Het opnieuw opbouwen en opnieuw balanceren kan worden beïnvloed door de volgende parameters:
1- SDS-netwerkbeperking Deze beperking voor het gebruik van I/O door elke SDS voor de verschillende vermelde categorieën. De standaardinstelling in alle categorieën is 'Onbeperkt'.
A-Van 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-From-UI:
Ga naar de lijst met beschermingsdomeinen, selecteer het betreffende beschermingsdomein en kies "Network Throttling" in de lijst Wijzigen.

2- I/O-prioriteit storagepool Deze instelling geldt per storagepool en wijzigt de IO-prioriteit voor opnieuw opbouwen of opnieuw balanceren en heeft invloed op de systeemprestaties. De standaardinstelling is "Limit Concurrent IO" ingesteld op 1 voor zowel opnieuw samenstellen als opnieuw balanceren.
A-Van 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]
Het BELEID kan een van de volgende zijn: no_limit, limit_concurrent_io, favor_application_io, dynamic_bandwidth_throttling
Als u iets anders dan "no_limit" gebruikt voor het beleid, is het gebruik van de opdracht OPTIONS vereist. Zie de PowerFlex-documentatie voor meer informatie over deze instellingen.
B-From-UI: Ga naar de lijst Storage Pool, selecteer de betreffende storagepool en kies "I/O Priority" in de wijzigingslijst.

3- Gelijktijdige activiteiten voor opnieuw opbouwen en opnieuw balanceren. De standaardinstelling hier is 2.
A- Deze parameter kan alleen worden gewijzigd vanuit 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
OPMERKING: Als u de parameter storage_pool_id in de opdracht gebruikt, hoeft u niet ook de id of naam van het beschermingsdomein en de naam van de storagepool op te geven. Laat deze parameter op 2 staan, tenzij anders aangegeven door ScaleIO-ondersteuning. Het verhogen van deze instelling zal de front-end IO sneller nadelig beïnvloeden dan de instellingen voor netwerkbeperking en I/O-prioriteit.