summaryrefslogtreecommitdiff
path: root/openstack/usr/share/openstack/nova.yml
blob: 947df037e30737acb2db98e5153e5c79edc25199 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
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