From 065da65479888dcf5340a8d15d7d8a4cadce6264 Mon Sep 17 00:00:00 2001 From: QiLiang Date: Mon, 23 Nov 2015 15:22:28 +0800 Subject: compass4nfv support heat JIRA: COMPASS-52 Change-Id: I0cab3ba4d435b2b28eff9a1a73c3d829be731e3d Signed-off-by: QiLiang --- .../adapters/ansible/roles/heat/handlers/main.yml | 8 ++++++++ .../ansible/roles/heat/tasks/heat_config.yml | 9 +++++++++ .../ansible/roles/heat/tasks/heat_install.yml | 19 +++++++++++++++++++ deploy/adapters/ansible/roles/heat/tasks/main.yml | 14 ++++++++++++++ .../adapters/ansible/roles/heat/templates/heat.j2 | 22 ++++++++++++++++++++++ deploy/adapters/ansible/roles/heat/vars/Debian.yml | 12 ++++++++++++ deploy/adapters/ansible/roles/heat/vars/RedHat.yml | 5 +++++ deploy/adapters/ansible/roles/heat/vars/main.yml | 5 +++++ 8 files changed, 94 insertions(+) create mode 100644 deploy/adapters/ansible/roles/heat/handlers/main.yml create mode 100644 deploy/adapters/ansible/roles/heat/tasks/heat_config.yml create mode 100644 deploy/adapters/ansible/roles/heat/tasks/heat_install.yml create mode 100644 deploy/adapters/ansible/roles/heat/tasks/main.yml create mode 100644 deploy/adapters/ansible/roles/heat/templates/heat.j2 create mode 100644 deploy/adapters/ansible/roles/heat/vars/Debian.yml create mode 100644 deploy/adapters/ansible/roles/heat/vars/RedHat.yml create mode 100644 deploy/adapters/ansible/roles/heat/vars/main.yml (limited to 'deploy/adapters/ansible/roles/heat') diff --git a/deploy/adapters/ansible/roles/heat/handlers/main.yml b/deploy/adapters/ansible/roles/heat/handlers/main.yml new file mode 100644 index 00000000..74bcd10a --- /dev/null +++ b/deploy/adapters/ansible/roles/heat/handlers/main.yml @@ -0,0 +1,8 @@ +--- +- name: restart heat service + service: name={{ item }} state=restarted enabled=yes + with_items: services | union(services_noarch) + +- name: remove heat-sqlite-db + shell: rm /var/lib/heat/heat.sqlite || touch heat.sqlite.db.removed + diff --git a/deploy/adapters/ansible/roles/heat/tasks/heat_config.yml b/deploy/adapters/ansible/roles/heat/tasks/heat_config.yml new file mode 100644 index 00000000..739d1aae --- /dev/null +++ b/deploy/adapters/ansible/roles/heat/tasks/heat_config.yml @@ -0,0 +1,9 @@ +--- +- name: heat db sync + shell: su -s /bin/sh -c "heat-manage db_sync" heat + ignore_errors: True + notify: + - restart heat service + +- meta: flush_handlers + diff --git a/deploy/adapters/ansible/roles/heat/tasks/heat_install.yml b/deploy/adapters/ansible/roles/heat/tasks/heat_install.yml new file mode 100644 index 00000000..ab23f873 --- /dev/null +++ b/deploy/adapters/ansible/roles/heat/tasks/heat_install.yml @@ -0,0 +1,19 @@ +--- +- include_vars: "{{ ansible_os_family }}.yml" + +- name: install heat related packages + action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" + with_items: packages | union(packages_noarch) + +- name: generate heat service list + shell: echo {{ item }} >> /opt/service + with_items: services | union(services_noarch) + +- name: update heat conf + template: src=heat.j2 + dest=/etc/heat/heat.conf + backup=yes + notify: + - restart heat service + - remove heat-sqlite-db + diff --git a/deploy/adapters/ansible/roles/heat/tasks/main.yml b/deploy/adapters/ansible/roles/heat/tasks/main.yml new file mode 100644 index 00000000..cf259eb5 --- /dev/null +++ b/deploy/adapters/ansible/roles/heat/tasks/main.yml @@ -0,0 +1,14 @@ +--- +- include: heat_install.yml + tags: + - install + - heat_install + - heat + +- include: heat_config.yml + when: HA_CLUSTER is not defined or HA_CLUSTER[inventory_hostname] == '' + tags: + - config + - heat_config + - heat + diff --git a/deploy/adapters/ansible/roles/heat/templates/heat.j2 b/deploy/adapters/ansible/roles/heat/templates/heat.j2 new file mode 100644 index 00000000..67beb1ca --- /dev/null +++ b/deploy/adapters/ansible/roles/heat/templates/heat.j2 @@ -0,0 +1,22 @@ +[DEFAULT] +heat_metadata_server_url = http://{{ internal_vip.ip }}:8000 +heat_waitcondition_server_url = http://{{ internal_vip.ip }}:8000/v1/waitcondition +rpc_backend = rabbit +rabbit_host = {{ rabbit_host }} +rabbit_userid = {{ RABBIT_USER }} +rabbit_password = {{ RABBIT_PASS }} +log_dir = /var/log/heat + +[database] +connection = mysql://heat:{{ HEAT_DBPASS }}@{{ db_host }}/heat + +[ec2authtoken] +auth_uri = http://{{ internal_vip.ip }}:5000/v2.0 + +[keystone_authtoken] +auth_uri = http://{{ internal_vip.ip }}:5000/v2.0 +identity_uri = http://{{ internal_vip.ip }}:35357 +admin_tenant_name = service +admin_user = heat +admin_password = {{ HEAT_PASS }} + diff --git a/deploy/adapters/ansible/roles/heat/vars/Debian.yml b/deploy/adapters/ansible/roles/heat/vars/Debian.yml new file mode 100644 index 00000000..03787bcb --- /dev/null +++ b/deploy/adapters/ansible/roles/heat/vars/Debian.yml @@ -0,0 +1,12 @@ +--- +packages: + - heat-api + - heat-api-cfn + - heat-engine + - python-heatclient + +services: + - heat-api + - heat-api-cfn + - heat-engine + diff --git a/deploy/adapters/ansible/roles/heat/vars/RedHat.yml b/deploy/adapters/ansible/roles/heat/vars/RedHat.yml new file mode 100644 index 00000000..25b318d0 --- /dev/null +++ b/deploy/adapters/ansible/roles/heat/vars/RedHat.yml @@ -0,0 +1,5 @@ +--- +services: [] + +packages: [] + diff --git a/deploy/adapters/ansible/roles/heat/vars/main.yml b/deploy/adapters/ansible/roles/heat/vars/main.yml new file mode 100644 index 00000000..05d75010 --- /dev/null +++ b/deploy/adapters/ansible/roles/heat/vars/main.yml @@ -0,0 +1,5 @@ +--- +packages_noarch: [] + +services_noarch: [] + -- cgit 1.2.3-korg