Create all-in-one model with ironic on pike
The new model virtual-mcp11-aio-ironic has been created. This model
includes classes added on cluster level which enable following
ironic modules: ironic api, ironic conductor, ironic client
and ironic baremetal simulator
Jira reference: PROD-18590
Change-Id: Ib53b879a1dfdb95b8d89e4c8f7348119dbe17fd6
diff --git a/classes/cluster/virtual-mcp11-aio-ironic/.env b/classes/cluster/virtual-mcp11-aio-ironic/.env
new file mode 100644
index 0000000..fb692c4
--- /dev/null
+++ b/classes/cluster/virtual-mcp11-aio-ironic/.env
@@ -0,0 +1 @@
+FORMULAS_SALT_MASTER+=(java openssh ntp nginx collectd sensu heka sphinx mysql galera grafana libvirt rsyslog glusterfs postfix xtrabackup freeipa prometheus telegraf elasticsearch kibana rundeck devops-portal libvirt rsyslog memcached rabbitmq apache keystone glance nova neutron cinder heat horizon ironic bind powerdns designate barbican iptables runtest artifactory tftpd-hpa baremetal-simulator)
diff --git a/classes/cluster/virtual-mcp11-aio-ironic/infra/config.yml b/classes/cluster/virtual-mcp11-aio-ironic/infra/config.yml
new file mode 100644
index 0000000..3044dc2
--- /dev/null
+++ b/classes/cluster/virtual-mcp11-aio-ironic/infra/config.yml
@@ -0,0 +1,3 @@
+classes:
+- cluster.virtual-mcp11-aio-ironic
+- cluster.virtual-mcp11-aio.infra.config
diff --git a/classes/cluster/virtual-mcp11-aio-ironic/infra/init.yml b/classes/cluster/virtual-mcp11-aio-ironic/infra/init.yml
new file mode 100644
index 0000000..219ed8d
--- /dev/null
+++ b/classes/cluster/virtual-mcp11-aio-ironic/infra/init.yml
@@ -0,0 +1,2 @@
+classes:
+ - cluster.virtual-mcp11-aio.infra
diff --git a/classes/cluster/virtual-mcp11-aio-ironic/init.yml b/classes/cluster/virtual-mcp11-aio-ironic/init.yml
new file mode 100755
index 0000000..448fe80
--- /dev/null
+++ b/classes/cluster/virtual-mcp11-aio-ironic/init.yml
@@ -0,0 +1,5 @@
+classes:
+- cluster.virtual-mcp11-aio
+- cluster.virtual-mcp11-aio-ironic.infra
+- cluster.virtual-mcp11-aio-ironic.openstack
+- cluster.overrides
diff --git a/classes/cluster/virtual-mcp11-aio-ironic/openstack/init.yml b/classes/cluster/virtual-mcp11-aio-ironic/openstack/init.yml
new file mode 100755
index 0000000..60611af
--- /dev/null
+++ b/classes/cluster/virtual-mcp11-aio-ironic/openstack/init.yml
@@ -0,0 +1,151 @@
+classes:
+- cluster.virtual-mcp11-aio.openstack
+- system.galera.server.database.ironic
+- system.keystone.client.service.ironic
+- system.nova.compute_ironic.single
+- system.neutron.gateway.ironic
+- system.neutron.client.service.ironic
+- system.ironic.api.single
+- system.ironic.tftpd_hpa
+- system.ironic.conductor.single
+- system.apache.server.site.ironic
+- service.ironic.client
+- service.baremetal_simulator.simulator
+- service.baremetal_simulator.nodes_flat
+- service.baremetal_simulator.network.ovs
+- system.salt.master.formula.pkg.baremetal
+- system.neutron.gateway.ironic
+- system.nova.compute_ironic.single
+parameters:
+ _param:
+ interface_mtu: 1450
+ cluster_internal_protocol: http
+ cluster_public_protocol: http
+ baremetal_interface: ens7
+ baremetal_gateway_ip: 192.168.90.1
+ ironic_version: ${_param:openstack_version}
+ ironic_service_protocol: ${_param:cluster_internal_protocol}
+ ironic_api_type: 'public'
+ cluster_baremetal_local_address: ${_param:single_baremetal_address}
+ openstack_baremetal_node01_address: ${_param:single_address}
+ single_baremetal_address: ${_param:openstack_baremetal_node01_baremetal_address}
+ openstack_baremetal_node01_baremetal_address: 192.168.90.11
+ openstack_baremetal_node01_hostname: cfg01
+ openstack_baremetal_address: 192.168.90.10
+ keystone_ironic_password: workshop
+ ironic_service_host: ${_param:single_address}
+ mysql_ironic_password: workshop
+ openstack_baremeta_neutron_subnet_cidr: 192.168.90.0/24
+ openstack_baremeta_neutron_subnet_allocation_start: 192.168.90.100
+ openstack_baremeta_neutron_subnet_allocation_end: 192.168.90.150
+ ironic:
+ api:
+ bind:
+ address: 0.0.0.0
+ message_queue:
+ port: ${_param:rabbitmq_port}
+ ssl:
+ enabled: ${_param:rabbitmq_ssl_enabled}
+ database:
+ ssl:
+ enabled: ${_param:galera_ssl_enabled}
+ conductor:
+ api_url: http://${_param:single_baremetal_address}:6385
+ http_url: http://${_param:single_baremetal_address}
+ message_queue:
+ port: ${_param:rabbitmq_port}
+ ssl:
+ enabled: ${_param:rabbitmq_ssl_enabled}
+ database:
+ ssl:
+ enabled: ${_param:galera_ssl_enabled}
+ enabled_drivers:
+ - pxe_ipmitool
+ identity:
+ engine: keystone
+ region: RegionOne
+ host: ${_param:single_address}
+ port: 35357
+ user: ironic
+ password: ${_param:keystone_ironic_password}
+ tenant: service
+ auth_type: password
+ user_domain_id: default
+ project_domain_id: default
+ protocol: ${_param:cluster_internal_protocol}
+ neutron:
+ auth_strategy: keystone
+ auth_type: password
+ cleaning_network: baremetal-flat-network
+ provisioning_network: baremetal-flat-network
+ project_domain_id: ${ironic:conductor:identity:project_domain_id}
+ user_domain_id: ${ironic:conductor:identity:user_domain_id}
+ project_name: ${ironic:conductor:identity:tenant}
+ password: ${ironic:conductor:identity:password}
+ username: ${ironic:conductor:identity:user}
+ url: http://${_param:neutron_service_host}:9696
+ project_name: service
+ glance:
+ auth_strategy: 'keystone'
+ auth_type: password
+ host: ${_param:cluster_vip_address}
+ port: 9292
+ region: ${_param:openstack_region}
+ username: glance
+ tenant: service
+ project_name: service
+ project_domain_id: ${ironic:conductor:identity:project_domain_id}
+ user_domain_id: ${ironic:conductor:identity:user_domain_id}
+ password: ${_param:keystone_glance_password}
+ nova:
+ controller:
+ compute_driver: ironic.IronicDriver
+ ironic:
+ protocol: ${_param:cluster_internal_protocol}
+ host: ${_param:single_address}
+ port: 6385
+ auth_type: password
+ project_domain_name: default
+ user: ironic
+ user_domain_name: default
+ password: ${_param:keystone_ironic_password}
+ linux:
+ network:
+ interface:
+ baremetal_interface:
+ enabled: true
+ name: ${_param:baremetal_interface}
+ mtu: ${_param:interface_mtu}
+ proto: static
+ address: ${_param:baremetal_gateway_ip}
+ netmask: 255.255.255.0
+ type: eth
+ br-baremetal:
+ enabled: true
+ type: ovs_bridge
+ mtu: ${_param:interface_mtu}
+ phy-baremetal:
+ enabled: true
+ type: ovs_port
+ bridge: br-baremetal
+ proto: static
+ address: ${_param:cluster_baremetal_local_address}
+ netmask: 255.255.255.0
+ system:
+ group:
+ libvirtd:
+ enabled: true
+ name: libvirtd
+ neutron:
+ server:
+ ironic_enabled: true
+ backend:
+ ironic_vlan_range: 100:1000
+ salt:
+ master:
+ environment:
+ prd:
+ formula:
+ baremetal_simulator:
+ name: salt-formula-baremetal-simulator
+ source: pkg