Merge "Extended system_codename and Interface name"
diff --git a/classes/cluster/aaa_ha_freeipa/aaa/freeipa_client.yml b/classes/cluster/aaa_ha_freeipa/aaa/freeipa_client.yml
index c9150cb..438737a 100644
--- a/classes/cluster/aaa_ha_freeipa/aaa/freeipa_client.yml
+++ b/classes/cluster/aaa_ha_freeipa/aaa/freeipa_client.yml
@@ -2,6 +2,7 @@
 #- system.haproxy.proxy.listen.
 #- system.linux.system.repo.freeipa
 #- system.salt.minion.cert.
+- system.linux.network.hosts
 - system.freeipa.client.cluster
 - system.freeipa.client.dns
 - system.freeipa.client.nsupdate
diff --git a/classes/cluster/ceph_ha/ceph/cfs.yml b/classes/cluster/ceph_ha/ceph/cfs.yml
index a47023e..084de38 100644
--- a/classes/cluster/ceph_ha/ceph/cfs.yml
+++ b/classes/cluster/ceph_ha/ceph/cfs.yml
@@ -1,3 +1,4 @@
 classes:
 - system.linux.system.repo.ubuntu
+- system.linux.network.hosts
 - cluster.ceph_ha.infra
diff --git a/classes/cluster/ceph_ha/ceph/mon.yml b/classes/cluster/ceph_ha/ceph/mon.yml
index 33e9d6d..055a2c8 100644
--- a/classes/cluster/ceph_ha/ceph/mon.yml
+++ b/classes/cluster/ceph_ha/ceph/mon.yml
@@ -1,3 +1,4 @@
 classes:
 - system.ceph.mon.cluster
-- cluster.ceph_ha.ceph.common
\ No newline at end of file
+- cluster.ceph_ha.ceph.common
+- system.linux.network.hosts
diff --git a/classes/cluster/ceph_ha/ceph/osd.yml b/classes/cluster/ceph_ha/ceph/osd.yml
index a01c57e..85e650a 100644
--- a/classes/cluster/ceph_ha/ceph/osd.yml
+++ b/classes/cluster/ceph_ha/ceph/osd.yml
@@ -1,5 +1,6 @@
 classes:
 - service.ceph.osd.cluster
+- system.linux.network.hosts
 - cluster.ceph_ha.ceph.common
 parameters:
   ceph:
diff --git a/classes/cluster/ceph_ha/infra/config.yml b/classes/cluster/ceph_ha/infra/config.yml
index 806bbce..123cb65 100644
--- a/classes/cluster/ceph_ha/infra/config.yml
+++ b/classes/cluster/ceph_ha/infra/config.yml
@@ -87,7 +87,7 @@
             ceph_osd_node03_address:
               value_template: <<node_control_ip>>
         ceph_mon_01:
-          expression: <<node_hostname>>__equals__cmn03
+          expression: <<node_hostname>>__equals__cmn01
           cluster_param:
             ceph_mon_node01_address:
               value_template: <<node_control_ip>>
diff --git a/classes/cluster/k8s_aio_calico/kubernetes/compute.yml b/classes/cluster/k8s_aio_calico/kubernetes/compute.yml
index 56843a7..63f79b9 100644
--- a/classes/cluster/k8s_aio_calico/kubernetes/compute.yml
+++ b/classes/cluster/k8s_aio_calico/kubernetes/compute.yml
@@ -1,6 +1,7 @@
 classes:
 - system.linux.system.repo.docker
 - system.kubernetes.pool.cluster
+- system.linux.network.hosts
 - system.salt.minion.cert.k8s_client
 - system.salt.minion.cert.etcd_client
 - cluster.k8s_aio_calico
diff --git a/classes/cluster/k8s_aio_contrail/kubernetes/compute.yml b/classes/cluster/k8s_aio_contrail/kubernetes/compute.yml
index ca0e765..5fd2102 100644
--- a/classes/cluster/k8s_aio_contrail/kubernetes/compute.yml
+++ b/classes/cluster/k8s_aio_contrail/kubernetes/compute.yml
@@ -1,6 +1,7 @@
 classes:
 - system.linux.system.repo.docker
 - system.kubernetes.pool.cluster
+- system.linux.network.hosts
 - system.salt.minion.cert.k8s_client
 - system.salt.minion.cert.etcd_client
 - cluster.k8s_aio_contrail.infra
