From 974a3c3bf5b71cd6b07c1b4b51044bc535ff4456 Mon Sep 17 00:00:00 2001 From: baigk Date: Wed, 5 Aug 2015 01:31:07 -0400 Subject: support deployment openstack juno with ansible for compass in ubuntu 14.04 JIRA: COMPASS-4 Change-Id: I7adc565325c2a0cbf878b2aea022b31d118748dd Signed-off-by: baigk --- deploy/adapters/ansible/roles/mq/tasks/main.yml | 6 +++ .../adapters/ansible/roles/mq/tasks/rabbitmq.yml | 45 ++++++++++++++++++++++ .../ansible/roles/mq/tasks/rabbitmq_cluster.yml | 27 +++++++++++++ .../ansible/roles/mq/templates/.erlang.cookie | 1 + .../ansible/roles/mq/templates/rabbitmq-env.conf | 1 + deploy/adapters/ansible/roles/mq/vars/Debian.yml | 6 +++ 6 files changed, 86 insertions(+) create mode 100644 deploy/adapters/ansible/roles/mq/tasks/main.yml create mode 100644 deploy/adapters/ansible/roles/mq/tasks/rabbitmq.yml create mode 100644 deploy/adapters/ansible/roles/mq/tasks/rabbitmq_cluster.yml create mode 100644 deploy/adapters/ansible/roles/mq/templates/.erlang.cookie create mode 100644 deploy/adapters/ansible/roles/mq/templates/rabbitmq-env.conf create mode 100644 deploy/adapters/ansible/roles/mq/vars/Debian.yml (limited to 'deploy/adapters/ansible/roles/mq') diff --git a/deploy/adapters/ansible/roles/mq/tasks/main.yml b/deploy/adapters/ansible/roles/mq/tasks/main.yml new file mode 100644 index 00000000..47e41a25 --- /dev/null +++ b/deploy/adapters/ansible/roles/mq/tasks/main.yml @@ -0,0 +1,6 @@ +--- +- include_vars: "{{ ansible_os_family }}.yml" +- include: rabbitmq.yml + +#- include: rabbitmq_cluster.yml +# when: HA_CLUSTER is defined diff --git a/deploy/adapters/ansible/roles/mq/tasks/rabbitmq.yml b/deploy/adapters/ansible/roles/mq/tasks/rabbitmq.yml new file mode 100644 index 00000000..9e574c18 --- /dev/null +++ b/deploy/adapters/ansible/roles/mq/tasks/rabbitmq.yml @@ -0,0 +1,45 @@ +--- +- name: create rabbitmq directory + file: path=/etc/rabbitmq state=directory mode=0755 + +- name: copy rabbitmq config file + template: src=rabbitmq-env.conf dest=/etc/rabbitmq/rabbitmq-env.conf mode=0755 + +- name: install rabbitmq-server + action: "{{ ansible_pkg_mgr }} name=rabbitmq-server state=present" + with_items: packages + +- name: stop rabbitmq-server + service: name=rabbitmq-server + state=stopped + +- name: update .erlang.cookie + template: src=.erlang.cookie dest=/var/lib/rabbitmq/.erlang.cookie + group=rabbitmq + owner=rabbitmq + mode=0400 + when: ERLANG_TOKEN is defined + +- name: start and enable rabbitmq-server + service: name=rabbitmq-server + state=started + enabled=yes + +- name: generate mq service list + shell: echo {{ item }} >> /opt/service + with_items: services + +- name: modify rabbitmq password + command: rabbitmqctl change_password guest {{ RABBIT_PASS }} + when: "RABBIT_USER is defined and RABBIT_USER == 'guest'" + ignore_errors: True + +- name: add rabbitmq user + command: rabbitmqctl add_user {{ RABBIT_USER }} {{ RABBIT_PASS }} + when: "RABBIT_USER is defined and RABBIT_USER != 'guest'" + ignore_errors: True + +- name: set rabbitmq user permission + command: rabbitmqctl set_permissions -p / {{ RABBIT_USER }} ".*" ".*" ".*" + when: "RABBIT_USER is defined and RABBIT_USER != 'guest'" + diff --git a/deploy/adapters/ansible/roles/mq/tasks/rabbitmq_cluster.yml b/deploy/adapters/ansible/roles/mq/tasks/rabbitmq_cluster.yml new file mode 100644 index 00000000..cb83a0c9 --- /dev/null +++ b/deploy/adapters/ansible/roles/mq/tasks/rabbitmq_cluster.yml @@ -0,0 +1,27 @@ +--- +- name: stop rabbitmq app + command: rabbitmqctl stop_app + when: HA_CLUSTER[inventory_hostname] != '' + +- name: rabbitmqctl reset + command: rabbitmqctl reset + when: HA_CLUSTER[inventory_hostname] != '' + +- name: stop rabbitmq + shell: rabbitmqctl stop + +- name: set detach + shell: rabbitmq-server -detached + +- name: join cluster + command: rabbitmqctl join_cluster rabbit@{{ item }} + when: item != inventory_hostname and HA_CLUSTER[item] == '' + with_items: + groups['controller'] + +- name: start rabbitmq app + command: rabbitmqctl start_app + +- name: set the HA policy + rabbitmq_policy: name=ha-all pattern='^(?!amq\.).*' tags="ha-mode=all" + diff --git a/deploy/adapters/ansible/roles/mq/templates/.erlang.cookie b/deploy/adapters/ansible/roles/mq/templates/.erlang.cookie new file mode 100644 index 00000000..cadcfaf3 --- /dev/null +++ b/deploy/adapters/ansible/roles/mq/templates/.erlang.cookie @@ -0,0 +1 @@ +{{ ERLANG_TOKEN }} diff --git a/deploy/adapters/ansible/roles/mq/templates/rabbitmq-env.conf b/deploy/adapters/ansible/roles/mq/templates/rabbitmq-env.conf new file mode 100644 index 00000000..6dd7349c --- /dev/null +++ b/deploy/adapters/ansible/roles/mq/templates/rabbitmq-env.conf @@ -0,0 +1 @@ +RABBITMQ_NODE_IP_ADDRESS={{ HA_VIP }} diff --git a/deploy/adapters/ansible/roles/mq/vars/Debian.yml b/deploy/adapters/ansible/roles/mq/vars/Debian.yml new file mode 100644 index 00000000..a9a9ac4f --- /dev/null +++ b/deploy/adapters/ansible/roles/mq/vars/Debian.yml @@ -0,0 +1,6 @@ +--- +packages: + - rabbitmq-server + +services: + - "rabbitmq-server" -- cgit 1.2.3-korg