Improve puppet doc coverage
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
This commit is contained in:
@@ -63,6 +63,7 @@ class privatecloud::image(
|
|||||||
# TODO(EmilienM) Rename local_ip to a more general param, like "api_eth"
|
# TODO(EmilienM) Rename local_ip to a more general param, like "api_eth"
|
||||||
$local_ip = $::ipaddress_eth0,
|
$local_ip = $::ipaddress_eth0,
|
||||||
) {
|
) {
|
||||||
|
|
||||||
$encoded_glance_user = uriescape($glance_db_user)
|
$encoded_glance_user = uriescape($glance_db_user)
|
||||||
$encoded_glance_password = uriescape($glance_db_password)
|
$encoded_glance_password = uriescape($glance_db_password)
|
||||||
|
|
||||||
@@ -84,6 +85,7 @@ class privatecloud::image(
|
|||||||
rabbit_host => $rabbit_host,
|
rabbit_host => $rabbit_host,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# TODO(EmilienM) We should migrate the backend to Ceph (WIP). For now, I let Swift.
|
||||||
class { 'glance::backend::swift':
|
class { 'glance::backend::swift':
|
||||||
swift_store_user => 'services:glance',
|
swift_store_user => 'services:glance',
|
||||||
swift_store_key => $ks_keystone_glance_password,
|
swift_store_key => $ks_keystone_glance_password,
|
||||||
|
|||||||
@@ -13,17 +13,30 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
#
|
#
|
||||||
# RabbitMQ node
|
# == Class: privatecloud::messaging
|
||||||
|
#
|
||||||
|
# Install Messsaging Server (RabbitMQ)
|
||||||
|
#
|
||||||
|
# === Parameters:
|
||||||
|
#
|
||||||
|
# [*rabbit_hosts*]
|
||||||
|
# (optional) List of RabbitMQ servers. Should be an array.
|
||||||
|
# Default value in params
|
||||||
|
#
|
||||||
|
# [*rabbit_password*]
|
||||||
|
# (optional) Password to connect to OpenStack queues.
|
||||||
|
# Default value in params
|
||||||
#
|
#
|
||||||
|
|
||||||
class privatecloud::messaging(
|
class privatecloud::messaging(
|
||||||
$rabbit_names = $os_params::rabbit_names,
|
$rabbit_hosts = $os_params::rabbit_hosts,
|
||||||
$rabbit_password = $os_params::rabbit_password
|
$rabbit_password = $os_params::rabbit_password
|
||||||
){
|
){
|
||||||
|
|
||||||
class { 'rabbitmq::server':
|
class { 'rabbitmq::server':
|
||||||
delete_guest_user => true,
|
delete_guest_user => true,
|
||||||
config_cluster => false, # true > Broken on RHEL/CentOS
|
config_cluster => false, # true > Broken on RHEL/CentOS
|
||||||
cluster_nodes => $rabbit_names,
|
cluster_nodes => $rabbit_hosts,
|
||||||
wipe_db_on_cookie_change => true,
|
wipe_db_on_cookie_change => true,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,31 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
#
|
#
|
||||||
# Common networking
|
# == Class: privatecloud::network
|
||||||
|
#
|
||||||
|
# Common class for network nodes
|
||||||
|
#
|
||||||
|
# === Parameters:
|
||||||
|
#
|
||||||
|
# [*rabbit_hosts*]
|
||||||
|
# (optional) List of RabbitMQ servers. Should be an array.
|
||||||
|
# Default value in params
|
||||||
|
#
|
||||||
|
# [*rabbit_password*]
|
||||||
|
# (optional) Password to connect to nova queues.
|
||||||
|
# Default value in params
|
||||||
|
#
|
||||||
|
# [*verbose*]
|
||||||
|
# (optional) Set log output to verbose output
|
||||||
|
# Default value in params
|
||||||
|
#
|
||||||
|
# [*debug*]
|
||||||
|
# (optional) Set log output to debug output
|
||||||
|
# Default value in params
|
||||||
|
#
|
||||||
|
# [*tunnel_eth*]
|
||||||
|
# (optional) Which interface we connect to create overlay tunnels.
|
||||||
|
# Default value in params
|
||||||
#
|
#
|
||||||
|
|
||||||
class privatecloud::network(
|
class privatecloud::network(
|
||||||
@@ -21,7 +45,7 @@ class privatecloud::network(
|
|||||||
$debug = $os_params::debug,
|
$debug = $os_params::debug,
|
||||||
$rabbit_hosts = $os_params::rabbit_hosts,
|
$rabbit_hosts = $os_params::rabbit_hosts,
|
||||||
$rabbit_password = $os_params::rabbit_password,
|
$rabbit_password = $os_params::rabbit_password,
|
||||||
$local_ip = $os_params::tunnel_int
|
$tunnel_eth = $os_params::tunnel_int
|
||||||
) {
|
) {
|
||||||
|
|
||||||
class { 'neutron':
|
class { 'neutron':
|
||||||
@@ -42,7 +66,7 @@ class privatecloud::network(
|
|||||||
|
|
||||||
class { 'neutron::agents::ovs':
|
class { 'neutron::agents::ovs':
|
||||||
enable_tunneling => true,
|
enable_tunneling => true,
|
||||||
local_ip => $local_ip
|
local_ip => $tunnel_eth
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,7 +13,15 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
#
|
#
|
||||||
# Swift nodes
|
# == Class: privatecloud::object
|
||||||
|
#
|
||||||
|
# Common class for object storage nodes
|
||||||
|
#
|
||||||
|
# === Parameters:
|
||||||
|
#
|
||||||
|
# [*swift_hash_suffix*]
|
||||||
|
# (optional) String of text to be used as a salt when hashing to determine mappings in the ring.
|
||||||
|
# Default value in params
|
||||||
#
|
#
|
||||||
|
|
||||||
class privatecloud::object(
|
class privatecloud::object(
|
||||||
|
|||||||
@@ -16,14 +16,13 @@
|
|||||||
|
|
||||||
class privatecloud::rbd (
|
class privatecloud::rbd (
|
||||||
$fsid = $os_params::ceph_fsid,
|
$fsid = $os_params::ceph_fsid,
|
||||||
$auth_type = 'cephx',
|
|
||||||
$cluster_network = $os_params::ceph_cluster_network,
|
$cluster_network = $os_params::ceph_cluster_network,
|
||||||
$public_network = $os_params::ceph_public_network
|
$public_network = $os_params::ceph_public_network
|
||||||
) {
|
) {
|
||||||
|
|
||||||
class { 'ceph::conf':
|
class { 'ceph::conf':
|
||||||
fsid => $fsid,
|
fsid => $fsid,
|
||||||
auth_type => $auth_type,
|
auth_type => 'cephx',
|
||||||
cluster_network => $cluster_network,
|
cluster_network => $cluster_network,
|
||||||
public_network => $public_network,
|
public_network => $public_network,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,18 +13,25 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
#
|
#
|
||||||
# SPOF node usually installed twice, and managed by Pacemaker / Corosync
|
# == Class: privatecloud::spof
|
||||||
|
#
|
||||||
|
# Install all SPOF services in active / passive with Pacemaker / Corosync
|
||||||
|
#
|
||||||
|
# === Parameters:
|
||||||
|
#
|
||||||
|
# [*cluster_eth*]
|
||||||
|
# (optional) Interface used by Corosync to send multicast traffic
|
||||||
|
# Default to $::network_eth0
|
||||||
#
|
#
|
||||||
|
|
||||||
class privatecloud::spof(
|
class privatecloud::spof(
|
||||||
$debug = $os_params::debug,
|
$cluster_eth = $::network_eth0,
|
||||||
) {
|
) {
|
||||||
|
|
||||||
# Corosync & Pacemaker
|
|
||||||
class { 'corosync':
|
class { 'corosync':
|
||||||
enable_secauth => false,
|
enable_secauth => false,
|
||||||
authkey => '/var/lib/puppet/ssl/certs/ca.pem',
|
authkey => '/var/lib/puppet/ssl/certs/ca.pem',
|
||||||
bind_address => $::network_eth0,
|
bind_address => $cluster_eth,
|
||||||
multicast_address => '239.1.1.2',
|
multicast_address => '239.1.1.2',
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -40,9 +47,6 @@ class privatecloud::spof(
|
|||||||
version => '0',
|
version => '0',
|
||||||
}
|
}
|
||||||
|
|
||||||
# Resources managed by Corosync as Active / Passive
|
|
||||||
# https://github.com/madkiss/openstack-resource-agents
|
|
||||||
|
|
||||||
Package['corosync'] ->
|
Package['corosync'] ->
|
||||||
file { '/usr/lib/ocf/resource.d/heartbeat/ceilometer-agent-central':
|
file { '/usr/lib/ocf/resource.d/heartbeat/ceilometer-agent-central':
|
||||||
source => 'puppet:///modules/privatecloud/heartbeat/ceilometer-agent-central',
|
source => 'puppet:///modules/privatecloud/heartbeat/ceilometer-agent-central',
|
||||||
@@ -115,17 +119,15 @@ class privatecloud::spof(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# Run OpenStack Networking Metadata service
|
# Run OpenStack SPOF service and disable them since they will be managed by Corosync.
|
||||||
class { 'privatecloud::network::metadata':
|
class { 'privatecloud::network::metadata':
|
||||||
enabled => false,
|
enabled => false,
|
||||||
}
|
}
|
||||||
|
|
||||||
# Run Heat Engine service
|
|
||||||
class { 'privatecloud::orchestration::engine':
|
class { 'privatecloud::orchestration::engine':
|
||||||
enabled => false,
|
enabled => false,
|
||||||
}
|
}
|
||||||
|
|
||||||
# Run Ceilometer Agent Central service
|
|
||||||
class { 'privatecloud::telemetry::centralagent':
|
class { 'privatecloud::telemetry::centralagent':
|
||||||
enabled => false,
|
enabled => false,
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user