summaryrefslogtreecommitdiff
path: root/openstack/usr/share/openstack/nova.yml
blob: 15b1f3bea926e0c55d0f60d9641f7a4c9d499b79 (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
---
- 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={{ NOVA_PUBLIC_URL  }}
        internalurl={{ NOVA_INTERNAL_URL | default('http://127.0.0.1:8774/v2/%(tenant_id)s') }}
        adminurl={{ NOVA_ADMIN_URL }}
        region='RegionOne'
        token={{ KEYSTONE_TEMPORARY_ADMIN_TOKEN }}

  - postgresql_user: name={{ NOVA_DB_USER }}
    sudo: yes
    sudo_user: nova
  - postgresql_db: name=nova owner={{ NOVA_DB_USER }}
    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-conductor.service