diff --git a/classes/cluster/k8s_ha_calico/kubernetes/compute.yml b/classes/cluster/k8s_ha_calico/kubernetes/compute.yml
index 8716a14..d9b8de4 100644
--- a/classes/cluster/k8s_ha_calico/kubernetes/compute.yml
+++ b/classes/cluster/k8s_ha_calico/kubernetes/compute.yml
@@ -1,6 +1,7 @@
 classes:
 - system.linux.system.repo.docker
 - system.kubernetes.pool.cluster
+- system.linux.network.hosts
 - system.salt.minion.cert.k8s_client
 - system.salt.minion.cert.etcd_client
 - cluster.k8s_ha_calico
diff --git a/classes/cluster/k8s_ha_calico_syndic/kubernetes/compute.yml b/classes/cluster/k8s_ha_calico_syndic/kubernetes/compute.yml
index 0be36d0..ac070a8 100644
--- a/classes/cluster/k8s_ha_calico_syndic/kubernetes/compute.yml
+++ b/classes/cluster/k8s_ha_calico_syndic/kubernetes/compute.yml
@@ -1,6 +1,7 @@
 classes:
 - system.linux.system.repo.docker
 - system.kubernetes.pool.cluster
+- system.linux.network.hosts
 - system.salt.minion.cert.k8s_client
 - system.salt.minion.cert.etcd_client
 - cluster.k8s_ha_calico_syndic
diff --git a/classes/cluster/k8s_ha_contrail/kubernetes/compute.yml b/classes/cluster/k8s_ha_contrail/kubernetes/compute.yml
index 6d06f59..8a4855b 100644
--- a/classes/cluster/k8s_ha_contrail/kubernetes/compute.yml
+++ b/classes/cluster/k8s_ha_contrail/kubernetes/compute.yml
@@ -1,6 +1,7 @@
 classes:
 - system.linux.system.repo.docker
 - system.kubernetes.pool.cluster
+- system.linux.network.hosts
 - system.salt.minion.cert.k8s_client
 - system.salt.minion.cert.etcd_client
 - cluster.k8s_ha_contrail.opencontrail.compute
diff --git a/classes/cluster/model_manager/model_manager/dashboard.yml b/classes/cluster/model_manager/model_manager/dashboard.yml
index 4e0e85e..4dbdcee 100644
--- a/classes/cluster/model_manager/model_manager/dashboard.yml
+++ b/classes/cluster/model_manager/model_manager/dashboard.yml
@@ -2,6 +2,7 @@
 - system.linux.system.repo.ubuntu
 - system.linux.system.repo.mcp.extra
 - system.linux.system.repo.saltstack.xenial
+- system.linux.network.hosts
 - system.model_manager.server.integration
 - cluster.model_manager.model_manager.identity
 - cluster.model_manager
diff --git a/classes/cluster/model_manager/model_manager/init.yml b/classes/cluster/model_manager/model_manager/init.yml
index 0e5dded..781d1f4 100644
--- a/classes/cluster/model_manager/model_manager/init.yml
+++ b/classes/cluster/model_manager/model_manager/init.yml
@@ -14,6 +14,7 @@
     # identity params
     openstack_region: RegionOne
     admin_email: root@localhost
+    openstack_version: mitaka
     keystone_version: mitaka
     keystone_service_token: qzWYJmNiiXYRSipdWda0
     rabbitmq_openstack_password: workshop
diff --git a/classes/cluster/sl_k8s_calico/infra/init.yml b/classes/cluster/sl_k8s_calico/infra/init.yml
index 5a4b58d..027faca 100644
--- a/classes/cluster/sl_k8s_calico/infra/init.yml
+++ b/classes/cluster/sl_k8s_calico/infra/init.yml
@@ -9,9 +9,6 @@
 - system.openssh.server.team.mcp_qa
 - system.openssh.server.team.k8s_team
 - system.rsyslog.client.single
-- system.telegraf.agent
-- system.prometheus.collector
-- service.grafana.collector
 parameters:
   _param:
     # infra service addresses
diff --git a/classes/cluster/sl_k8s_calico/kubernetes/compute.yml b/classes/cluster/sl_k8s_calico/kubernetes/compute.yml
index 81cb2d7..057919c 100644
--- a/classes/cluster/sl_k8s_calico/kubernetes/compute.yml
+++ b/classes/cluster/sl_k8s_calico/kubernetes/compute.yml
@@ -1,6 +1,7 @@
 classes:
 - system.linux.system.repo.docker
 - system.kubernetes.pool.cluster
