Add Swarm cluster to mcp11-k8s-calico model
The change also fixes the network configuration of the infra node and
adds scripts to deploy Kubnernetes environments.
Change-Id: Ib8b3f01210be9180d9c8eaf8dfe885a4475fd82b
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/swarm/control.yml b/classes/cluster/virtual-mcp11-k8s-calico/swarm/control.yml
new file mode 100644
index 0000000..5f91f9e
--- /dev/null
+++ b/classes/cluster/virtual-mcp11-k8s-calico/swarm/control.yml
@@ -0,0 +1,7 @@
+classes:
+- system.docker.host
+- cluster.virtual-mcp11-k8s-calico.infra
+parameters:
+ _param:
+ cluster_vip_address: ${_param:docker_swarm_address}
+ cluster_public_host: ${_param:docker_swarm_hostname}
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/swarm/init.yml b/classes/cluster/virtual-mcp11-k8s-calico/swarm/init.yml
new file mode 100644
index 0000000..91590b8
--- /dev/null
+++ b/classes/cluster/virtual-mcp11-k8s-calico/swarm/init.yml
@@ -0,0 +1,43 @@
+parameters:
+ _param:
+ docker_swarm_hostname: mon
+ docker_swarm_address: 172.16.10.252
+ docker_swarm_node01_hostname: mon01
+ docker_swarm_node02_hostname: mon02
+ docker_swarm_node03_hostname: mon03
+ docker_swarm_node01_address: 172.16.10.107
+ docker_swarm_node02_address: 172.16.10.108
+ docker_swarm_node03_address: 172.16.10.109
+ linux:
+ network:
+ host:
+ mon:
+ address: ${_param:docker_swarm_address}
+ names:
+ - ${_param:docker_swarm_hostname}
+ - ${_param:docker_swarm_hostname}.${_param:cluster_domain}
+ mon01:
+ address: ${_param:docker_swarm_node01_address}
+ names:
+ - ${_param:docker_swarm_node01_hostname}
+ - ${_param:docker_swarm_node01_hostname}.${_param:cluster_domain}
+ mon02:
+ address: ${_param:docker_swarm_node02_address}
+ names:
+ - ${_param:docker_swarm_node02_hostname}
+ - ${_param:docker_swarm_node02_hostname}.${_param:cluster_domain}
+ mon03:
+ address: ${_param:docker_swarm_node03_address}
+ names:
+ - ${_param:docker_swarm_node03_hostname}
+ - ${_param:docker_swarm_node03_hostname}.${_param:cluster_domain}
+ interface:
+ ens4:
+ enabled: true
+ type: eth
+ proto: static
+ address: ${_param:single_address}
+ netmask: 255.255.255.0
+ system:
+ name: ${_param:infra_config_hostname}
+ domain: ${_param:cluster_domain}
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/swarm/master.yml b/classes/cluster/virtual-mcp11-k8s-calico/swarm/master.yml
new file mode 100644
index 0000000..8d53081
--- /dev/null
+++ b/classes/cluster/virtual-mcp11-k8s-calico/swarm/master.yml
@@ -0,0 +1,15 @@
+classes:
+- system.docker.client
+- system.docker.swarm.master
+- cluster.virtual-mcp11-k8s-calico.swarm.control
+parameters:
+ docker:
+ client:
+ enabled: true
+ compose:
+ source:
+ engine: docker
+ image: "docker/compose:1.8.0"
+ swarm:
+ role: master
+ advertise_addr: ${_param:single_address}
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/swarm/slave.yml b/classes/cluster/virtual-mcp11-k8s-calico/swarm/slave.yml
new file mode 100644
index 0000000..1b1a8d2
--- /dev/null
+++ b/classes/cluster/virtual-mcp11-k8s-calico/swarm/slave.yml
@@ -0,0 +1,8 @@
+classes:
+- system.docker.swarm.manager
+- cluster.virtual-mcp11-k8s-calico.swarm.control
+parameters:
+ docker:
+ swarm:
+ master:
+ host: ${_param:docker_swarm_node01_address}