diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2017-12-15 07:49:58 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-15 07:49:58 -0800 |
commit | 5adc6b42c7569b72e23795c653b3d09965ee81ba (patch) | |
tree | 454ee2dc6ea317d28bbba1bb3c1a9cbea4890704 /roles/openshift_logging_elasticsearch/tasks/restart_cluster.yml | |
parent | 8190c1c8e4f300267405a0628e466167a09d8b59 (diff) | |
parent | 1b9c54b63f6d33b0a612e1a35503d2027745888d (diff) | |
download | openshift-5adc6b42c7569b72e23795c653b3d09965ee81ba.tar.gz openshift-5adc6b42c7569b72e23795c653b3d09965ee81ba.tar.bz2 openshift-5adc6b42c7569b72e23795c653b3d09965ee81ba.tar.xz openshift-5adc6b42c7569b72e23795c653b3d09965ee81ba.zip |
Merge pull request #6379 from ewolinetz/disable_config_trigger_logging
Automatic merge from submit-queue.
Disable config trigger logging
Removes the default config trigger from the ES generated DC and adds a handler to roll out any updated ES node in a controlled, rolling manner
Addresses https://bugzilla.redhat.com/show_bug.cgi?id=1498989
Diffstat (limited to 'roles/openshift_logging_elasticsearch/tasks/restart_cluster.yml')
-rw-r--r-- | roles/openshift_logging_elasticsearch/tasks/restart_cluster.yml | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/roles/openshift_logging_elasticsearch/tasks/restart_cluster.yml b/roles/openshift_logging_elasticsearch/tasks/restart_cluster.yml new file mode 100644 index 000000000..4a32453e3 --- /dev/null +++ b/roles/openshift_logging_elasticsearch/tasks/restart_cluster.yml @@ -0,0 +1,35 @@ +--- +## get all pods for the cluster +- command: > + oc get pod -l component={{ _cluster_component }},provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[*].metadata.name} + register: _cluster_pods + +- name: "Disable shard balancing for logging-{{ _cluster_component }} cluster" + command: > + oc exec {{ _cluster_pods.stdout.split(' ')[0] }} -c elasticsearch -n {{ openshift_logging_elasticsearch_namespace }} -- {{ __es_local_curl }} -XPUT 'https://localhost:9200/_cluster/settings' -d '{ "transient": { "cluster.routing.allocation.enable" : "none" } }' + register: _disable_output + changed_when: "'\"acknowledged\":true' in _disable_output.stdout" + when: _cluster_pods.stdout_lines | count > 0 + +- command: > + oc get dc -l component={{ _cluster_component }},provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[*].metadata.name} + register: _cluster_dcs + +## restart the node if it's dc is in the list of nodes to restart? +- name: "Restart ES node {{ _es_node }}" + include_tasks: restart_es_node.yml + with_items: "{{ _restart_logging_nodes }}" + loop_control: + loop_var: _es_node + when: _es_node in _cluster_dcs.stdout + +## we may need a new first pod to run against -- fetch them all again +- command: > + oc get pod -l component={{ _cluster_component }},provider=openshift -n {{ openshift_logging_elasticsearch_namespace }} -o jsonpath={.items[*].metadata.name} + register: _cluster_pods + +- name: "Enable shard balancing for logging-{{ _cluster_component }} cluster" + command: > + oc exec {{ _cluster_pods.stdout.split(' ')[0] }} -c elasticsearch -n {{ openshift_logging_elasticsearch_namespace }} -- {{ __es_local_curl }} -XPUT 'https://localhost:9200/_cluster/settings' -d '{ "transient": { "cluster.routing.allocation.enable" : "all" } }' + register: _enable_output + changed_when: "'\"acknowledged\":true' in _enable_output.stdout" |