Merge "OS compatibility checks. also, improved error reporting when a node is not found."
This commit is contained in:
commit
793cbec0b4
@ -77,6 +77,9 @@ $public_netmask = '255.255.255.0'
|
|||||||
|
|
||||||
|
|
||||||
$node = filter_nodes($nodes,'name',$::hostname)
|
$node = filter_nodes($nodes,'name',$::hostname)
|
||||||
|
if empty($node) {
|
||||||
|
fail("Node $::hostname is not defined in the hash structure")
|
||||||
|
}
|
||||||
$internal_address = $node[0]['internal_address']
|
$internal_address = $node[0]['internal_address']
|
||||||
$public_address = $node[0]['public_address']
|
$public_address = $node[0]['public_address']
|
||||||
|
|
||||||
@ -515,6 +518,11 @@ class compact_controller (
|
|||||||
|
|
||||||
# Definition of the first OpenStack controller.
|
# Definition of the first OpenStack controller.
|
||||||
node /fuel-controller-01/ {
|
node /fuel-controller-01/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -555,6 +563,11 @@ node /fuel-controller-01/ {
|
|||||||
|
|
||||||
# Definition of the second OpenStack controller.
|
# Definition of the second OpenStack controller.
|
||||||
node /fuel-controller-02/ {
|
node /fuel-controller-02/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -595,6 +608,11 @@ node /fuel-controller-02/ {
|
|||||||
|
|
||||||
# Definition of the third OpenStack controller.
|
# Definition of the third OpenStack controller.
|
||||||
node /fuel-controller-03/ {
|
node /fuel-controller-03/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -635,6 +653,11 @@ node /fuel-controller-03/ {
|
|||||||
|
|
||||||
# Definition of OpenStack compute nodes.
|
# Definition of OpenStack compute nodes.
|
||||||
node /fuel-compute-[\d+]/ {
|
node /fuel-compute-[\d+]/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -694,6 +717,11 @@ node /fuel-compute-[\d+]/ {
|
|||||||
|
|
||||||
# Definition of OpenStack Quantum node.
|
# Definition of OpenStack Quantum node.
|
||||||
node /fuel-quantum/ {
|
node /fuel-quantum/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
|
@ -77,6 +77,9 @@ $public_netmask = '255.255.255.0'
|
|||||||
|
|
||||||
|
|
||||||
$node = filter_nodes($nodes,'name',$::hostname)
|
$node = filter_nodes($nodes,'name',$::hostname)
|
||||||
|
if empty($node) {
|
||||||
|
fail("Node $::hostname is not defined in the hash structure")
|
||||||
|
}
|
||||||
$internal_address = $node[0]['internal_address']
|
$internal_address = $node[0]['internal_address']
|
||||||
$public_address = $node[0]['public_address']
|
$public_address = $node[0]['public_address']
|
||||||
|
|
||||||
@ -516,6 +519,11 @@ class compact_controller (
|
|||||||
|
|
||||||
# Definition of the first OpenStack controller.
|
# Definition of the first OpenStack controller.
|
||||||
node /fuel-controller-01/ {
|
node /fuel-controller-01/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -556,6 +564,11 @@ node /fuel-controller-01/ {
|
|||||||
|
|
||||||
# Definition of the second OpenStack controller.
|
# Definition of the second OpenStack controller.
|
||||||
node /fuel-controller-02/ {
|
node /fuel-controller-02/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -596,6 +609,11 @@ node /fuel-controller-02/ {
|
|||||||
|
|
||||||
# Definition of the third OpenStack controller.
|
# Definition of the third OpenStack controller.
|
||||||
node /fuel-controller-03/ {
|
node /fuel-controller-03/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -636,6 +654,11 @@ node /fuel-controller-03/ {
|
|||||||
|
|
||||||
# Definition of OpenStack compute nodes.
|
# Definition of OpenStack compute nodes.
|
||||||
node /fuel-compute-[\d+]/ {
|
node /fuel-compute-[\d+]/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -695,6 +718,11 @@ node /fuel-compute-[\d+]/ {
|
|||||||
|
|
||||||
# Definition of OpenStack Quantum node.
|
# Definition of OpenStack Quantum node.
|
||||||
node /fuel-quantum/ {
|
node /fuel-quantum/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
|
@ -114,6 +114,9 @@ $public_netmask = '255.255.255.0'
|
|||||||
|
|
||||||
|
|
||||||
$node = filter_nodes($nodes,'name',$::hostname)
|
$node = filter_nodes($nodes,'name',$::hostname)
|
||||||
|
if empty($node) {
|
||||||
|
fail("Node $::hostname is not defined in the hash structure")
|
||||||
|
}
|
||||||
$internal_address = $node[0]['internal_address']
|
$internal_address = $node[0]['internal_address']
|
||||||
$public_address = $node[0]['public_address']
|
$public_address = $node[0]['public_address']
|
||||||
$controller_internal_addresses = nodes_to_hash(filter_nodes($nodes,'role','controller'),'name','internal_address')
|
$controller_internal_addresses = nodes_to_hash(filter_nodes($nodes,'role','controller'),'name','internal_address')
|
||||||
@ -543,18 +546,40 @@ class ha_controller (
|
|||||||
|
|
||||||
# Definition of OpenStack controller nodes.
|
# Definition of OpenStack controller nodes.
|
||||||
node /fuel-controller-01/ {
|
node /fuel-controller-01/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class { ha_controller: quantum_network_node => true }
|
class { ha_controller: quantum_network_node => true }
|
||||||
}
|
}
|
||||||
|
|
||||||
node /fuel-controller-02/ {
|
node /fuel-controller-02/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class { ha_controller: quantum_network_node => true }
|
class { ha_controller: quantum_network_node => true }
|
||||||
}
|
}
|
||||||
|
|
||||||
node /fuel-controller-03/ {
|
node /fuel-controller-03/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class { ha_controller: quantum_network_node => true }
|
class { ha_controller: quantum_network_node => true }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# Definition of OpenStack compute nodes.
|
# Definition of OpenStack compute nodes.
|
||||||
node /fuel-compute-[\d+]/ {
|
node /fuel-compute-[\d+]/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -615,6 +640,11 @@ node /fuel-compute-[\d+]/ {
|
|||||||
|
|
||||||
# Definition of the first OpenStack Swift node.
|
# Definition of the first OpenStack Swift node.
|
||||||
node /fuel-swift-01/ {
|
node /fuel-swift-01/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -644,6 +674,11 @@ node /fuel-swift-01/ {
|
|||||||
|
|
||||||
# Definition of the second OpenStack Swift node.
|
# Definition of the second OpenStack Swift node.
|
||||||
node /fuel-swift-02/ {
|
node /fuel-swift-02/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -673,6 +708,11 @@ node /fuel-swift-02/ {
|
|||||||
|
|
||||||
# Definition of the third OpenStack Swift node.
|
# Definition of the third OpenStack Swift node.
|
||||||
node /fuel-swift-03/ {
|
node /fuel-swift-03/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -702,6 +742,11 @@ node /fuel-swift-03/ {
|
|||||||
|
|
||||||
# Definition of OpenStack Swift proxy nodes.
|
# Definition of OpenStack Swift proxy nodes.
|
||||||
node /fuel-swiftproxy-[\d+]/ {
|
node /fuel-swiftproxy-[\d+]/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -728,6 +773,11 @@ node /fuel-swiftproxy-[\d+]/ {
|
|||||||
|
|
||||||
# Definition of OpenStack Quantum node.
|
# Definition of OpenStack Quantum node.
|
||||||
node /fuel-quantum/ {
|
node /fuel-quantum/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
|
@ -77,6 +77,9 @@ $public_netmask = '255.255.255.0'
|
|||||||
|
|
||||||
|
|
||||||
$node = filter_nodes($nodes,'name',$::hostname)
|
$node = filter_nodes($nodes,'name',$::hostname)
|
||||||
|
if empty($node) {
|
||||||
|
fail("Node $::hostname is not defined in the hash structure")
|
||||||
|
}
|
||||||
$internal_address = $node[0]['internal_address']
|
$internal_address = $node[0]['internal_address']
|
||||||
$public_address = $node[0]['public_address']
|
$public_address = $node[0]['public_address']
|
||||||
|
|
||||||
@ -468,6 +471,11 @@ class compact_controller (
|
|||||||
|
|
||||||
# Definition of OpenStack controller nodes.
|
# Definition of OpenStack controller nodes.
|
||||||
node /fuel-controller-01/ {
|
node /fuel-controller-01/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -487,7 +495,13 @@ node /fuel-controller-01/ {
|
|||||||
}
|
}
|
||||||
class { compact_controller: }
|
class { compact_controller: }
|
||||||
}
|
}
|
||||||
|
|
||||||
node /fuel-controller-02/ {
|
node /fuel-controller-02/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -507,7 +521,13 @@ node /fuel-controller-02/ {
|
|||||||
}
|
}
|
||||||
class { compact_controller: }
|
class { compact_controller: }
|
||||||
}
|
}
|
||||||
|
|
||||||
node /fuel-controller-03/ {
|
node /fuel-controller-03/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
@ -530,13 +550,10 @@ node /fuel-controller-03/ {
|
|||||||
|
|
||||||
# Definition of OpenStack compute nodes.
|
# Definition of OpenStack compute nodes.
|
||||||
node /fuel-compute-[\d+]/ {
|
node /fuel-compute-[\d+]/ {
|
||||||
#class {'::node_netconfig':
|
include stdlib
|
||||||
# mgmt_ipaddr => $::internal_address,
|
class { 'operatingsystem::checksupported':
|
||||||
# mgmt_netmask => $::internal_netmask,
|
stage => 'setup'
|
||||||
# public_ipaddr => $::public_address,
|
}
|
||||||
# public_netmask => $::public_netmask,
|
|
||||||
# stage => 'netconfig',
|
|
||||||
#}
|
|
||||||
|
|
||||||
class {'nagios':
|
class {'nagios':
|
||||||
proj_name => $proj_name,
|
proj_name => $proj_name,
|
||||||
@ -589,6 +606,11 @@ node /fuel-compute-[\d+]/ {
|
|||||||
|
|
||||||
# Definition of OpenStack Quantum node.
|
# Definition of OpenStack Quantum node.
|
||||||
node /fuel-quantum/ {
|
node /fuel-quantum/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'::node_netconfig':
|
class {'::node_netconfig':
|
||||||
mgmt_ipaddr => $::internal_address,
|
mgmt_ipaddr => $::internal_address,
|
||||||
mgmt_netmask => $::internal_netmask,
|
mgmt_netmask => $::internal_netmask,
|
||||||
|
@ -185,6 +185,10 @@ $horizon_use_ssl = false
|
|||||||
|
|
||||||
# Definition of OpenStack controller node.
|
# Definition of OpenStack controller node.
|
||||||
node /fuel-controller-[\d+]/ {
|
node /fuel-controller-[\d+]/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'nagios':
|
class {'nagios':
|
||||||
proj_name => $proj_name,
|
proj_name => $proj_name,
|
||||||
@ -249,6 +253,10 @@ node /fuel-controller-[\d+]/ {
|
|||||||
|
|
||||||
# Definition of OpenStack compute nodes.
|
# Definition of OpenStack compute nodes.
|
||||||
node /fuel-compute-[\d+]/ {
|
node /fuel-compute-[\d+]/ {
|
||||||
|
include stdlib
|
||||||
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class {'nagios':
|
class {'nagios':
|
||||||
proj_name => $proj_name,
|
proj_name => $proj_name,
|
||||||
|
@ -108,8 +108,10 @@ $openstack_version = {
|
|||||||
|
|
||||||
# Every node should be deployed as all-in-one openstack installations.
|
# Every node should be deployed as all-in-one openstack installations.
|
||||||
node default {
|
node default {
|
||||||
|
include stdlib
|
||||||
# include 'apache'
|
class { 'operatingsystem::checksupported':
|
||||||
|
stage => 'setup'
|
||||||
|
}
|
||||||
|
|
||||||
class { 'openstack::all':
|
class { 'openstack::all':
|
||||||
public_address => $ipaddress_eth0,
|
public_address => $ipaddress_eth0,
|
||||||
|
@ -0,0 +1,26 @@
|
|||||||
|
#
|
||||||
|
# This class is being used to check for compatibility with different operating systems
|
||||||
|
# If the operating system is not supported, it will fail early
|
||||||
|
#
|
||||||
|
|
||||||
|
class operatingsystem::checksupported () {
|
||||||
|
|
||||||
|
case $operatingsystem {
|
||||||
|
centos, redhat, ubuntu: {}
|
||||||
|
default: {
|
||||||
|
fail("Operating system $operatingsystem is not supported")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
case $architecture {
|
||||||
|
x86_64, amd64: {}
|
||||||
|
default: {
|
||||||
|
fail("Architecture $architecture is not supported. 64-bit architecture is required")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
notify { 'operatingsystem':
|
||||||
|
message => "Detected OS $operatingsystem, architecture $architecture"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user