Remove LMA form offline-dpdk, add telemetry
Change-Id: I8b500f044bdd830dde25fbd1571fd7965cb92122
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/infra/config.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/infra/config.yml
index 56dbe98..6f58513 100644
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/infra/config.yml
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/infra/config.yml
@@ -7,25 +7,29 @@
#- system.openssh.client.lab
- system.salt.master.pkg
- system.salt.master.api
+- system.salt.master.formula.pkg.gnocchi
+- system.salt.master.formula.pkg.panko
- system.reclass.storage.salt
- system.salt.minion.ca.salt_master
- system.salt.minion.cert.proxy
- system.keystone.client.single
-- system.keystone.client.service.aodh
-- system.keystone.client.service.ceilometer
- system.keystone.client.service.nova21
- system.keystone.client.service.nova-placement
-- system.keystone.client.service.glare
- system.keystone.client.service.cinder3
- system.keystone.client.service.designate
-- system.mysql.client.single
+- system.keystone.client.service.aodh
+- system.keystone.client.service.ceilometer
+- system.keystone.client.service.panko
+- system.keystone.client.service.gnocchi
+- system.gnocchi.client
+- system.gnocchi.client.v1.archive_policy.default
+- system.reclass.storage.system.openstack_dns_cluster
- system.reclass.storage.system.openstack_control_cluster
- system.reclass.storage.system.openstack_compute_multi
- system.reclass.storage.system.openstack_gateway_single
- system.reclass.storage.system.openstack_dashboard_single
-- system.reclass.storage.system.stacklightv2_server_cluster
+- system.reclass.storage.system.openstack_telemetry_cluster
- cluster.virtual-offline-pike-ovs-dpdk.infra.backup.client_common
-- cluster.virtual-offline-pike-ovs-dpdk.stacklight.proxy
- cluster.virtual-offline-pike-ovs-dpdk
parameters:
_param:
@@ -125,20 +129,15 @@
cluster_param:
openstack_gateway_node01_address:
value_template: <<node_control_ip>>
- stacklight_monitor_node01:
- expression: <<node_hostname>>__equals__mon01
+ openstack_dns01:
+ expression: <<node_hostname>>__equals__dns01
cluster_param:
- stacklight_monitor_node01_address:
+ openstack_dns_node01_address:
value_template: <<node_control_ip>>
- stacklight_monitor_node02:
- expression: <<node_hostname>>__equals__mon02
+ openstack_dns02:
+ expression: <<node_hostname>>__equals__dns02
cluster_param:
- stacklight_monitor_node02_address:
- value_template: <<node_control_ip>>
- stacklight_monitor_node03:
- expression: <<node_hostname>>__equals__mon03
- cluster_param:
- stacklight_monitor_node03_address:
+ openstack_dns_node02_address:
value_template: <<node_control_ip>>
openstack_dashboard:
expression: <<node_hostname>>__startswith__prx
@@ -149,6 +148,21 @@
cluster_param:
openstack_proxy_node01_address:
value_template: <<node_control_ip>>
+ openstack_telemetry01:
+ expression: <<node_hostname>>__equals__mdb01
+ cluster_param:
+ openstack_telemetry_node01_address:
+ value_template: <<node_control_ip>>
+ openstack_telemetry02:
+ expression: <<node_hostname>>__equals__mdb02
+ cluster_param:
+ openstack_telemetry_node02_address:
+ value_template: <<node_control_ip>>
+ openstack_telemetry03:
+ expression: <<node_hostname>>__equals__mdb03
+ cluster_param:
+ openstack_telemetry_node03_address:
+ value_template: <<node_control_ip>>
node:
openstack_control_node01:
classes:
@@ -170,10 +184,6 @@
params:
mysql_cluster_role: slave
linux_system_codename: xenial
- stacklight_server_node01:
- classes:
- - system.influxdb.server.single
- - system.influxdb.database.stacklight
openstack_compute_node01:
params:
dpdk0_name: ens5
@@ -197,3 +207,15 @@
- cluster.virtual-offline-pike-ovs-dpdk.openstack.proxy
params:
linux_system_codename: xenial
+ openstack_telemetry_node01:
+ params:
+ # create resources only from 1 controller
+ # to prevent race conditions
+ ceilometer_create_gnocchi_resources: true
+ redis_cluster_role: 'master'
+ openstack_telemetry_node02:
+ params:
+ redis_cluster_role: 'slave'
+ openstack_telemetry_node03:
+ params:
+ redis_cluster_role: 'slave'
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/init.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/init.yml
index 45efcbd..84fdfce 100644
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/init.yml
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/init.yml
@@ -1,8 +1,5 @@
classes:
- system.linux.network.dynamic_hosts
-- service.grafana.collector
-- system.heka.log_collector.single
-- system.heka.log_collector.output.telegraf
- system.linux.system.repo_local.mcp.extra
- system.linux.system.repo.mcp.apt_mirantis.saltstack
- system.linux.system.repo.mcp.apt_mirantis.ubuntu
@@ -10,15 +7,12 @@
- system.linux.system.single.debian
- system.watchdog.server
- system.rsyslog.client.single
-- system.prometheus.collector
-- system.telegraf.agent
- system.openssh.server.team.lab
- system.openssh.server.team.tcpcloud
- system.openssh.server.team.mcp_qa
- system.auditd.server.ciscat
- cluster.virtual-offline-pike-ovs-dpdk.infra
- cluster.virtual-offline-pike-ovs-dpdk.openstack
-- cluster.virtual-offline-pike-ovs-dpdk.stacklight
parameters:
_param:
@@ -48,15 +42,8 @@
openstack_message_queue_node02_address: ${_param:openstack_control_node02_address}
openstack_message_queue_node03_address: ${_param:openstack_control_node03_address}
# stacklight service addresses
- stacklight_monitor_address: 172.16.10.253
- stacklight_monitor_node01_address: 172.16.10.107
- stacklight_monitor_node02_address: 172.16.10.108
- stacklight_monitor_node03_address: 172.16.10.109
- stacklight_telemetry_node01_address: ${_param:stacklight_monitor_node01_address}
- stacklight_log_address: ${_param:stacklight_monitor_address}
openstack_gateway_address: 172.16.10.110
openstack_gateway_node01_address: ${_param:openstack_gateway_address}
- stacklight_telemetry_address: ${_param:stacklight_monitor_address}
remote_rsyslog_host: 127.0.0.3
remote_rsyslog_port: 10514
rsyslog:
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/compute.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/compute.yml
index 3afa5eb..85e9a29 100644
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/compute.yml
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/compute.yml
@@ -6,8 +6,12 @@
- system.linux.network.hosts
- system.nova.compute.cluster
- system.neutron.compute.cluster
-- system.ceilometer.agent.cluster
-- system.prometheus.exporters.libvirt
+- system.cinder.volume.single
+- system.cinder.volume.backend.lvm
+- system.linux.storage.loopback
+- system.ceilometer.client.nova_compute
+- system.ceilometer.agent.telemetry.cluster
+- system.ceilometer.agent.polling.default
- cluster.virtual-offline-pike-ovs-dpdk
- system.nova.compute.nfv.hugepages
- system.nova.compute.nfv.cpu_pinning
@@ -30,20 +34,37 @@
compute_hugepages_size: 2M
compute_hugepages_count: 2048
compute_hugepages_mount: /mnt/hugepages_2M
+ loopback_device_size: 20
nova:
compute:
vncproxy_url: http://${_param:cluster_vip_address}:6080
- notification:
- driver: messagingv2
- topics: "notifications,${_param:stacklight_notification_topic}"
- notify_on:
- state_change: vm_and_task_state
message_queue:
members:
- host: ${_param:openstack_control_node01_address}
- host: ${_param:openstack_control_node02_address}
- host: ${_param:openstack_control_node03_address}
+ # Compute nodes on devcloud can have different CPUs, we need this
+ # to make sure live migration always work even when cmp VMs are on different computes
+ cpu_mode: custom
+ libvirt:
+ cpu_model: kvm64
+ logging:
+ level: 3
+ filters: '3:remote 4:event'
+ outputs: '3:syslog:libvirtd'
+ buffer_size: 64
+ qemu:
+ logging:
+ handler: logd
+ virtlog:
+ enabled: true
+ level: 3
+ filters: '3:remote 4:event'
+ outputs: '3:syslog:virtlogd'
+ max_clients: 1024
+ max_size: 2097152
+ max_backups: 3
neutron:
compute:
bgp_vpn:
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/control.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/control.yml
index 90f5f24..757102c 100644
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/control.yml
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/control.yml
@@ -21,24 +21,22 @@
- system.nova.control.cluster
- system.neutron.control.openvswitch.cluster
- system.cinder.control.cluster
+- system.cinder.control.backend.lvm
- system.heat.server.cluster
-- system.ceilometer.server.cluster
-- system.ceilometer.server.backend.influxdb
-- system.aodh.server.cluster
-- system.heka.ceilometer_collector.single
- system.designate.server.cluster
-- system.designate.server.backend.bind
-- system.bind.server.single
- system.galera.server.cluster
-- system.galera.server.database.aodh
-- system.galera.server.database.ceilometer
- system.galera.server.database.cinder
- system.galera.server.database.glance
-- system.galera.server.database.grafana
- system.galera.server.database.heat
- system.galera.server.database.keystone
- system.galera.server.database.nova
- system.galera.server.database.designate
+- system.galera.server.database.aodh
+- system.galera.server.database.panko
+- system.galera.server.database.gnocchi
+- system.ceilometer.client
+- system.ceilometer.client.cinder_volume
+- system.ceilometer.client.neutron
- system.haproxy.proxy.listen.openstack.nova-placement
- cluster.virtual-offline-pike-ovs-dpdk
parameters:
@@ -62,28 +60,25 @@
instance:
VIP:
virtual_router_id: 150
- bind:
- server:
- control:
- mgmt:
- enabled: true
- bind:
- address: ${_param:single_address}
- port: 953
- allow:
- - ${_param:openstack_control_node01_address}
- - ${_param:openstack_control_node02_address}
- - ${_param:openstack_control_node03_address}
- keys:
- - designate
keystone:
server:
admin_email: ${_param:admin_email}
- notification:
- driver: messagingv2
- topics: "notifications,${_param:stacklight_notification_topic}"
+
designate:
+ pool_manager:
+ enabled: ${_param:designate_pool_manager_enabled}
+ periodic_sync_interval: ${_param:designate_pool_manager_periodic_sync_interval}
server:
+ enabled: ${_param:designate_server_enabled}
+ domain_id: ${_param:designate_domain_id}
+ version: ${_param:designate_version}
+ backend:
+ pdns4:
+ api_token: ${_param:designate_pdns_api_key}
+ api_endpoint: ${_param:designate_pdns_api_endpoint}
+ mdns:
+ address: ${_param:designate_mdns_address}
+ port: ${_param:designate_mdns_port}
pools:
default:
description: 'test pool'
@@ -95,44 +90,22 @@
description: 'test target2'
masters: ${_param:designate_pool_target_masters}
options:
- host: ${_param:openstack_control_node02_address}
+ host: ${_param:openstack_dns_node02_address}
port: 53
- rndc_host: ${_param:openstack_control_node02_address}
- rndc_port: 953
- rndc_key_file: /etc/designate/rndc.key
- default2:
- type: ${_param:designate_pool_target_type}
- description: 'test target3'
- masters: ${_param:designate_pool_target_masters}
- options:
- host: ${_param:openstack_control_node03_address}
- port: 53
- rndc_host: ${_param:openstack_control_node03_address}
- rndc_port: 953
- rndc_key_file: /etc/designate/rndc.key
+ api_endpoint: "http://${_param:openstack_dns_node02_address}:${_param:powerdns_webserver_port}"
+ api_token: ${_param:designate_pdns_api_key}
quota:
zones: ${_param:designate_quota_zones}
- worker:
- enabled: ${_param:designate_worker_enabled}
+
glance:
server:
storage:
engine: file
images: []
workers: 1
- notification:
- driver: messagingv2
- topics: "notifications,${_param:stacklight_notification_topic}"
- heat:
- server:
- notification:
- driver: messagingv2
- topics: "notifications,${_param:stacklight_notification_topic}"
+
neutron:
server:
- notification:
- driver: messagingv2
- topics: "notifications,${_param:stacklight_notification_topic}"
l2gw:
enabled: true
nova:
@@ -148,14 +121,5 @@
vncproxy_url: http://${_param:cluster_vip_address}:6080
workers: 1
notification:
- driver: messagingv2
- topics: "notifications,${_param:stacklight_notification_topic}"
- cinder:
- volume:
- notification:
- driver: messagingv2
- topics: "notifications,${_param:stacklight_notification_topic}"
- controller:
- notification:
- driver: messagingv2
- topics: "notifications,${_param:stacklight_notification_topic}"
+ notify_on:
+ state_change: vm_and_task_state
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/dns.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/dns.yml
new file mode 100644
index 0000000..ca49ae6
--- /dev/null
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/dns.yml
@@ -0,0 +1,35 @@
+classes:
+- system.powerdns.server.single
+- cluster.virtual-offline-pike-ovs-dpdk
+
+parameters:
+ powerdns:
+ server:
+ api:
+ enabled: True
+ key: ${_param:designate_pdns_api_key}
+ axfr_ips:
+ ${_param:powerdns_axfr_ips}
+ bind:
+ address: ${_param:single_address}
+ overwrite_supermasters: True
+ supermasters:
+ ${_param:powerdns_supermasters}
+ webserver:
+ enabled: True
+ address: ${_param:single_address}
+ password: ${_param:powerdns_webserver_password}
+ port: ${_param:powerdns_webserver_port}
+ linux:
+ system:
+ package:
+ python-msgpack:
+ version: latest
+ network:
+ interface:
+ ens4:
+ enabled: true
+ type: eth
+ proto: static
+ address: ${_param:single_address}
+ netmask: 255.255.255.0
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/gateway.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/gateway.yml
index 9e0e96a..2dea160 100644
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/gateway.yml
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/gateway.yml
@@ -13,6 +13,9 @@
linux_system_codename: xenial
neutron:
gateway:
+ notification:
+ driver: messagingv2
+ topics: "notifications"
l2gw:
enabled: false
ovsdb_hosts:
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/init.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/init.yml
index 3e5bf97..663be7e 100644
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/init.yml
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/init.yml
@@ -1,14 +1,52 @@
parameters:
_param:
+ # openstack service addresses
+ openstack_database_address: 172.16.10.254
+ openstack_proxy_address: 172.16.10.121
+ openstack_proxy_node01_address: 172.16.10.121
+ openstack_control_address: 172.16.10.254
+ openstack_control_node01_hostname: ctl01
+ openstack_control_node02_hostname: ctl02
+ openstack_control_node03_hostname: ctl03
+ openstack_control_node01_address: 172.16.10.101
+ openstack_control_node02_address: 172.16.10.102
+ openstack_control_node03_address: 172.16.10.103
+ openstack_database_address: ${_param:openstack_control_address}
+ openstack_database_node01_address: ${_param:openstack_control_node01_address}
+ openstack_database_node02_address: ${_param:openstack_control_node02_address}
+ openstack_database_node03_address: ${_param:openstack_control_node03_address}
+ openstack_message_queue_address: ${_param:openstack_control_address}
+ openstack_message_queue_node01_address: ${_param:openstack_control_node01_address}
+ openstack_message_queue_node02_address: ${_param:openstack_control_node02_address}
+ openstack_message_queue_node03_address: ${_param:openstack_control_node03_address}
+ openstack_gateway_address: 172.16.10.110
+ openstack_gateway_node01_address: ${_param:openstack_gateway_address}
+ openstack_gateway_node01_external_address: 10.16.0.110
+ openstack_dns_node01_address: 172.16.10.111
+ openstack_dns_node02_address: 172.16.10.112
+ openstack_telemetry_address: 172.16.10.250
+ openstack_telemetry_node01_address: 172.16.10.45
+ openstack_telemetry_node02_address: 172.16.10.46
+ openstack_telemetry_node03_address: 172.16.10.47
+ openstack_telemetry_system_codename: xenial
+ openstack_telemetry_hostname: mdb
+ openstack_telemetry_node01_hostname: mdb01
+ openstack_telemetry_node02_hostname: mdb02
+ openstack_telemetry_node03_hostname: mdb03
+ openstack_telemetry_keepalived_password: hf9GQOjG2uPhkJ2Q
+ openstack_log_appender: true
+ openstack_ossyslog_handler_enabled: true
+
openstack_version: pike
+ apt_mk_version: nightly
cinder_version: ${_param:openstack_version}
- apt_mk_version: testing
- mcp_version: 2018.1
+ mcp_repo_version: 1.1
openstack_region: RegionOne
admin_email: root@localhost
- cluster_public_protocol: http
cluster_public_host: 172.16.10.254
+ telemetry_public_host: ${_param:openstack_telemetry_address}
neutron_public_protocol: http
+ cluster_public_protocol: http
neutron_control_dvr: False
neutron_tenant_network_types: "flat,vxlan"
neutron_l3_ha: False
@@ -19,8 +57,6 @@
neutron_compute_dvr: False
neutron_compute_agent_mode: legacy
neutron_compute_external_access: False
- neutron_enable_bgp_vpn: True
- neutron_bgp_vpn_driver: bagpipe
galera_server_cluster_name: openstack_cluster
galera_server_maintenance_password: workshop
galera_server_admin_password: workshop
@@ -32,45 +68,69 @@
cluster_vip_address: 172.16.10.254
cluster_local_address: ${_param:single_address}
cluster_node01_hostname: ctl01
- cluster_node01_address: 172.16.10.101
+ cluster_node01_address: ${_param:openstack_control_node01_address}
cluster_node02_hostname: ctl02
- cluster_node02_address: 172.16.10.102
+ cluster_node02_address: ${_param:openstack_control_node02_address}
cluster_node03_hostname: ctl03
- cluster_node03_address: 172.16.10.103
+ cluster_node03_address: ${_param:openstack_control_node03_address}
rabbitmq_secret_key: workshop
rabbitmq_admin_password: workshop
rabbitmq_openstack_password: workshop
rabbitmq_cold_password: workshop
+ powerdns_axfr_ips:
+ - ${_param:openstack_control_node01_address}
+ - ${_param:openstack_control_node02_address}
+ - ${_param:openstack_control_node03_address}
+ - 127.0.0.1
+ powerdns_supermasters:
+ - ip: ${_param:openstack_control_node01_address}
+ nameserver: ns1.example.org
+ account: master
+ - ip: ${_param:openstack_control_node02_address}
+ nameserver: ns2.example.org
+ account: master
+ - ip: ${_param:openstack_control_node03_address}
+ nameserver: ns3.example.org
+ account: master
+ powerdns_overwrite_supermasters: True
+ powerdns_webserver_password: gJ6n3gVaYP8eS
+ powerdns_webserver_port: 8081
designate_admin_api_enabled: true
- designate_bind9_rndc_key: 4pc+X4PDqb2q+5o72dISm72LM1Ds9X2EYZjqg+nmsS7FhdTwzFFY8l/iEDmHxnyjkA33EQC8H+z0fLLBunoitw==
+ designate_server_enabled: true
designate_domain_id: 5186883b-91fb-4891-bd49-e6769234a8fc
- designate_quota_zones: 40
+ designate_mdns_address: 0.0.0.0
+ designate_mdns_port: 53
+ designate_pdns_api_key: VxK9cMlFL5Ae
+ designate_pdns_api_endpoint: "http://${_param:openstack_dns_node01_address}:${_param:powerdns_webserver_port}"
+ designate_pool_manager_enabled: True
+ designate_pool_manager_periodic_sync_interval: '120'
designate_pool_ns_records:
- hostname: 'ns1.example.org.'
priority: 10
+ - hostname: 'ns2.example.org.'
+ priority: 20
+ - hostname: 'ns3.example.org.'
+ priority: 30
designate_pool_nameservers:
- - host: ${_param:openstack_control_node01_address}
+ - host: ${_param:openstack_dns_node01_address}
port: 53
- - host: ${_param:openstack_control_node02_address}
+ - host: ${_param:openstack_dns_node02_address}
port: 53
- - host: ${_param:openstack_control_node03_address}
- port: 53
- designate_pool_target_type: bind9
+ designate_pool_target_type: pdns4
designate_pool_target_masters:
- host: ${_param:openstack_control_node01_address}
- port: 5354
+ port: 53
- host: ${_param:openstack_control_node02_address}
- port: 5354
+ port: 53
- host: ${_param:openstack_control_node03_address}
- port: 5354
+ port: 53
designate_pool_target_options:
- host: ${_param:openstack_control_node01_address}
+ host: ${_param:openstack_dns_node01_address}
port: 53
- rndc_host: ${_param:openstack_control_node01_address}
- rndc_port: 953
- rndc_key_file: /etc/designate/rndc.key
+ api_token: ${_param:designate_pdns_api_key}
+ api_endpoint: ${_param:designate_pdns_api_endpoint}
+ designate_quota_zones: 40
designate_version: ${_param:openstack_version}
- designate_worker_enabled: true
glance_version: ${_param:openstack_version}
glance_service_host: ${_param:cluster_vip_address}
keystone_version: ${_param:openstack_version}
@@ -78,14 +138,20 @@
heat_version: ${_param:openstack_version}
heat_service_host: ${_param:cluster_vip_address}
heat_domain_admin_password: workshop
- ceilometer_version: ${_param:openstack_version}
- ceilometer_service_host: ${_param:cluster_vip_address}
cinder_version: ${_param:openstack_version}
cinder_service_host: ${_param:cluster_vip_address}
+ panko_version: ${_param:openstack_version}
+ panko_service_host: ${_param:openstack_telemetry_address}
+ ceilometer_version: ${_param:openstack_version}
+ ceilometer_service_host: ${_param:openstack_telemetry_address}
aodh_version: ${_param:openstack_version}
- aodh_service_host: ${_param:cluster_vip_address}
- ceilometer_graphite_publisher_host: 172.16.10.107
- ceilometer_graphite_publisher_port: 2013
+ aodh_service_host: ${_param:openstack_telemetry_address}
+ gnocchi_version: 4.0
+ gnocchi_service_host: ${_param:openstack_telemetry_address}
+ gnocchi_public_host: ${_param:telemetry_public_host}
+ aodh_public_host: ${_param:telemetry_public_host}
+ ceilometer_public_host: ${_param:telemetry_public_host}
+ panko_public_host: ${_param:telemetry_public_host}
nova_version: ${_param:openstack_version}
nova_service_host: ${_param:cluster_vip_address}
nova_vncproxy_url: http://${_param:cluster_vip_address}:8060
@@ -93,22 +159,23 @@
neutron_service_host: ${_param:cluster_vip_address}
glusterfs_service_host: ${_param:cluster_vip_address}
designate_service_host: ${_param:cluster_vip_address}
- metadata_password: workshop
+ metadata_password: password
mysql_admin_user: root
mysql_admin_password: workshop
mysql_cinder_password: workshop
- mysql_ceilometer_password: workshop
mysql_glance_password: workshop
mysql_grafana_password: workshop
mysql_heat_password: workshop
mysql_keystone_password: workshop
mysql_neutron_password: workshop
mysql_nova_password: workshop
- mysql_aodh_password: workshop
mysql_designate_password: workshop
+ mysql_ceilometer_password: workshop
+ mysql_panko_password: workshop
+ mysql_aodh_password: workshop
+ mysql_gnocchi_password: workshop
keystone_service_token: workshop
keystone_admin_password: workshop
- keystone_ceilometer_password: workshop
keystone_aodh_password: workshop
keystone_cinder_password: workshop
keystone_glance_password: workshop
@@ -117,19 +184,19 @@
keystone_neutron_password: workshop
keystone_nova_password: workshop
keystone_designate_password: workshop
- ceilometer_secret_key: workshop
+ keystone_aodh_password: workshop
+ keystone_panko_password: workshop
+ keystone_ceilometer_password: workshop
+ keystone_gnocchi_password: workshop
horizon_version: ${_param:openstack_version}
horizon_secret_key: opaesee8Que2yahJoh9fo0eefo1Aeyo6ahyei8zeiboh3aeth5loth7ieNa5xi5e
horizon_identity_host: ${_param:cluster_vip_address}
horizon_identity_encryption: none
horizon_identity_version: 2
- mongodb_server_replica_set: ceilometer
- mongodb_ceilometer_password: cloudlab
- mongodb_admin_password: cloudlab
- mongodb_shared_key: eoTh1AwahlahqueingeejooLughah4tei9feing0eeVaephooDi2li1TaeV1ooth
- ceilometer_influxdb_password: lmapass
- openstack_log_appender: true
- openstack_ossyslog_handler_enabled: true
+ ceilometer_secret_key: workshop
+ ceilometer_agent_default_polling_interval: 15
+ ceilometer_agent_default_polling_meters:
+ - "*"
linux:
network:
purge_hosts: true
@@ -179,6 +246,16 @@
names:
- cmp02
- cmp02.${_param:cluster_domain}
+ dns01:
+ address: ${_param:openstack_dns_node01_address}
+ names:
+ - dns01
+ - dns01.${_param:cluster_domain}
+ dns02:
+ address: ${_param:openstack_dns_node02_address}
+ names:
+ - dns02
+ - dns02.${_param:cluster_domain}
system:
user:
root:
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/share.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/share.yml
new file mode 100644
index 0000000..c804e24
--- /dev/null
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/share.yml
@@ -0,0 +1,19 @@
+classes:
+- system.linux.system.lowmem
+- system.linux.system.repo.mcp.apt_mirantis.ubuntu
+- system.linux.system.repo_local.mcp.apt_mirantis.openstack
+- system.linux.system.repo_local.mcp.extra
+- system.linux.system.repo.mcp.apt_mirantis.saltstack
+- cluster.virtual-offline-pike-ovs-dpdk
+parameters:
+
+ linux:
+ network:
+ interface:
+ ens4:
+ enabled: true
+ type: eth
+ proto: static
+ address: ${_param:single_address}
+ netmask: 255.255.255.0
+
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/telemetry.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/telemetry.yml
new file mode 100644
index 0000000..db23a37
--- /dev/null
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/telemetry.yml
@@ -0,0 +1,106 @@
+classes:
+- system.linux.system.repo_local.mcp.apt_mirantis.openstack
+- system.linux.system.repo_local.mcp.extra
+- system.linux.system.repo.mcp.apt_mirantis.saltstack
+- system.linux.system.repo.mcp.apt_mirantis.glusterfs
+- system.linux.system.repo_local.mcp.apt_mirantis.ceph
+- system.memcached.server.single
+- system.apache.server.single
+- system.apache.server.site.gnocchi
+- system.apache.server.site.panko
+- system.glusterfs.server.cluster
+- system.glusterfs.client.cluster
+- system.glusterfs.client.volume.gnocchi
+- system.glusterfs.server.volume.gnocchi
+- service.redis.server.single
+- system.gnocchi.server.cluster
+- system.gnocchi.common.storage.incoming.redis
+- system.gnocchi.common.storage.file
+- system.gnocchi.common.coordination.redis
+- system.ceilometer.server.telemetry.cluster
+- system.ceilometer.server.coordination.redis
+- system.aodh.server.cluster
+- system.aodh.server.coordination.redis
+- system.panko.server.cluster
+- system.ceilometer.server.backend.gnocchi
+- cluster.virtual-offline-pike-ovs-dpdk
+parameters:
+ _param:
+ gnocchi_statsd_resource_id: 07f26121-5777-48ba-8a0b-d70468133dd9
+ keepalived_openstack_telemetry_vip_address: ${_param:openstack_telemetry_address}
+ keepalived_openstack_telemetry_vip_password: ${_param:openstack_telemetry_keepalived_password}
+ keepalived_openstack_telemetry_vip_interface: ens4
+ cluster_vip_address: ${_param:openstack_telemetry_address}
+ cluster_local_address: ${_param:single_address}
+ cluster_node01_hostname: ${_param:openstack_telemetry_node01_hostname}
+ cluster_node01_address: ${_param:openstack_telemetry_node01_address}
+ cluster_node02_hostname: ${_param:openstack_telemetry_node02_hostname}
+ cluster_node02_address: ${_param:openstack_telemetry_node02_address}
+ cluster_node03_hostname: ${_param:openstack_telemetry_node03_hostname}
+ cluster_node03_address: ${_param:openstack_telemetry_node03_address}
+ glusterfs_service_host: ${_param:openstack_telemetry_address}
+ gnocchi_glusterfs_service_host: ${_param:glusterfs_service_host}
+ redis_sentinel_node01_address: ${_param:openstack_telemetry_node01_address}
+ redis_sentinel_node02_address: ${_param:openstack_telemetry_node02_address}
+ redis_sentinel_node03_address: ${_param:openstack_telemetry_node03_address}
+ openstack_telemetry_redis_url: redis://${_param:redis_sentinel_node01_address}:26379?sentinel=master_1&sentinel_fallback=${_param:redis_sentinel_node02_address}:26379&sentinel_fallback=${_param:redis_sentinel_node03_address}:26379
+ gnocchi_coordination_url: ${_param:openstack_telemetry_redis_url}
+ gnocchi_storage_incoming_redis_url: ${_param:openstack_telemetry_redis_url}
+ glusterfs_node01_address: ${_param:cluster_node01_address}
+ glusterfs_node02_address: ${_param:cluster_node02_address}
+ glusterfs_node03_address: ${_param:cluster_node03_address}
+ linux:
+ network:
+ interface:
+ ens4:
+ enabled: true
+ type: eth
+ proto: static
+ address: ${_param:single_address}
+ netmask: 255.255.255.0
+ keepalived:
+ cluster:
+ instance:
+ VIP:
+ virtual_router_id: 160
+ redis:
+ server:
+ version: 3.0
+ bind:
+ address: ${_param:single_address}
+ cluster:
+ enabled: True
+ mode: sentinel
+ role: ${_param:redis_cluster_role}
+ quorum: 2
+ master:
+ host: ${_param:cluster_node01_address}
+ port: 6379
+ sentinel:
+ address: ${_param:single_address}
+ apache:
+ server:
+ modules:
+ - wsgi
+ gnocchi:
+ common:
+ database:
+ host: ${_param:openstack_database_address}
+ server:
+ pkgs:
+ # TODO: move python-memcache installation to formula
+ - gnocchi-api
+ - gnocchi-metricd
+ - python-memcache
+ aodh:
+ server:
+ coordination_backend:
+ url: ${_param:openstack_telemetry_redis_url}
+ identity:
+ host: ${_param:openstack_control_address}
+ ceilometer:
+ server:
+ coordination_backend:
+ url: ${_param:openstack_telemetry_redis_url}
+ identity:
+ host: ${_param:openstack_control_address}
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/stacklight/client.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/stacklight/client.yml
deleted file mode 100644
index 4f06868..0000000
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/stacklight/client.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-classes:
-- system.docker.client
-- system.elasticsearch.client.single
-- system.grafana.client
-- system.grafana.client.datasource.prometheus
-- system.kibana.client.single
-- cluster.virtual-offline-pike-ovs-dpdk
-parameters:
- _param:
- # Elasticsearch/Kibana client parameters
- stacklight_log_address: ${_param:stacklight_monitor_address}
- # Grafana client parameters
- grafana_address: ${_param:stacklight_monitor_address}
- grafana_port: 15013
- grafana_user: admin
- grafana_password: ${_param:grafana_admin_password}
- grafana_prometheus_address: ${_param:stacklight_monitor_address}
- grafana_prometheus_port: 15016
-
- cluster_node01_address: ${_param:stacklight_monitor_node01_address}
- cluster_node02_address: ${_param:stacklight_monitor_node02_address}
- cluster_node03_address: ${_param:stacklight_monitor_node03_address}
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/stacklight/init.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/stacklight/init.yml
deleted file mode 100644
index 883bad0..0000000
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/stacklight/init.yml
+++ /dev/null
@@ -1,35 +0,0 @@
-parameters:
- _param:
- linux_system_codename: xenial
- prometheus_control_address: ${_param:stacklight_monitor_address}
- heka_elasticsearch_host: ${_param:stacklight_monitor_address}
- elasticsearch_port: 9200
- stacklight_environment: ${_param:cluster_domain}
- stacklight_notification_topic: stacklight_notifications
- grafana_admin_password: admin
- grafana_database_type: mysql
- grafana_database_host: ${_param:openstack_database_address}
- grafana_database_password: ${_param:mysql_grafana_password}
- linux:
- network:
- host:
- mon:
- address: ${_param:stacklight_monitor_address}
- names:
- - mon
- - mon.${_param:cluster_domain}
- mon01:
- address: ${_param:stacklight_monitor_node01_address}
- names:
- - mon01
- - mon01.${_param:cluster_domain}
- mon02:
- address: ${_param:stacklight_monitor_node02_address}
- names:
- - mon02
- - mon02.${_param:cluster_domain}
- mon03:
- address: ${_param:stacklight_monitor_node03_address}
- names:
- - mon03
- - mon03.${_param:cluster_domain}
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/stacklight/proxy.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/stacklight/proxy.yml
deleted file mode 100644
index 18cfdd7..0000000
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/stacklight/proxy.yml
+++ /dev/null
@@ -1,17 +0,0 @@
-classes:
-- system.nginx.server.single
-- system.nginx.server.proxy.stacklight.grafana
-- system.nginx.server.proxy.stacklight.kibana
-- system.nginx.server.proxy.monitoring.prometheus_server
-- system.nginx.server.proxy.monitoring.prometheus_alertmanager
-- system.salt.minion.cert.proxy
-- cluster.virtual-offline-pike-ovs-dpdk
-parameters:
- _param:
- nginx_proxy_grafana_port: 15013
- nginx_proxy_ssl:
- enabled: true
- authority: ${_param:salt_minion_ca_authority}
- engine: salt
- mode: secure
- salt_minion_ca_host: cfg01.${_param:cluster_domain}
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/stacklight/server.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/stacklight/server.yml
deleted file mode 100644
index 369c95f..0000000
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/stacklight/server.yml
+++ /dev/null
@@ -1,75 +0,0 @@
-classes:
-- system.docker.host
-- system.linux.system.repo_local.mcp.apt_mirantis.influxdb
-- system.linux.system.repo_local.mcp.extra
-- system.linux.system.repo_local.mcp.apt_mirantis.elastic.5x
-- system.linux.system.repo_local.mcp.apt_mirantis.kibana.5x
-- system.linux.system.repo_local.mcp.apt_mirantis.docker
-- system.heka.remote_collector.container
-- system.heka.remote_collector.input.amqp
-- system.heka.remote_collector.output.elasticsearch
-- system.heka.remote_collector.output.telegraf
-- system.elasticsearch.server.cluster
-- system.elasticsearch.server.curator
-- system.kibana.server.single
-- system.haproxy.proxy.listen.stacklight.elasticsearch
-- system.haproxy.proxy.listen.stacklight.kibana
-- system.haproxy.proxy.listen.stacklight.influxdb_relay
-- service.haproxy.proxy.single
-- system.influxdb.relay.cluster
-- system.influxdb.server.single
-- system.influxdb.database.stacklight
-- system.influxdb.database.ceilometer
-- system.keepalived.cluster.instance.prometheus_server_vip
-- system.telegraf.agent.remote
-- system.prometheus.server.remote_write.docker
-- system.prometheus.server.alertmanager.dns
-- system.prometheus.server.target.dns
-- system.docker.swarm.stack.monitoring.prometheus_global
-- system.docker.swarm.stack.monitoring.remote_collector
-- system.docker.swarm.stack.dashboard
-- cluster.virtual-offline-pike-ovs-dpdk
-parameters:
- _param:
- heka_amqp_host: ${_param:openstack_control_address}
- kibana_elasticsearch_host: ${_param:stacklight_monitor_address}
- elasticsearch_version: 5
- kibana_version: 5
- keepalived_prometheus_vip_address: ${_param:stacklight_monitor_address}
- keepalived_prometheus_vip_password: 'password'
- keepalived_prometheus_vip_interface: ens4
- cluster_vip_address: ${_param:stacklight_monitor_address}
- cluster_local_address: ${_param:single_address}
- cluster_elasticsearch_port: 9200
- cluster_kibana_port: 5601
- cluster_node01_hostname: mon01
- cluster_node01_address: ${_param:stacklight_monitor_node01_address}
- cluster_node02_hostname: mon02
- cluster_node02_address: ${_param:stacklight_monitor_node02_address}
- cluster_node03_hostname: mon03
- cluster_node03_address: ${_param:stacklight_monitor_node03_address}
- docker_image_alertmanager: apt:5000/alertmanager:${_param:apt_mk_version}
- docker_image_pushgateway: apt:5000/pushgateway:${_param:apt_mk_version}
- docker_image_prometheus: apt:5000/prometheus:${_param:apt_mk_version}
- docker_image_remote_agent: apt:5000/telegraf:${_param:apt_mk_version}
- docker_image_remote_storage_adapter: apt:5000/remote_storage_adapter:${_param:apt_mk_version}
- docker_image_remote_collector: apt:5000/heka:${_param:apt_mk_version}
- docker_image_prometheus_relay: apt:5000/prometheus_relay:${_param:apt_mk_version}
- docker_image_grafana: apt:5000/grafana:${_param:apt_mk_version}
- influxdb_port: 8086
- influxdb_admin_password: password
- influxdb_stacklight_password: lmapass
- prometheus_influxdb_url: "http://${_param:stacklight_monitor_address}:${_param:influxdb_port}/"
- prometheus_influxdb_db: lma
- prometheus_influxdb_username: lma
- prometheus_influxdb_password: ${_param:influxdb_stacklight_password}
- remote_collector_telegraf_host: monitoring_remote_agent
- linux:
- network:
- interface:
- ens4:
- enabled: true
- type: eth
- proto: static
- address: ${_param:single_address}
- netmask: 255.255.255.0