aboutsummaryrefslogblamecommitdiffhomepage
path: root/tasks/rabbitmq_clustering.yml
blob: c595db0c4a6ca79f2eed24ea0fcf6204cfe4b37d (plain) (tree)
1
2
3
4
5
6
7
8
9
10
   
                                                   

                               
                                                    

                            


                                                      
                                                

                                                                                                                         




                                                                  
                                
                          
                                                     
 
                                                                               
                                  
                                                     
 
                                                        
                                               
                                                     
 
                                                   
                               
                                                     
 
                                                    
                            
                                                     
 
                                                      
                                                                  
                          
                                                     
 
                                                   
                                
                                                     
 
                                                  
                                                
                                                        
---
- name: rabbitmq_clustering | stopping rabbitmq app
  command: rabbitmqctl stop_app

- name: rabbitmq_clustering | resetting rabbitmq app
  command: rabbitmqctl reset

- name: rabbitmq_clustering | stopping rabbitmq-server
  service: name=rabbitmq-server state=stopped

- name: rabbitmq_clustering | copy erlang cookie
  template: src=erlang.cookie.j2 dest=/var/lib/rabbitmq/.erlang.cookie owner=rabbitmq group=rabbitmq mode=0400 backup=yes

- name: rabbitmq_clustering | restarting rabbitmq-server on master
  service: name=rabbitmq-server state=restarted
  when: inventory_hostname == "{{ rabbitmq_master }}"

- name: rabbitmq_clustering | starting rabbitmq app on master
  command: rabbitmqctl start_app
  register: cluster_master
  when: inventory_hostname == "{{ rabbitmq_master }}"

- name: rabbitmq_clustering | sending sigterm to any running rabbitmq processes
  shell: pkill -u rabbitmq || true
  when: inventory_hostname != "{{ rabbitmq_master }}"

- name: rabbitmq_clustering | restarting rabbitmq-server
  service: name=rabbitmq-server state=restarted
  when: inventory_hostname != "{{ rabbitmq_master }}"

- name: rabbitmq_clustering | stopping rabbitmq app
  command: rabbitmqctl stop_app
  when: inventory_hostname != "{{ rabbitmq_master }}"

- name: rabbitmq_clustering | resetting rabbitmq app
  command: rabbitmqctl reset
  when: inventory_hostname != "{{ rabbitmq_master }}"

- name: rabbitmq_clustering | joining rabbitmq cluster
  command: rabbitmqctl join_cluster 'rabbit@{{ rabbitmq_master }}'
  register: cluster_joined
  when: inventory_hostname != "{{ rabbitmq_master }}"

- name: rabbitmq_clustering | starting rabbitmq app
  command: rabbitmqctl start_app
  when: inventory_hostname != "{{ rabbitmq_master }}"

- name: rabbitmq_clustering | marking as clustered
  file: path=/etc/rabbitmq/clustered state=touch
  when: cluster_master.changed or cluster_joined.changed