diff options
author | Pedro Alvarez <pedro.alvarez@codethink.co.uk> | 2015-03-27 12:24:04 +0000 |
---|---|---|
committer | Richard Ipsum <richardipsum@fastmail.co.uk> | 2015-04-10 20:17:46 +0100 |
commit | d11285a7fdda820fd4d398ede0ae25d6364e7049 (patch) | |
tree | 0e729f9adfc57306ad0039c193e0a899340e2f08 /openstack/usr/share/openstack/nova.yml | |
parent | 7162dffed084e501bdd5cee6492540f2b5e02732 (diff) | |
download | definitions-d11285a7fdda820fd4d398ede0ae25d6364e7049.tar.gz |
nova: Move setup scripts to Ansible.
Also change systemd units and configure extension to match this change
Diffstat (limited to 'openstack/usr/share/openstack/nova.yml')
-rw-r--r-- | openstack/usr/share/openstack/nova.yml | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/openstack/usr/share/openstack/nova.yml b/openstack/usr/share/openstack/nova.yml new file mode 100644 index 00000000..947df037 --- /dev/null +++ b/openstack/usr/share/openstack/nova.yml @@ -0,0 +1,73 @@ +--- +- hosts: localhost + vars_files: + - "/etc/openstack/nova.conf" + tasks: + - name: Create the nova user. + user: name=nova comment="Openstack Nova Daemons" shell=/sbin/nologin home=/var/lib/nova groups=libvirt append=yes + + - name: Create the /var folders for nova + file: path={{ item }} state=directory owner=nova group=nova + with_items: + - /var/run/nova + - /var/lock/nova + - /var/log/nova + - /var/lib/nova + - /var/lib/nova/instances + + - file: path=/etc/nova state=directory + - name: Add the configuration needed for nova in /etc/nova using templates + template: src=/usr/share/openstack/nova/{{ item }} dest=/etc/nova/{{ item }} + with_lines: + - (cd /usr/share/openstack/nova && find -type f) + + - keystone_user: > + user={{ NOVA_SERVICE_USER }} + password={{ NOVA_SERVICE_PASSWORD }} + tenant=service + token={{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }} + + - keystone_user: > + role=admin + user={{ NOVA_SERVICE_USER }} + tenant=service + token={{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }} + + - keystone_service: > + name=nova + type=compute + description="Openstack Compute Service" + publicurl='http://{{ CONTROLLER_HOST_ADDRESS }}:8774/v2/%(tenant_id)s' + internalurl='http://{{ CONTROLLER_HOST_ADDRESS }}:8774/v2/%(tenant_id)s' + adminurl='http://{{ CONTROLLER_HOST_ADDRESS }}:8774/v2/%(tenant_id)s' + region='regionOne' + token={{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }} + + - postgresql_user: name={{ NOVA_DB_USER }} login_host={{ CONTROLLER_HOST_ADDRESS }} password={{ NOVA_DB_PASSWORD }} + sudo: yes + sudo_user: nova + - postgresql_db: name=nova owner={{ NOVA_DB_USER }} login_host={{ CONTROLLER_HOST_ADDRESS }} + sudo: yes + sudo_user: nova + + - nova_manage: action=dbsync + sudo: yes + sudo_user: nova + + + +# [1] Never enable openstack-nova-conductor service in a node with +# openstack-nova-compute or the security benefits of removing +# database access from nova-compute will be negated +#systemctl start openstack-nova-conductor + - name: Enable and start openstack-nova services + service: name={{ item }} enabled=yes state=started + with_items: + - openstack-nova-api.service + - openstack-nova-cert.service + - openstack-nova-compute.service + - openstack-nova-consoleauth.service + - openstack-nova-novncproxy.service + - openstack-nova-scheduler.service + - openstack-nova-serialproxy.service +# - openstack-nova-conductor.service |