fsalazarh opened a new pull request #66:
URL: https://github.com/apache/couchdb-helm/pull/66


   <!--
   Thank you for contributing to couchdb-helm. Before you submit this PR we'd 
like to
   make sure you are aware of the chart technical requirements and best 
practices:
   
   * 
https://github.com/helm/charts/blob/master/CONTRIBUTING.md#technical-requirements
   * https://github.com/helm/helm/tree/master/docs/chart_best_practices
   
   For a quick overview across what we will look at reviewing your PR, please 
read
   our review guidelines:
   
   * https://github.com/helm/charts/blob/master/REVIEW_GUIDELINES.md
   
   Following our best practices right from the start will accelerate the review 
process and
   help get your PR merged quicker.
   
   When updates to your PR are requested, please add new commits and do not 
squash the
   history. This will make it easier to identify new changes. The PR will be 
squashed
   anyways when it is merged. Thanks.
   
   Please make sure you test your changes before you push them.
   -->
   
   #### What this PR does / why we need it:
   
   In order to control shard distribution across CouchDB nodes is necessary 
tagging the nodes in the database `_nodes` with the "zone" attribute. 
https://docs.couchdb.org/en/stable/cluster/sharding.html#specifying-database-placement
   
   This PR add a `post-install hook` that create a Job that automate the 
tagging of "zone" attribute, obtaining the info from node labels of kubernetes 
and the pods allocated on each node. For more information of the procedure 
itself, please refer to 
https://github.com/caligrafix/couchdb-autoscaler-placement-manager/blob/main/src/scripts.py
   
   #### Which issue this PR fixes
   *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, 
will close that issue when PR gets merged)*
     - fixes #
   
   #### Special notes for your reviewer:
   
   We consider that the better way to achieve this is through a configuration 
file, but currently this solution meets our needs so it's useful. We use this 
post-install hook in combination with Cluster Autoscaler and Vertical Pod 
Autoscaler, so this components are responsible for not schedule the pods in 
other zones after killing them for some reason (e.g. after VPA assigns new 
requests and limits values). 
   
   #### Checklist
   [Place an '[x]' (no spaces) in all applicable fields. Please remove 
unrelated fields.
   - [x] Chart Version bumped
   - [x] e2e tests pass
   - [x] Variables are documented in the README.md
   - [x] Chart tgz added to /docs and index updated
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to