+- system.linux.network.hosts
 - system.salt.minion.cert.k8s_client
 - system.salt.minion.cert.etcd_client
 - cluster.sl_k8s_calico
diff --git a/classes/cluster/sl_k8s_calico/stacklight/client.yml b/classes/cluster/sl_k8s_calico/stacklight/client.yml
index 5fd4043..393449c 100644
--- a/classes/cluster/sl_k8s_calico/stacklight/client.yml
+++ b/classes/cluster/sl_k8s_calico/stacklight/client.yml
@@ -4,9 +4,6 @@
 - system.grafana.client
 - system.grafana.client.datasource.prometheus
 - system.kibana.client.single
-- system.heka.log_collector.single
-- system.heka.log_collector.output.telegraf
-- cluster.sl_k8s_calico
 parameters:
   _param:
     # Elasticsearch/Kibana client parameters
diff --git a/classes/cluster/sl_k8s_calico/stacklight/init.yml b/classes/cluster/sl_k8s_calico/stacklight/init.yml
index 6df9960..3237575 100644
--- a/classes/cluster/sl_k8s_calico/stacklight/init.yml
+++ b/classes/cluster/sl_k8s_calico/stacklight/init.yml
@@ -1,5 +1,8 @@
 classes:
+- service.grafana.collector
 - system.linux.system.repo.mcp.extra
+- system.heka.log_collector.single
+- system.heka.log_collector.output.telegraf
 - system.prometheus.collector
 - system.telegraf.agent
 parameters:
diff --git a/classes/cluster/sl_k8s_contrail/infra/init.yml b/classes/cluster/sl_k8s_contrail/infra/init.yml
index 92f6893..d5b43d9 100644
--- a/classes/cluster/sl_k8s_contrail/infra/init.yml
+++ b/classes/cluster/sl_k8s_contrail/infra/init.yml
@@ -1,11 +1,8 @@
 classes:
-- service.grafana.collector
 - system.linux.system.repo.mcp.extra
 - system.linux.system.repo.mcp.salt
 - system.linux.system.repo.ubuntu
 - system.rsyslog.client.single
-- system.telegraf.agent
-- system.prometheus.collector
 parameters:
   _param:
     # infra service addresses
diff --git a/classes/cluster/sl_k8s_contrail/kubernetes/compute.yml b/classes/cluster/sl_k8s_contrail/kubernetes/compute.yml
index fb174a5..351f55e 100644
--- a/classes/cluster/sl_k8s_contrail/kubernetes/compute.yml
+++ b/classes/cluster/sl_k8s_contrail/kubernetes/compute.yml
@@ -1,6 +1,7 @@
 classes:
 - system.linux.system.repo.docker
 - system.kubernetes.pool.cluster
+- system.linux.network.hosts
 - system.salt.minion.cert.k8s_client
 - system.salt.minion.cert.etcd_client
 - cluster.sl_k8s_contrail.opencontrail.compute
diff --git a/classes/cluster/sl_k8s_contrail/stacklight/client.yml b/classes/cluster/sl_k8s_contrail/stacklight/client.yml
index 6cb2915..393449c 100644
--- a/classes/cluster/sl_k8s_contrail/stacklight/client.yml
+++ b/classes/cluster/sl_k8s_contrail/stacklight/client.yml
@@ -4,9 +4,6 @@
 - system.grafana.client
 - system.grafana.client.datasource.prometheus
 - system.kibana.client.single
-- system.heka.log_collector.single
-- system.heka.log_collector.output.telegraf
-- cluster.sl_k8s_contrail
 parameters:
   _param:
     # Elasticsearch/Kibana client parameters
diff --git a/classes/cluster/sl_k8s_contrail/stacklight/init.yml b/classes/cluster/sl_k8s_contrail/stacklight/init.yml
index 48ad663..f57c228 100644
--- a/classes/cluster/sl_k8s_contrail/stacklight/init.yml
+++ b/classes/cluster/sl_k8s_contrail/stacklight/init.yml
@@ -1,5 +1,8 @@
 classes:
+- service.grafana.collector
 - system.linux.system.repo.mcp.extra
