We need to ensure our cookbooks can still handle common operations (banning nodes, restarting services, etc) during and after our migration from Elastic -> OpenSearch. As noted in T391151, our current Elastic/OpenSearch cookbooks don't always meet our needs. The elasticsearch-python library dependencies in Spicerack can also affect other teams, see T390860 and this CR for examples.
Creating this ticket to:
- Examine existing cookbooks
- ban.py
- force-shard-allocation.py
- force-unfreeze.py
- reset-read-only.py
- restart-nginx.py
- rolling-operation.py
- Identify potential improvements (use other teams' OpenSearch cookbooks? Use python requests instead of ES/OS python libraries? Move the logic out of Spicerack completely?)
- Implement the improvements