staypuft 0.5.0 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/app/assets/javascripts/staypuft/staypuft.js +41 -0
- data/app/controllers/staypuft/steps_controller.rb +1 -1
- data/app/lib/staypuft/network_query.rb +17 -6
- data/app/lib/staypuft/seeder.rb +50 -262
- data/app/models/staypuft/deployment.rb +8 -32
- data/app/models/staypuft/deployment/cinder_service.rb +5 -17
- data/app/models/staypuft/deployment/glance_service.rb +2 -9
- data/app/models/staypuft/deployment/neutron_service.rb +10 -2
- data/app/models/staypuft/deployment/nova_service.rb +11 -2
- data/app/models/staypuft/deployment/passwords.rb +2 -2
- data/app/models/staypuft/service.rb +1 -21
- data/app/views/staypuft/deployments/_deployment_access_all_details_dialogue.html.erb +7 -18
- data/app/views/staypuft/deployments/_deployment_hosts.html.erb +1 -1
- data/app/views/staypuft/deployments/_deployment_show_header.html.erb +1 -4
- data/app/views/staypuft/deployments/_free_hosts.html.erb +2 -2
- data/app/views/staypuft/deployments/_free_hosts_table.html.erb +2 -2
- data/app/views/staypuft/interface_assignments/_nics_assignment_overview.html.erb +40 -0
- data/app/views/staypuft/interface_assignments/index.html.erb +5 -39
- data/app/views/staypuft/steps/_cinder.html.erb +0 -1
- data/app/views/staypuft/steps/_neutron.html.erb +6 -3
- data/app/views/staypuft/steps/_nova.html.erb +3 -0
- data/app/views/staypuft/steps/deployment_settings.html.erb +1 -2
- data/app/views/staypuft/steps/services_configuration.html.erb +1 -0
- data/app/views/staypuft/steps/services_overview.html.erb +1 -2
- data/lib/staypuft/version.rb +1 -1
- metadata +5 -7
- data/app/models/staypuft/service/ui_params.rb +0 -128
- data/app/views/staypuft/steps/_neutron_non_ha.html.erb +0 -41
- data/app/views/staypuft/steps/_nova_non_ha.html.erb +0 -29
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
MDZhMjQ5YWJmZTcwY2ZiYWVjNzdiZWMyNDM1MzBlZDA0YTFkYzgzMQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZTNjYWI1NjQ5NDVjNTNkZDU2NjI4ZjAzMjI3NzY5MTk5OTRmYzNhNg==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YTA0NmYxNDZiZTAyNjQyYWRjNTAyZmI3MjI2YjNkOTYwZDk3MWI0ZGQxYjZl
|
10
|
+
ZjU1NWUxY2NhY2VmMzc1NjA4YzY2NDk2MDViOWEzOGE4YjRlYWMxMjA2MTBi
|
11
|
+
YjMzZWYzMjNjMTUxZWQ1OWNjODI1ZGJhNTExOWEzYjZjMjk5NzY=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MDZhOGFmMTNjN2M1YTAwMGEzZjgzYmJiYmQ5NzBhZGFmNzY4MWU5MjI2ZWEw
|
14
|
+
MmI1ZDc4YTljMDViZjg3NTNlZTJhZDE3ZjBhYmE1MGNmZmRkNTdjMDNmYmI1
|
15
|
+
ODg4YTY0MGJlM2M4MTUzOWIyNjVkNGRjYzIzOGI3M2QxOTQ0OTc=
|
@@ -115,6 +115,18 @@ $(function () {
|
|
115
115
|
}
|
116
116
|
}
|
117
117
|
|
118
|
+
showTenantNetworkType();
|
119
|
+
$("#staypuft_deployment_neutron_ml2_openvswitch").change(showTenantNetworkType);
|
120
|
+
function showTenantNetworkType() {
|
121
|
+
$('.neutron_ml2_mechanisms').parent().parent().removeClass('col-md-6').addClass('col-md-8');
|
122
|
+
if($("#staypuft_deployment_neutron_ml2_openvswitch").is(":checked")) {
|
123
|
+
$("#staypuft_deployment_neutron_ml2_openvswitch").parent().after($("label[for='network_segmentation']").parent())
|
124
|
+
$("label[for='network_segmentation']").parent().fadeIn(duration);
|
125
|
+
} else {
|
126
|
+
$("label[for='network_segmentation']").parent().fadeOut(duration);
|
127
|
+
}
|
128
|
+
}
|
129
|
+
|
118
130
|
showNeutronN1kvParameters();
|
119
131
|
$("input[name='staypuft_deployment[neutron][core_plugin]']").change(showNeutronN1kvParameters);
|
120
132
|
function showNeutronN1kvParameters() {
|
@@ -138,6 +150,35 @@ $(function () {
|
|
138
150
|
}
|
139
151
|
}
|
140
152
|
|
153
|
+
showControllerWarning("glance");
|
154
|
+
showControllerWarning("cinder");
|
155
|
+
$("input[name='staypuft_deployment[glance][driver_backend]'").change(function(){
|
156
|
+
console.log("glance");
|
157
|
+
showControllerWarning("glance")
|
158
|
+
});
|
159
|
+
$("#staypuft_deployment_cinder_backend_lvm").change(function(){
|
160
|
+
console.log("cinder");
|
161
|
+
showControllerWarning("cinder")
|
162
|
+
});
|
163
|
+
function showControllerWarning(which_warning) {
|
164
|
+
if(which_warning == "glance") {
|
165
|
+
if($("#staypuft_deployment_glance_driver_backend_local").is(":checked")) {
|
166
|
+
$('.glance-controller-warning').find(".replace").html(" (Local File)");
|
167
|
+
$('.glance-controller-warning').show();
|
168
|
+
} else {
|
169
|
+
$('.glance-controller-warning').hide();
|
170
|
+
}
|
171
|
+
}
|
172
|
+
if(which_warning == "cinder") {
|
173
|
+
if($("#staypuft_deployment_cinder_backend_lvm").is(":checked")) {
|
174
|
+
$('.cinder-controller-warning').find(".replace").html(" (LVM)");
|
175
|
+
$('.cinder-controller-warning').show();
|
176
|
+
} else {
|
177
|
+
$('.cinder-controller-warning').hide();
|
178
|
+
}
|
179
|
+
}
|
180
|
+
}
|
181
|
+
|
141
182
|
showGlanceNfsNetworkPath();
|
142
183
|
$("input[name='staypuft_deployment[glance][driver_backend]']").change(showGlanceNfsNetworkPath);
|
143
184
|
function showGlanceNfsNetworkPath() {
|
@@ -10,7 +10,7 @@ module Staypuft
|
|
10
10
|
when :deployment_settings
|
11
11
|
@layouts = ordered_layouts
|
12
12
|
when :services_overview
|
13
|
-
if
|
13
|
+
if @deployment.cinder.lvm_ptable.nil?
|
14
14
|
flash[:warning] = "Missing Partition Table 'LVM with cinder-volumes', LVM cinder backend won't work."
|
15
15
|
end
|
16
16
|
when :network_configuration
|
@@ -59,6 +59,14 @@ module Staypuft
|
|
59
59
|
interface_hash_for_host(subnet_type_name, host)[:subnet]
|
60
60
|
end
|
61
61
|
|
62
|
+
def mtu_for_tenant_subnet
|
63
|
+
mtu = @deployment.neutron_networking? ? @deployment.neutron.network_device_mtu : @deployment.nova.network_device_mtu
|
64
|
+
end
|
65
|
+
|
66
|
+
def tenant_subnet?(subnet, host=@host)
|
67
|
+
subnet == subnet_for_host(Staypuft::SubnetType::TENANT, host)
|
68
|
+
end
|
69
|
+
|
62
70
|
def gateway_subnet(host=@host)
|
63
71
|
gateway_hash_for_host(host)[:subnet]
|
64
72
|
end
|
@@ -79,10 +87,6 @@ module Staypuft
|
|
79
87
|
controllers.map { |controller| ip_for_host(subnet_type_name, controller) }
|
80
88
|
end
|
81
89
|
|
82
|
-
def controller_ip(subnet_type_name)
|
83
|
-
ip_for_host(subnet_type_name, controllers.tap { |v| v.size == 1 or raise('only one controller is allowed') }.first)
|
84
|
-
end
|
85
|
-
|
86
90
|
def controller_fqdns
|
87
91
|
controllers.map &:fqdn
|
88
92
|
end
|
@@ -91,6 +95,12 @@ module Staypuft
|
|
91
95
|
controllers.map &:shortname
|
92
96
|
end
|
93
97
|
|
98
|
+
def controller_pcmk_shortnames
|
99
|
+
controllers.map do |controller|
|
100
|
+
"pcmk-"+controller.shortname
|
101
|
+
end
|
102
|
+
end
|
103
|
+
|
94
104
|
def get_vip(vip_name)
|
95
105
|
if VIP_NAMES[vip_name]
|
96
106
|
interface = @deployment.vip_nics.where(:tag => vip_name).first
|
@@ -100,8 +110,9 @@ module Staypuft
|
|
100
110
|
|
101
111
|
class Jail < Safemode::Jail
|
102
112
|
allow :ip_for_host, :interface_for_host, :network_address_for_host,
|
103
|
-
:controller_ip, :controller_ips, :controller_fqdns, :get_vip,
|
104
|
-
:subnet_for_host, :gateway_subnet, :gateway_interface, :gateway_interface_mac
|
113
|
+
:controller_ip, :controller_ips, :controller_fqdns, :get_vip, :controller_pcmk_shortnames,
|
114
|
+
:subnet_for_host, :gateway_subnet, :gateway_interface, :gateway_interface_mac,
|
115
|
+
:tenant_subnet?, :mtu_for_tenant_subnet
|
105
116
|
end
|
106
117
|
|
107
118
|
private
|
data/app/lib/staypuft/seeder.rb
CHANGED
@@ -58,51 +58,39 @@ module Staypuft
|
|
58
58
|
}
|
59
59
|
|
60
60
|
# key (:ha, etc) is only used internally for referencing from roles
|
61
|
-
LAYOUTS = { :
|
62
|
-
|
63
|
-
:
|
64
|
-
|
65
|
-
:ha_neutron => { :name => 'High Availability Controllers / Compute',
|
66
|
-
:networking => 'neutron' },
|
67
|
-
:non_ha_neutron => { :name => 'Controller / Compute',
|
68
|
-
:networking => 'neutron' } }
|
61
|
+
LAYOUTS = { :nova => { :name => 'Controllers / Compute',
|
62
|
+
:networking => 'nova' },
|
63
|
+
:neutron => { :name => 'Controllers / Compute',
|
64
|
+
:networking => 'neutron' } }
|
69
65
|
|
70
66
|
# some services don't have puppetclasses yet, since they aren't broken out on the back end
|
71
67
|
SERVICES = {
|
72
|
-
:non_ha_amqp => { :name => 'AMQP (non-HA)', :class => [] },
|
73
|
-
:mysql => { :name => 'MySQL', :class => [] },
|
74
|
-
:non_ha_keystone => { :name => 'Keystone (non-HA)', :class => [] },
|
75
|
-
:nova_controller => { :name => 'Nova (Controller)', :class => [] },
|
76
|
-
:neutron_controller => { :name => 'Neutron (Controller)', :class => [] },
|
77
|
-
:non_ha_glance => { :name => 'Glance (non-HA)', :class => [] },
|
78
|
-
:cinder_controller => { :name => 'Cinder (controller)', :class => [] },
|
79
68
|
:cinder_node => { :name => 'Cinder (node)', :class => ['quickstack::storage_backend::cinder'] },
|
80
|
-
:heat => { :name => 'Heat', :class => [] },
|
81
|
-
:ceilometer => { :name => 'Ceilometer', :class => [] },
|
82
|
-
:neutron_networker => { :name => 'Neutron Networker', :class => ['quickstack::neutron::networker'] },
|
83
69
|
:nova_compute => { :name => 'Nova-compute', :class => ['quickstack::nova_network::compute'] },
|
84
70
|
:neutron_compute => { :name => 'Neutron-compute', :class => ['quickstack::neutron::compute'] },
|
85
|
-
:
|
86
|
-
:
|
71
|
+
:swift_node => { :name => 'Swift (node)', :class => ['quickstack::swift::storage'] },
|
72
|
+
:controller => { :name => 'Controller',
|
87
73
|
:class => ['quickstack::openstack_common',
|
88
74
|
'quickstack::pacemaker::common',
|
89
75
|
'quickstack::pacemaker::params'] },
|
90
|
-
:
|
76
|
+
:keystone => { :name => 'Keystone',
|
91
77
|
:class => ['quickstack::pacemaker::keystone'] },
|
92
|
-
:
|
78
|
+
:load_balancer => { :name => 'Load Balancer',
|
93
79
|
:class => ['quickstack::pacemaker::load_balancer'] },
|
94
|
-
:
|
80
|
+
:memcached => { :name => 'Memcached',
|
95
81
|
:class => ['quickstack::pacemaker::memcached'] },
|
96
|
-
:
|
97
|
-
:
|
98
|
-
:
|
99
|
-
:
|
100
|
-
:
|
101
|
-
:
|
102
|
-
:
|
103
|
-
:
|
104
|
-
:
|
105
|
-
:
|
82
|
+
:qpid => { :name => 'qpid', :class => ['quickstack::pacemaker::qpid'] },
|
83
|
+
:glance => { :name => 'Glance', :class => ['quickstack::pacemaker::glance'] },
|
84
|
+
:nova => { :name => 'Nova', :class => ['quickstack::pacemaker::nova'] },
|
85
|
+
:heat => { :name => 'Heat', :class => ['quickstack::pacemaker::heat'] },
|
86
|
+
:cinder => { :name => 'Cinder', :class => ['quickstack::pacemaker::cinder'] },
|
87
|
+
:swift => { :name => 'Swift', :class => ['quickstack::pacemaker::swift'] },
|
88
|
+
:horizon => { :name => 'Horizon', :class => ['quickstack::pacemaker::horizon'] },
|
89
|
+
:galera => { :name => 'Galera', :class => ['quickstack::pacemaker::galera'] },
|
90
|
+
:mysql => { :name => 'Mysql', :class => ['quickstack::pacemaker::mysql'] },
|
91
|
+
:ceilometer => { :name => 'Ceilometer', :class => ['quickstack::pacemaker::nosql',
|
92
|
+
'quickstack::pacemaker::ceilometer'] },
|
93
|
+
:neutron => { :name => 'Neutron', :class => ['quickstack::pacemaker::neutron'] },
|
106
94
|
:generic_rhel_7 => { :name => 'Generic RHEL 7', :class => ['quickstack::openstack_common'] },
|
107
95
|
:ceph_osd => { :name => 'Ceph Storage (OSD) (node)',
|
108
96
|
:class => ['quickstack::openstack_common',
|
@@ -116,33 +104,16 @@ module Staypuft
|
|
116
104
|
# until we get the real list of roles per layout
|
117
105
|
# layout refs below specify layout keys from layouts hash
|
118
106
|
ROLES = [
|
119
|
-
{ :name => 'Controller (Nova)',
|
120
|
-
:class => 'quickstack::nova_network::controller',
|
121
|
-
:layouts => [[:non_ha_nova, 1]],
|
122
|
-
:services => [:non_ha_amqp, :mysql, :non_ha_keystone, :nova_controller, :non_ha_glance,
|
123
|
-
:cinder_controller, :heat, :ceilometer],
|
124
|
-
:orchestration => 'concurrent' },
|
125
107
|
{ :name => 'Compute (Nova)',
|
126
108
|
:class => [],
|
127
|
-
:layouts => [[:
|
109
|
+
:layouts => [[:nova, 10]],
|
128
110
|
:services => [:nova_compute],
|
129
111
|
:orchestration => 'leader' },
|
130
|
-
{ :name => 'Controller (Neutron)',
|
131
|
-
:class => 'quickstack::neutron::controller',
|
132
|
-
:layouts => [[:non_ha_neutron, 1]],
|
133
|
-
:services => [:non_ha_amqp, :mysql, :non_ha_keystone, :neutron_controller, :non_ha_glance,
|
134
|
-
:cinder_controller, :heat, :ceilometer],
|
135
|
-
:orchestration => 'concurrent' },
|
136
112
|
{ :name => 'Compute (Neutron)',
|
137
113
|
:class => [],
|
138
|
-
:layouts => [[:
|
114
|
+
:layouts => [[:neutron, 10]],
|
139
115
|
:services => [:neutron_compute],
|
140
116
|
:orchestration => 'concurrent' },
|
141
|
-
{ :name => 'Neutron Networker',
|
142
|
-
:class => [],
|
143
|
-
:layouts => [[:non_ha_neutron, 3]],
|
144
|
-
:services => [:neutron_networker],
|
145
|
-
:orchestration => 'concurrent' },
|
146
117
|
{ :name => 'Cinder Block Storage',
|
147
118
|
:class => [],
|
148
119
|
:layouts => [],
|
@@ -153,21 +124,21 @@ module Staypuft
|
|
153
124
|
:layouts => [],
|
154
125
|
:services => [:swift],
|
155
126
|
:orchestration => 'concurrent' },
|
156
|
-
{ :name => '
|
127
|
+
{ :name => 'Controller',
|
157
128
|
:class => [],
|
158
|
-
:layouts => [[:
|
159
|
-
:services => [:
|
160
|
-
:
|
161
|
-
:
|
129
|
+
:layouts => [[:nova, 1], [:neutron, 1]],
|
130
|
+
:services => [:controller, :keystone, :load_balancer, :memcached, :qpid,
|
131
|
+
:glance, :nova, :heat, :cinder, :swift, :horizon, :mysql,
|
132
|
+
:neutron, :galera, :ceilometer],
|
162
133
|
:orchestration => 'concurrent' },
|
163
134
|
{ :name => 'Generic RHEL 7',
|
164
135
|
:class => '',
|
165
|
-
:layouts => [[:
|
136
|
+
:layouts => [[:nova, 20], [:neutron, 20]],
|
166
137
|
:services => [:generic_rhel_7],
|
167
138
|
:orchestration => 'concurrent' },
|
168
139
|
{ :name => 'Ceph Storage Node (OSD)',
|
169
140
|
:class => '',
|
170
|
-
:layouts => [[:
|
141
|
+
:layouts => [[:nova, 20], [:neutron, 20]],
|
171
142
|
:services => [:ceph_osd],
|
172
143
|
:orchestration => 'concurrent' },
|
173
144
|
]
|
@@ -233,7 +204,7 @@ module Staypuft
|
|
233
204
|
}
|
234
205
|
|
235
206
|
def get_host_format(param_name, subnet_type_name)
|
236
|
-
{ :string => "<%=
|
207
|
+
{ :string => "<%= @host.deployment.network_query.get_vip(:#{param_name}) %>" }
|
237
208
|
end
|
238
209
|
|
239
210
|
# virtual ip addresses
|
@@ -244,7 +215,7 @@ module Staypuft
|
|
244
215
|
def functional_dependencies
|
245
216
|
amqp_provider = { :string => '<%= @host.deployment.amqp_provider %>' }
|
246
217
|
neutron = { :string => '<%= @host.deployment.neutron_networking? %>' }
|
247
|
-
ceilometer =
|
218
|
+
ceilometer = true
|
248
219
|
|
249
220
|
# Nova
|
250
221
|
network_manager = { :string => '<%= @host.deployment.nova.network_manager %>' }
|
@@ -264,6 +235,7 @@ module Staypuft
|
|
264
235
|
'quota_fixed_ips' => 'default',
|
265
236
|
'quota_driver' => 'default' }
|
266
237
|
}
|
238
|
+
nova_network_device_mtu = { :string => '<%= @host.deployment.nova.network_device_mtu %>' }
|
267
239
|
|
268
240
|
# Neutron
|
269
241
|
ovs_vlan_ranges = { :array => '<%= @host.deployment.neutron.networker_vlan_ranges %>' }
|
@@ -272,7 +244,6 @@ module Staypuft
|
|
272
244
|
tenant_network_type = '<%= @host.deployment.neutron.network_segmentation %>'
|
273
245
|
ml2_tenant_network_types = [ tenant_network_type ]
|
274
246
|
ml2_tunnel_id_ranges = ['10:1000']
|
275
|
-
ml2_vni_ranges = ['10:1000']
|
276
247
|
ml2_mechanism_drivers = { :array => '<%= @host.deployment.neutron.ml2_mechanisms %>' }
|
277
248
|
ovs_tunnel_types = { :array => '<%= @host.deployment.neutron.ovs_tunnel_types %>' }
|
278
249
|
ovs_tunnel_iface = { :string => '<%= n = @host.deployment.neutron; n.enable_tunneling? ? n.tenant_iface(@host) : "" %>' }
|
@@ -293,6 +264,7 @@ module Staypuft
|
|
293
264
|
'quota_security_group_rule' => 'default',
|
294
265
|
'network_auto_schedule' => 'default' }
|
295
266
|
}
|
267
|
+
neutron_network_device_mtu = { :string => '<%= @host.deployment.neutron.network_device_mtu %>' }
|
296
268
|
|
297
269
|
# Glance
|
298
270
|
backend = { :string => '<%= @host.deployment.glance.backend %>' }
|
@@ -301,24 +273,17 @@ module Staypuft
|
|
301
273
|
pcmk_fs_dir = '/var/lib/glance/images'
|
302
274
|
pcmk_fs_manage = { :string => '<%= @host.deployment.glance.pcmk_fs_manage %>' }
|
303
275
|
pcmk_fs_options = { :string => '<%= @host.deployment.glance.pcmk_fs_options %>' }
|
304
|
-
glance_rbd_store_user = 'images'
|
305
|
-
glance_rbd_store_pool = 'images'
|
306
276
|
|
307
277
|
# Cinder
|
308
278
|
volume = true
|
309
279
|
cinder_backend_gluster = false
|
310
|
-
cinder_backend_gluster_name = 'gluster'
|
311
280
|
cinder_backend_iscsi = { :string => '<%= @host.deployment.cinder.lvm_backend? %>' }
|
312
|
-
cinder_backend_iscsi_name = 'iscsi'
|
313
281
|
cinder_backend_nfs = { :string => '<%= @host.deployment.cinder.nfs_backend? %>' }
|
314
|
-
cinder_backend_nfs_name = 'nfs'
|
315
282
|
cinder_multiple_backends = { :string => '<%= @host.deployment.cinder.multiple_backends? %>' }
|
316
|
-
cinder_create_volume_types = true
|
317
283
|
cinder_nfs_shares = ['<%= @host.deployment.cinder.nfs_uri %>']
|
318
284
|
cinder_nfs_mount_options = 'nosharecache'
|
319
285
|
|
320
286
|
cinder_backend_rbd = { :string => '<%= @host.deployment.cinder.ceph_backend? %>' }
|
321
|
-
cinder_backend_rbd_name = 'rbd'
|
322
287
|
cinder_rbd_pool = 'volumes'
|
323
288
|
cinder_rbd_ceph_conf = '/etc/ceph/ceph.conf'
|
324
289
|
cinder_rbd_flatten_volume_from_snapshot = 'false'
|
@@ -327,7 +292,6 @@ module Staypuft
|
|
327
292
|
cinder_rbd_secret_uuid = { :string => '<%= @host.deployment.cinder.rbd_secret_uuid %>' }
|
328
293
|
|
329
294
|
cinder_backend_eqlx = { :string => '<%= @host.deployment.cinder.equallogic_backend? %>' }
|
330
|
-
cinder_backend_eqlx_name = { :array => '<%= @host.deployment.cinder.compute_eqlx_backend_names %>'}
|
331
295
|
# TODO: confirm these params and add them to model where user input is needed
|
332
296
|
# below dynamic calls are commented out since the model does not yet have san/chap entries
|
333
297
|
cinder_san_ip = { :array => '<%= @host.deployment.cinder.compute_eqlx_san_ips %>' }
|
@@ -379,10 +343,8 @@ module Staypuft
|
|
379
343
|
neutron_user_pw = { :string => '<%= @host.deployment.passwords.effective_value(:neutron_user) %>' }
|
380
344
|
nova_db_pw = { :string => '<%= @host.deployment.passwords.effective_value(:nova_db) %>' }
|
381
345
|
nova_user_pw = { :string => '<%= @host.deployment.passwords.effective_value(:nova_user) %>' }
|
382
|
-
swift_admin_pw = { :string => '<%= @host.deployment.passwords.effective_value(:swift_admin) %>' }
|
383
346
|
swift_user_pw = { :string => '<%= @host.deployment.passwords.effective_value(:swift_user) %>' }
|
384
347
|
amqp_pw = { :string => '<%= @host.deployment.passwords.effective_value(:amqp) %>' }
|
385
|
-
amqp_nssdb_pw = { :string => '<%= @host.deployment.passwords.effective_value(:amqp_nssdb) %>' }
|
386
348
|
keystone_admin_token = { :string => '<%= @host.deployment.passwords.effective_value(:keystone_admin_token) %>' }
|
387
349
|
|
388
350
|
#these don't share the user-supplied password value; they're always a random per param value
|
@@ -404,10 +366,6 @@ module Staypuft
|
|
404
366
|
# public API
|
405
367
|
nova_host = get_host_format :nova_public_vip, Staypuft::SubnetType::PUBLIC_API
|
406
368
|
|
407
|
-
controller_admin_host = { :string => "<%= d = @host.deployment; d.ha? ? nil : d.network_query.controller_ip('#{Staypuft::SubnetType::ADMIN_API}') %>"}
|
408
|
-
controller_priv_host = { :string => "<%= d = @host.deployment; d.ha? ? nil : d.network_query.controller_ip('#{Staypuft::SubnetType::MANAGEMENT}') %>"}
|
409
|
-
controller_pub_host = { :string => "<%= d = @host.deployment; d.ha? ? nil : d.network_query.controller_ip('#{Staypuft::SubnetType::PUBLIC_API}') %>"}
|
410
|
-
|
411
369
|
fencing_type = { :string => '<%= (@host.bmc_nic && @host.bmc_nic.fencing_enabled?) ? @host.bmc_nic.attrs["fencing_type"] : "disabled" %>' }
|
412
370
|
fence_ipmilan_address = { :string => '<%= @host.bmc_nic.ip if @host.bmc_nic && @host.bmc_nic.fencing_enabled? %>' }
|
413
371
|
fence_ipmilan_username = { :string => '<%= @host.bmc_nic.username if @host.bmc_nic && @host.bmc_nic.fencing_enabled? %>' }
|
@@ -434,166 +392,6 @@ module Staypuft
|
|
434
392
|
}
|
435
393
|
|
436
394
|
{
|
437
|
-
'quickstack::nova_network::controller' => {
|
438
|
-
'amqp_provider' => amqp_provider,
|
439
|
-
'ceph_cluster_network' => ceph_cluster_network,
|
440
|
-
'ceph_public_network' => ceph_public_network,
|
441
|
-
'ceph_fsid' => ceph_fsid,
|
442
|
-
'ceph_images_key' => ceph_images_key,
|
443
|
-
'ceph_volumes_key' => ceph_volumes_key,
|
444
|
-
'ceph_mon_host' => ceph_mon_host,
|
445
|
-
'ceph_mon_initial_members' => ceph_mon_initial_members,
|
446
|
-
'cinder_backend_gluster' => cinder_backend_gluster,
|
447
|
-
'cinder_backend_gluster_name' => cinder_backend_gluster_name,
|
448
|
-
'cinder_backend_iscsi' => cinder_backend_iscsi,
|
449
|
-
'cinder_backend_iscsi_name' => cinder_backend_iscsi_name,
|
450
|
-
'cinder_backend_nfs' => cinder_backend_nfs,
|
451
|
-
'cinder_backend_nfs_name' => cinder_backend_nfs_name,
|
452
|
-
'cinder_backend_rbd' => cinder_backend_rbd,
|
453
|
-
'cinder_backend_rbd_name' => cinder_backend_rbd_name,
|
454
|
-
'cinder_backend_eqlx' => cinder_backend_eqlx,
|
455
|
-
'cinder_backend_eqlx_name' => cinder_backend_eqlx_name,
|
456
|
-
'cinder_multiple_backends' => cinder_multiple_backends,
|
457
|
-
'cinder_create_volume_types' => cinder_create_volume_types,
|
458
|
-
'cinder_nfs_shares' => cinder_nfs_shares,
|
459
|
-
'cinder_nfs_mount_options' => cinder_nfs_mount_options,
|
460
|
-
'cinder_rbd_pool' => cinder_rbd_pool,
|
461
|
-
'cinder_rbd_ceph_conf' => cinder_rbd_ceph_conf,
|
462
|
-
'cinder_rbd_flatten_volume_from_snapshot' => cinder_rbd_flatten_volume_from_snapshot,
|
463
|
-
'cinder_rbd_max_clone_depth' => cinder_rbd_max_clone_depth,
|
464
|
-
'cinder_rbd_user' => cinder_rbd_user,
|
465
|
-
'cinder_rbd_secret_uuid' => cinder_rbd_secret_uuid,
|
466
|
-
'cinder_san_ip' => cinder_san_ip,
|
467
|
-
'cinder_san_login' => cinder_san_login,
|
468
|
-
'cinder_san_password' => cinder_san_password,
|
469
|
-
'cinder_san_thin_provision' => cinder_san_thin_provision,
|
470
|
-
'cinder_eqlx_group_name' => cinder_eqlx_group_name,
|
471
|
-
'cinder_eqlx_pool' => cinder_eqlx_pool,
|
472
|
-
'cinder_eqlx_use_chap' => cinder_eqlx_use_chap,
|
473
|
-
'cinder_eqlx_chap_login' => cinder_eqlx_chap_login,
|
474
|
-
'cinder_eqlx_chap_password' => cinder_eqlx_chap_password,
|
475
|
-
'glance_backend' => backend,
|
476
|
-
'glance_rbd_store_user' => glance_rbd_store_user,
|
477
|
-
'glance_rbd_store_pool' => glance_rbd_store_pool,
|
478
|
-
'keystonerc' => keystonerc,
|
479
|
-
'admin_password' => admin_pw,
|
480
|
-
'ceilometer_user_password' => ceilometer_user_pw,
|
481
|
-
'cinder_db_password' => cinder_db_pw,
|
482
|
-
'cinder_user_password' => cinder_user_pw,
|
483
|
-
'glance_db_password' => glance_db_pw,
|
484
|
-
'glance_user_password' => glance_user_pw,
|
485
|
-
'heat_db_password' => heat_db_pw,
|
486
|
-
'heat_user_password' => heat_user_pw,
|
487
|
-
'keystone_db_password' => keystone_db_pw,
|
488
|
-
'mysql_root_password' => mysql_root_pw,
|
489
|
-
'nova_db_password' => nova_db_pw,
|
490
|
-
'nova_user_password' => nova_user_pw,
|
491
|
-
'swift_admin_password' => swift_admin_pw,
|
492
|
-
'amqp_password' => amqp_pw,
|
493
|
-
'amqp_nssdb_password' => amqp_nssdb_pw,
|
494
|
-
'keystone_admin_token' => keystone_admin_token,
|
495
|
-
'ceilometer_metering_secret' => ceilometer_metering,
|
496
|
-
'heat_auth_encrypt_key' => heat_auth_encrypt_key,
|
497
|
-
'horizon_secret_key' => horizon_secret_key,
|
498
|
-
'amqp_host' => amqp_host,
|
499
|
-
'mysql_host' => mysql_host,
|
500
|
-
'swift_shared_secret' => swift_shared_secret,
|
501
|
-
'swift_ringserver_ip' => '',
|
502
|
-
'swift_storage_ips' => { :array => "<%= @host.deployment.network_query.controller_ips('#{Staypuft::SubnetType::MANAGEMENT}') %>" },
|
503
|
-
'cinder_gluster_shares' => [],
|
504
|
-
'controller_admin_host' => controller_admin_host,
|
505
|
-
'controller_priv_host' => controller_priv_host,
|
506
|
-
'controller_pub_host' => controller_pub_host },
|
507
|
-
'quickstack::neutron::controller' => {
|
508
|
-
'amqp_provider' => amqp_provider,
|
509
|
-
'ceph_cluster_network' => ceph_cluster_network,
|
510
|
-
'ceph_public_network' => ceph_public_network,
|
511
|
-
'ceph_fsid' => ceph_fsid,
|
512
|
-
'ceph_images_key' => ceph_images_key,
|
513
|
-
'ceph_volumes_key' => ceph_volumes_key,
|
514
|
-
'ceph_mon_host' => ceph_mon_host,
|
515
|
-
'ceph_mon_initial_members' => ceph_mon_initial_members,
|
516
|
-
'tenant_network_type' => tenant_network_type,
|
517
|
-
'ml2_network_vlan_ranges' => ml2_network_vlan_ranges,
|
518
|
-
'ml2_tenant_network_types' => ml2_tenant_network_types,
|
519
|
-
'ml2_tunnel_id_ranges' => ml2_tunnel_id_ranges,
|
520
|
-
'ml2_vni_ranges' => ml2_vni_ranges,
|
521
|
-
'ml2_mechanism_drivers' => ml2_mechanism_drivers,
|
522
|
-
'ovs_vlan_ranges' => ovs_vlan_ranges,
|
523
|
-
'enable_tunneling' => enable_tunneling,
|
524
|
-
'cinder_backend_gluster' => cinder_backend_gluster,
|
525
|
-
'cinder_backend_gluster_name' => cinder_backend_gluster_name,
|
526
|
-
'cinder_backend_iscsi' => cinder_backend_iscsi,
|
527
|
-
'cinder_backend_iscsi_name' => cinder_backend_iscsi_name,
|
528
|
-
'cinder_backend_nfs' => cinder_backend_nfs,
|
529
|
-
'cinder_backend_nfs_name' => cinder_backend_nfs_name,
|
530
|
-
'cinder_backend_rbd' => cinder_backend_rbd,
|
531
|
-
'cinder_backend_rbd_name' => cinder_backend_rbd_name,
|
532
|
-
'cinder_backend_eqlx' => cinder_backend_eqlx,
|
533
|
-
'cinder_backend_eqlx_name' => cinder_backend_eqlx_name,
|
534
|
-
'cinder_multiple_backends' => cinder_multiple_backends,
|
535
|
-
'cinder_create_volume_types' => cinder_create_volume_types,
|
536
|
-
'cinder_nfs_shares' => cinder_nfs_shares,
|
537
|
-
'cinder_nfs_mount_options' => cinder_nfs_mount_options,
|
538
|
-
'cinder_rbd_pool' => cinder_rbd_pool,
|
539
|
-
'cinder_rbd_ceph_conf' => cinder_rbd_ceph_conf,
|
540
|
-
'cinder_rbd_flatten_volume_from_snapshot' => cinder_rbd_flatten_volume_from_snapshot,
|
541
|
-
'cinder_rbd_max_clone_depth' => cinder_rbd_max_clone_depth,
|
542
|
-
'cinder_rbd_user' => cinder_rbd_user,
|
543
|
-
'cinder_rbd_secret_uuid' => cinder_rbd_secret_uuid,
|
544
|
-
'cinder_san_ip' => cinder_san_ip,
|
545
|
-
'cinder_san_login' => cinder_san_login,
|
546
|
-
'cinder_san_password' => cinder_san_password,
|
547
|
-
'cinder_san_thin_provision' => cinder_san_thin_provision,
|
548
|
-
'cinder_eqlx_group_name' => cinder_eqlx_group_name,
|
549
|
-
'cinder_eqlx_pool' => cinder_eqlx_pool,
|
550
|
-
'cinder_eqlx_use_chap' => cinder_eqlx_use_chap,
|
551
|
-
'cinder_eqlx_chap_login' => cinder_eqlx_chap_login,
|
552
|
-
'cinder_eqlx_chap_password' => cinder_eqlx_chap_password,
|
553
|
-
'glance_backend' => backend,
|
554
|
-
'glance_rbd_store_user' => glance_rbd_store_user,
|
555
|
-
'glance_rbd_store_pool' => glance_rbd_store_pool,
|
556
|
-
'keystonerc' => keystonerc,
|
557
|
-
'admin_password' => admin_pw,
|
558
|
-
'ceilometer_user_password' => ceilometer_user_pw,
|
559
|
-
'cinder_db_password' => cinder_db_pw,
|
560
|
-
'cinder_user_password' => cinder_user_pw,
|
561
|
-
'glance_db_password' => glance_db_pw,
|
562
|
-
'glance_user_password' => glance_user_pw,
|
563
|
-
'heat_db_password' => heat_db_pw,
|
564
|
-
'heat_user_password' => heat_user_pw,
|
565
|
-
'keystone_db_password' => keystone_db_pw,
|
566
|
-
'mysql_root_password' => mysql_root_pw,
|
567
|
-
'neutron_db_password' => neutron_db_pw,
|
568
|
-
'neutron_user_password' => neutron_user_pw,
|
569
|
-
'nova_db_password' => nova_db_pw,
|
570
|
-
'nova_user_password' => nova_user_pw,
|
571
|
-
'swift_admin_password' => swift_admin_pw,
|
572
|
-
'amqp_password' => amqp_pw,
|
573
|
-
'amqp_nssdb_password' => amqp_nssdb_pw,
|
574
|
-
'keystone_admin_token' => keystone_admin_token,
|
575
|
-
'ceilometer_metering_secret' => ceilometer_metering,
|
576
|
-
'heat_auth_encrypt_key' => heat_auth_encrypt_key,
|
577
|
-
'horizon_secret_key' => horizon_secret_key,
|
578
|
-
'swift_shared_secret' => swift_shared_secret,
|
579
|
-
'neutron_metadata_proxy_secret' => neutron_metadata_proxy_secret,
|
580
|
-
'amqp_host' => amqp_host,
|
581
|
-
'mysql_host' => mysql_host,
|
582
|
-
'swift_shared_secret' => swift_shared_secret,
|
583
|
-
'swift_ringserver_ip' => '',
|
584
|
-
'swift_storage_ips' => { :array => "<%= @host.deployment.network_query.controller_ips('#{Staypuft::SubnetType::MANAGEMENT}') %>" },
|
585
|
-
'cinder_gluster_shares' => [],
|
586
|
-
'controller_admin_host' => controller_admin_host,
|
587
|
-
'controller_priv_host' => controller_priv_host,
|
588
|
-
'controller_pub_host' => controller_pub_host,
|
589
|
-
'nexus_config' => cisco_nexus_config,
|
590
|
-
'neutron_conf_additional_params' => neutron_conf_additional_params,
|
591
|
-
'nova_conf_additional_params' => nova_conf_additional_params,
|
592
|
-
'n1kv_plugin_additional_params' => n1kv_plugin_additional_params,
|
593
|
-
'n1kv_vsm_ip' => n1kv_vsm_ip,
|
594
|
-
'n1kv_vsm_password' => n1kv_vsm_password,
|
595
|
-
'security_group_api' => neutron_security_group_api,
|
596
|
-
'neutron_core_plugin' => neutron_core_plugin_module },
|
597
395
|
'quickstack::pacemaker::params' => {
|
598
396
|
'include_swift' => 'false',
|
599
397
|
'include_neutron' => neutron,
|
@@ -658,12 +456,11 @@ module Staypuft
|
|
658
456
|
'swift_public_vip' => vip_format(:swift_public_vip),
|
659
457
|
'private_ip' => private_ip,
|
660
458
|
'cluster_control_ip' => { :string => "<%= @host.deployment.network_query.controller_ips('#{Staypuft::SubnetType::MANAGEMENT}').first %>" },
|
661
|
-
'lb_backend_server_addrs' => { :array => "<%= @host.deployment.network_query.controller_ips('#{Staypuft::SubnetType::
|
662
|
-
'lb_backend_server_names' => { :array => '<%= @host.deployment.network_query.
|
459
|
+
'lb_backend_server_addrs' => { :array => "<%= @host.deployment.network_query.controller_ips('#{Staypuft::SubnetType::CLUSTER_MGMT}') %>" },
|
460
|
+
'lb_backend_server_names' => { :array => '<%= @host.deployment.network_query.controller_pcmk_shortnames %>' },
|
663
461
|
'agent_type' => neutron_agent_type,
|
664
462
|
'n1kv_plugin_additional_params' => n1kv_plugin_additional_params },
|
665
463
|
'quickstack::pacemaker::common' => {
|
666
|
-
'pacemaker_cluster_members' => { :string => "<%= @host.deployment.network_query.controller_ips('#{Staypuft::SubnetType::CLUSTER_MGMT}').join(' ') %>" },
|
667
464
|
'fencing_type' => fencing_type,
|
668
465
|
'fence_ipmilan_address' => fence_ipmilan_address,
|
669
466
|
'fence_ipmilan_username' => fence_ipmilan_username,
|
@@ -691,7 +488,9 @@ module Staypuft
|
|
691
488
|
'n1kv_plugin_additional_params' => n1kv_plugin_additional_params,
|
692
489
|
'n1kv_vsm_ip' => n1kv_vsm_ip,
|
693
490
|
'n1kv_vsm_password' => n1kv_vsm_password,
|
694
|
-
'security_group_api' => neutron_security_group_api
|
491
|
+
'security_group_api' => neutron_security_group_api,
|
492
|
+
'network_device_mtu' => neutron_network_device_mtu,
|
493
|
+
},
|
695
494
|
'quickstack::pacemaker::glance' => {
|
696
495
|
'backend' => backend,
|
697
496
|
'pcmk_fs_type' => pcmk_fs_type,
|
@@ -727,7 +526,8 @@ module Staypuft
|
|
727
526
|
'quickstack::pacemaker::keystone' => {
|
728
527
|
'keystonerc' => keystonerc,
|
729
528
|
'admin_password' => admin_pw,
|
730
|
-
'admin_token' => keystone_admin_token
|
529
|
+
'admin_token' => keystone_admin_token,
|
530
|
+
'ceilometer' => "false" },
|
731
531
|
'quickstack::pacemaker::horizon' => {
|
732
532
|
'secret_key' => horizon_secret_key },
|
733
533
|
'quickstack::pacemaker::galera' => {
|
@@ -739,25 +539,6 @@ module Staypuft
|
|
739
539
|
'quickstack::pacemaker::nova' => {
|
740
540
|
'multi_host' => 'true',
|
741
541
|
'neutron_metadata_proxy_secret' => neutron_metadata_proxy_secret },
|
742
|
-
'quickstack::neutron::networker' => {
|
743
|
-
'amqp_provider' => amqp_provider,
|
744
|
-
'enable_tunneling' => enable_tunneling,
|
745
|
-
'tenant_network_type' => tenant_network_type,
|
746
|
-
'ovs_bridge_mappings' => ovs_bridge_mappings,
|
747
|
-
'ovs_bridge_uplinks' => ovs_bridge_uplinks,
|
748
|
-
'ovs_tunnel_iface' => ovs_tunnel_iface,
|
749
|
-
'ovs_tunnel_types' => ovs_tunnel_types,
|
750
|
-
'ovs_vlan_ranges' => ovs_vlan_ranges,
|
751
|
-
'neutron_db_password' => neutron_db_pw,
|
752
|
-
'neutron_user_password' => neutron_user_pw,
|
753
|
-
'nova_db_password' => nova_db_pw,
|
754
|
-
'nova_user_password' => nova_user_pw,
|
755
|
-
'amqp_password' => amqp_pw,
|
756
|
-
'neutron_metadata_proxy_secret' => neutron_metadata_proxy_secret,
|
757
|
-
'amqp_host' => amqp_host,
|
758
|
-
'mysql_host' => mysql_host,
|
759
|
-
'controller_priv_host' => controller_priv_host,
|
760
|
-
'agent_type' => neutron_agent_type },
|
761
542
|
'quickstack::storage_backend::cinder' => {
|
762
543
|
'amqp_provider' => amqp_provider,
|
763
544
|
'cinder_db_password' => cinder_db_pw,
|
@@ -798,7 +579,9 @@ module Staypuft
|
|
798
579
|
'glance_host' => glance_host,
|
799
580
|
'auth_host' => auth_host,
|
800
581
|
'nova_host' => nova_host,
|
801
|
-
'private_ip' => private_ip
|
582
|
+
'private_ip' => private_ip,
|
583
|
+
'network_device_mtu' => nova_network_device_mtu,
|
584
|
+
},
|
802
585
|
'quickstack::neutron::compute' => {
|
803
586
|
'amqp_provider' => amqp_provider,
|
804
587
|
'ceilometer' => ceilometer,
|
@@ -836,7 +619,9 @@ module Staypuft
|
|
836
619
|
'nova_host' => nova_host,
|
837
620
|
'private_ip' => private_ip,
|
838
621
|
'agent_type' => neutron_agent_type,
|
839
|
-
'security_group_api' => neutron_security_group_api
|
622
|
+
'security_group_api' => neutron_security_group_api,
|
623
|
+
'network_device_mtu' => neutron_network_device_mtu,
|
624
|
+
},
|
840
625
|
'quickstack::pacemaker::rsync::keystone' => {
|
841
626
|
'keystone_private_vip' => vip_format(:keystone) },
|
842
627
|
'quickstack::ceph::config' => {
|
@@ -849,6 +634,9 @@ module Staypuft
|
|
849
634
|
'volumes_key' => ceph_volumes_key,
|
850
635
|
'osd_pool_default_size' => ceph_osd_pool_size,
|
851
636
|
'osd_journal_size' => ceph_osd_journal_size
|
637
|
+
},
|
638
|
+
'quickstack::pacemaker::ceilometer' => {
|
639
|
+
'ceilometer_metering_secret' => ceilometer_metering,
|
852
640
|
}
|
853
641
|
}
|
854
642
|
end
|