+- system.heka.log_collector.single
+- system.heka.log_collector.output.telegraf
 - system.prometheus.collector
 - system.telegraf.agent
 parameters:
@@ -53,4 +56,4 @@
           - ${_param:stacklight_node03_hostname}.${_param:cluster_domain}
     system:
       name: ${_param:infra_config_hostname}
-      domain: ${_param:cluster_domain}
\ No newline at end of file
+      domain: ${_param:cluster_domain}
diff --git a/classes/cluster/sl_os_contrail/infra/config.yml b/classes/cluster/sl_os_contrail/infra/config.yml
index fd68737..d625393 100755
--- a/classes/cluster/sl_os_contrail/infra/config.yml
+++ b/classes/cluster/sl_os_contrail/infra/config.yml
@@ -37,7 +37,6 @@
 - system.mysql.client.database.neutron
 - system.reclass.storage.system.openstack_control_cluster
 - system.reclass.storage.system.opencontrail_control_cluster
-- system.reclass.storage.system.stacklightv2_server_cluster
 - cluster.sl_os_contrail.openstack.proxy
 - cluster.sl_os_contrail.stacklight.proxy
 - cluster.sl_os_contrail.openstack.dashboard
@@ -150,6 +149,7 @@
           cluster_param:
             stacklight_monitor_node03_address:
               value_template: <<node_control_ip>>
+      node:
         prx_node:
           name: ${_param:openstack_proxy_node01_hostname}
           domain: ${_param:cluster_domain}
@@ -163,7 +163,6 @@
           name: ${_param:stacklight_monitor_node01_hostname}
           domain: ${_param:cluster_domain}
           classes:
-          - service.galera.master.cluster
           - system.docker.swarm.master
           - cluster.${_param:cluster_name}.stacklight.client
           - cluster.${_param:cluster_name}.stacklight.server
@@ -172,12 +171,10 @@
             linux_system_codename: xenial
             single_address: ${_param:stacklight_monitor_node01_address}
             keepalived_vip_priority: 100
-            mysql_cluster_role: master
         stacklight_monitor_node02:
           name: ${_param:stacklight_monitor_node02_hostname}
           domain: ${_param:cluster_domain}
           classes:
-          - service.galera.slave.cluster
           - system.docker.swarm.manager
           - cluster.${_param:cluster_name}.stacklight.server
           params:
@@ -185,12 +182,10 @@
             linux_system_codename: xenial
             single_address: ${_param:stacklight_monitor_node02_address}
             keepalived_vip_priority: 101
-            mysql_cluster_role: slave
         stacklight_monitor_node03:
           name: ${_param:stacklight_monitor_node03_hostname}
           domain: ${_param:cluster_domain}
           classes:
-          - service.galera.slave.cluster
           - system.docker.swarm.manager
           - cluster.${_param:cluster_name}.stacklight.server
           params:
@@ -198,7 +193,6 @@
             linux_system_codename: xenial
             single_address: ${_param:stacklight_monitor_node03_address}
             keepalived_vip_priority: 102
-            mysql_cluster_role: slave
         opencontrail_control_node01:
           params:
             rabbitmq_cluster_role: master
@@ -207,4 +201,22 @@
             rabbitmq_cluster_role: slave
         opencontrail_control_node03:
           params:
-            rabbitmq_cluster_role: slave
\ No newline at end of file
+            rabbitmq_cluster_role: slave
+        openstack_control_node01:
+          classes:
+          - service.galera.master.cluster
+          params:
+            linux_system_codename: xenial
+            mysql_cluster_role: master
+        openstack_control_node02:
+          classes:
+          - service.galera.slave.cluster
+          params:
+            linux_system_codename: xenial
+            mysql_cluster_role: slave
+        openstack_control_node03:
+          classes:
+          - service.galera.slave.cluster
+          params:
+            linux_system_codename: xenial
+            mysql_cluster_role: slave
\ No newline at end of file
diff --git a/classes/cluster/sl_os_contrail/init.yml b/classes/cluster/sl_os_contrail/init.yml
index 2829b40..7da2169 100755
--- a/classes/cluster/sl_os_contrail/init.yml
+++ b/classes/cluster/sl_os_contrail/init.yml
@@ -1,5 +1,4 @@
 classes:
-- service.grafana.collector
 - system.linux.system.repo.mcp.extra
 - system.linux.system.single
 - system.rsyslog.client.single
