-
Notifications
You must be signed in to change notification settings - Fork 2
/
openstack.yml
153 lines (131 loc) · 3.88 KB
/
openstack.yml
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
---
- hosts: all
vars_files:
- vars/service-selection.yml
- vars/config.yml
- vars/secrets.yml
environment:
- OS_PROJECT_DOMAIN_NAME: default
- OS_USER_DOMAIN_NAME: default
- OS_PROJECT_NAME: admin
- OS_USERNAME: admin
- OS_PASSWORD: "{{ keystone['admin'] }}"
- OS_AUTH_URL: http://{{ net['controller']['hostname'] }}:5000/v3/
- OS_IDENTITY_API_VERSION: 3
- OS_IMAGE_API_VERSION: 2
tasks:
- name: Prepare Openstack
import_role:
name: prepare
- name: Install misc services for Openstack
import_role:
name: misc
when: inventory_hostname in groups["controll"]
- name: Install keystone
import_role:
name: keystone
when:
- inventory_hostname in groups["controll"]
- 'keystone_service|bool'
- name: Install glance
import_role:
name: glance
when:
- inventory_hostname in groups["controll"]
- 'glance_service|bool'
- name: Install nova on controller
import_role:
name: nova_controller
when:
- inventory_hostname in groups["controll"]
- 'nova_service|bool'
- name: Install nova on compute nodes
import_role:
name: nova_compute
when:
- inventory_hostname in groups["compute"]
- 'nova_service|bool'
- name: Install neutron on controller
import_role:
name: neutron_controller
when:
- inventory_hostname in groups["controll"]
- 'neutron_service|bool'
- name: Install neutron on compute nodes
import_role:
name: neutron_compute
when:
- inventory_hostname in groups["compute"]
- 'neutron_service|bool'
- name: Install swift proxy on controller
import_role:
name: swift_proxy
when:
- inventory_hostname in groups["controll"]
- 'swift_service|bool'
- name: Install swift on object nodes
import_role:
name: swift_object
when:
- inventory_hostname in groups["object"]
- 'swift_service|bool'
- name: Create rings for account, container and object (Swift)
import_role:
name: swift_rings
when:
- inventory_hostname in groups["controll"]
- 'swift_service|bool'
- name: Finalize swift on controller and object nodes
import_role:
name: swift_all_nodes
when:
- inventory_hostname in groups["controll"] or inventory_hostname in groups["object"]
- 'swift_service|bool'
- name: Install cinder on controller
import_role:
name: cinder_controller
when:
- inventory_hostname in groups["controll"]
- 'cinder_service|bool'
- name: Install cinder on block nodes
import_role:
name: cinder_block
when:
- inventory_hostname in groups["block"]
- 'cinder_service|bool'
- name: Configure cinder on compute nodes
import_role:
name: cinder_compute
when:
- inventory_hostname in groups["compute"]
- 'cinder_service|bool'
- name: Install barbican on controller
import_role:
name: barbican
when:
- inventory_hostname in groups["controll"]
- 'barbican_service|bool'
- name: Install trove on controller
import_role:
name: trove
when:
- inventory_hostname in groups["controll"]
- 'trove_service|bool'
- name: Install heat on controller
import_role:
name: heat
when:
- inventory_hostname in groups["controll"]
- 'heat_service|bool'
- name: Install magnum on controller
import_role:
name: magnum
when:
- inventory_hostname in groups["controll"]
- 'magnum_service|bool'
- name: Install horizon
import_role:
name: horizon
when:
- inventory_hostname in groups["controll"]
- 'horizon_service|bool'