@@ -7,8 +6,6 @@
 - system.openssh.server.team.tcpcloud
 - system.openssh.server.team.stacklight
 - system.openssh.server.team.mcp_qa
-- system.prometheus.collector
-- system.telegraf.agent
 - cluster.sl_os_contrail.infra
 - cluster.sl_os_contrail.opencontrail
 - cluster.sl_os_contrail.openstack
diff --git a/classes/cluster/sl_os_contrail/stacklight/client.yml b/classes/cluster/sl_os_contrail/stacklight/client.yml
index 2ed7c46..40a4c38 100755
--- a/classes/cluster/sl_os_contrail/stacklight/client.yml
+++ b/classes/cluster/sl_os_contrail/stacklight/client.yml
@@ -3,9 +3,6 @@
 - system.grafana.client
 - system.grafana.client.datasource.prometheus
 - system.kibana.client.single
-- system.heka.log_collector.single
-- system.heka.log_collector.output.telegraf
-- cluster.sl_os_contrail
 parameters:
   _param:
     # Elasticsearch/Kibana client parameters
diff --git a/classes/cluster/sl_os_contrail/stacklight/init.yml b/classes/cluster/sl_os_contrail/stacklight/init.yml
index 6d1102c..8c63110 100755
--- a/classes/cluster/sl_os_contrail/stacklight/init.yml
+++ b/classes/cluster/sl_os_contrail/stacklight/init.yml
@@ -1,5 +1,8 @@
 classes:
+- service.grafana.collector
 - system.linux.system.repo.mcp.extra
+- system.heka.log_collector.single
+- system.heka.log_collector.output.telegraf
 - system.prometheus.collector
 - system.telegraf.agent
 parameters:
diff --git a/classes/cluster/sl_os_contrail/stacklight/server.yml b/classes/cluster/sl_os_contrail/stacklight/server.yml
index a4a90b2..819404c 100755
--- a/classes/cluster/sl_os_contrail/stacklight/server.yml
+++ b/classes/cluster/sl_os_contrail/stacklight/server.yml
@@ -80,9 +80,4 @@
   elasticsearch:
     server:
       heap:
-        size: 1
-  keepalived:
-    cluster:
-      instance:
-        VIP:
-          enabled: false
\ No newline at end of file
+        size: 1
\ No newline at end of file
diff --git a/classes/cluster/sl_os_ovs/stacklight/client.yml b/classes/cluster/sl_os_ovs/stacklight/client.yml
index 9d5bb82..4d473ac 100644
--- a/classes/cluster/sl_os_ovs/stacklight/client.yml
+++ b/classes/cluster/sl_os_ovs/stacklight/client.yml
@@ -3,9 +3,6 @@
 - system.grafana.client
 - system.grafana.client.datasource.prometheus
 - system.kibana.client.single
-- system.heka.log_collector.single
-- system.heka.log_collector.output.telegraf
-- cluster.sl_os_ovs
 parameters:
   _param:
     # Elasticsearch/Kibana client parameters
diff --git a/classes/cluster/sl_os_ovs/stacklight/init.yml b/classes/cluster/sl_os_ovs/stacklight/init.yml
index 86b0dc3..3e56adb 100644
--- a/classes/cluster/sl_os_ovs/stacklight/init.yml
+++ b/classes/cluster/sl_os_ovs/stacklight/init.yml
@@ -1,5 +1,8 @@
 classes:
+- service.grafana.collector
 - system.linux.system.repo.mcp.extra
+- system.heka.log_collector.single
+- system.heka.log_collector.output.telegraf
 - system.prometheus.collector
 - system.telegraf.agent
 parameters:
diff --git a/classes/cluster/virtual-mcp-ocata-cicd/openstack/init.yml b/classes/cluster/virtual-mcp-ocata-cicd/openstack/init.yml
index 3cda036..b21c692 100644
--- a/classes/cluster/virtual-mcp-ocata-cicd/openstack/init.yml
+++ b/classes/cluster/virtual-mcp-ocata-cicd/openstack/init.yml
@@ -131,6 +131,7 @@
 
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp-ocata-dvr/openstack/init.yml b/classes/cluster/virtual-mcp-ocata-dvr/openstack/init.yml
index 537cafb..9b67ace 100644
--- a/classes/cluster/virtual-mcp-ocata-dvr/openstack/init.yml
+++ b/classes/cluster/virtual-mcp-ocata-dvr/openstack/init.yml
@@ -121,6 +121,7 @@
     ceilometer_influxdb_password: lmapass
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp-ocata-ovs/openstack/init.yml b/classes/cluster/virtual-mcp-ocata-ovs/openstack/init.yml
index cd42a02..46f4365 100644
--- a/classes/cluster/virtual-mcp-ocata-ovs/openstack/init.yml
+++ b/classes/cluster/virtual-mcp-ocata-ovs/openstack/init.yml
@@ -116,6 +116,7 @@
     mongodb_shared_key: eoTh1AwahlahqueingeejooLughah4tei9feing0eeVaephooDi2li1TaeV1ooth
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp05-dvr/openstack/init.yml b/classes/cluster/virtual-mcp05-dvr/openstack/init.yml
index 28a045d..39851a2 100644
--- a/classes/cluster/virtual-mcp05-dvr/openstack/init.yml
+++ b/classes/cluster/virtual-mcp05-dvr/openstack/init.yml
@@ -83,6 +83,7 @@
     mongodb_shared_key: eoTh1AwahlahqueingeejooLughah4tei9feing0eeVaephooDi2li1TaeV1ooth
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp05-ovs/openstack/init.yml b/classes/cluster/virtual-mcp05-ovs/openstack/init.yml
index a557f04..e948cfe 100644
--- a/classes/cluster/virtual-mcp05-ovs/openstack/init.yml
+++ b/classes/cluster/virtual-mcp05-ovs/openstack/init.yml
@@ -83,6 +83,7 @@
     mongodb_shared_key: eoTh1AwahlahqueingeejooLughah4tei9feing0eeVaephooDi2li1TaeV1ooth
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp10-contrail/openstack/init.yml b/classes/cluster/virtual-mcp10-contrail/openstack/init.yml
index d00d8e7..5e746a4 100755
--- a/classes/cluster/virtual-mcp10-contrail/openstack/init.yml
+++ b/classes/cluster/virtual-mcp10-contrail/openstack/init.yml
@@ -72,6 +72,7 @@
     ceilometer_influxdb_password: lmapass
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp10-dvr/openstack/init.yml b/classes/cluster/virtual-mcp10-dvr/openstack/init.yml
index f5683a3..4e7ca02 100644
--- a/classes/cluster/virtual-mcp10-dvr/openstack/init.yml
+++ b/classes/cluster/virtual-mcp10-dvr/openstack/init.yml
@@ -84,6 +84,7 @@
     mongodb_shared_key: eoTh1AwahlahqueingeejooLughah4tei9feing0eeVaephooDi2li1TaeV1ooth
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp10-ovs/openstack/init.yml b/classes/cluster/virtual-mcp10-ovs/openstack/init.yml
index b38bac6..75e6d36 100644
--- a/classes/cluster/virtual-mcp10-ovs/openstack/init.yml
+++ b/classes/cluster/virtual-mcp10-ovs/openstack/init.yml
@@ -84,6 +84,7 @@
     mongodb_shared_key: eoTh1AwahlahqueingeejooLughah4tei9feing0eeVaephooDi2li1TaeV1ooth
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp11-contrail-nfv/openstack/init.yml b/classes/cluster/virtual-mcp11-contrail-nfv/openstack/init.yml
index 28b0404..33345a4 100755
--- a/classes/cluster/virtual-mcp11-contrail-nfv/openstack/init.yml
+++ b/classes/cluster/virtual-mcp11-contrail-nfv/openstack/init.yml
@@ -111,6 +111,7 @@
     ceilometer_influxdb_password: lmapass
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp11-contrail/openstack/init.yml b/classes/cluster/virtual-mcp11-contrail/openstack/init.yml
index cb3d696..f673ab7 100755
--- a/classes/cluster/virtual-mcp11-contrail/openstack/init.yml
+++ b/classes/cluster/virtual-mcp11-contrail/openstack/init.yml
@@ -104,6 +104,7 @@
     ceilometer_influxdb_password: lmapass
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp11-dvr/openstack/init.yml b/classes/cluster/virtual-mcp11-dvr/openstack/init.yml
index 1d76d2d..3a73066 100644
--- a/classes/cluster/virtual-mcp11-dvr/openstack/init.yml
+++ b/classes/cluster/virtual-mcp11-dvr/openstack/init.yml
@@ -89,6 +89,7 @@
     ceilometer_influxdb_password: lmapass
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp11-k8s-calico-dyn/kubernetes/init.yml b/classes/cluster/virtual-mcp11-k8s-calico-dyn/kubernetes/init.yml
index 9d0cbe9..703d521 100644
--- a/classes/cluster/virtual-mcp11-k8s-calico-dyn/kubernetes/init.yml
+++ b/classes/cluster/virtual-mcp11-k8s-calico-dyn/kubernetes/init.yml
@@ -76,6 +76,7 @@
           - ndots:5
           - timeout:2
           - attempts:2
+      purge_hosts: true
       host:
         ctl:
           address: ${_param:kubernetes_control_address}
diff --git a/classes/cluster/virtual-mcp11-k8s-calico-minimal/kubernetes/init.yml b/classes/cluster/virtual-mcp11-k8s-calico-minimal/kubernetes/init.yml
index 21aaca3..a7cc262 100644
--- a/classes/cluster/virtual-mcp11-k8s-calico-minimal/kubernetes/init.yml
+++ b/classes/cluster/virtual-mcp11-k8s-calico-minimal/kubernetes/init.yml
@@ -72,6 +72,7 @@
           - ndots:5
           - timeout:2
           - attempts:2
+      purge_hosts: true
       host:
         ctl:
           address: ${_param:kubernetes_control_address}
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/kubernetes/init.yml b/classes/cluster/virtual-mcp11-k8s-calico/kubernetes/init.yml
index 571f908..ed42764 100644
--- a/classes/cluster/virtual-mcp11-k8s-calico/kubernetes/init.yml
+++ b/classes/cluster/virtual-mcp11-k8s-calico/kubernetes/init.yml
@@ -76,6 +76,7 @@
           - ndots:5
           - timeout:2
           - attempts:2
+      purge_hosts: true
       host:
         ctl:
           address: ${_param:kubernetes_control_address}
diff --git a/classes/cluster/virtual-mcp11-k8s-contrail/kubernetes/init.yml b/classes/cluster/virtual-mcp11-k8s-contrail/kubernetes/init.yml
index e404760..51aeacd 100644
--- a/classes/cluster/virtual-mcp11-k8s-contrail/kubernetes/init.yml
+++ b/classes/cluster/virtual-mcp11-k8s-contrail/kubernetes/init.yml
@@ -75,6 +75,7 @@
 
   linux:
     network:
+      purge_hosts: true
       host:
         ctl:
           address: ${_param:kubernetes_control_address}
diff --git a/classes/cluster/virtual-mcp11-ovs-dpdk/openstack/init.yml b/classes/cluster/virtual-mcp11-ovs-dpdk/openstack/init.yml
index 5391d23..83d35b8 100644
--- a/classes/cluster/virtual-mcp11-ovs-dpdk/openstack/init.yml
+++ b/classes/cluster/virtual-mcp11-ovs-dpdk/openstack/init.yml
@@ -128,6 +128,7 @@
     mongodb_shared_key: eoTh1AwahlahqueingeejooLughah4tei9feing0eeVaephooDi2li1TaeV1ooth
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp11-ovs-ironic/openstack/init.yml b/classes/cluster/virtual-mcp11-ovs-ironic/openstack/init.yml
index 2cc6792..45b8a3c 100644
--- a/classes/cluster/virtual-mcp11-ovs-ironic/openstack/init.yml
+++ b/classes/cluster/virtual-mcp11-ovs-ironic/openstack/init.yml
@@ -93,6 +93,7 @@
     linux_system_repo: 'deb [arch=amd64] http://mirror.fuel-infra.org/mcp-repos/ocata/xenial ocata main'
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}
diff --git a/classes/cluster/virtual-mcp11-ovs/openstack/init.yml b/classes/cluster/virtual-mcp11-ovs/openstack/init.yml
index 45fb5ca..bb1caaf 100644
--- a/classes/cluster/virtual-mcp11-ovs/openstack/init.yml
+++ b/classes/cluster/virtual-mcp11-ovs/openstack/init.yml
@@ -86,6 +86,7 @@
     mongodb_shared_key: eoTh1AwahlahqueingeejooLughah4tei9feing0eeVaephooDi2li1TaeV1ooth
   linux:
     network:
+      purge_hosts: true
       host:
         prx:
           address: ${_param:openstack_proxy_address}