From: Tim Rozet Date: Wed, 8 Apr 2015 19:28:40 +0000 (-0400) Subject: Adds Ceph cluster creation for controllers X-Git-Tag: arno.2015.1.0~83^2 X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?p=genesis.git;a=commitdiff_plain;h=48942bded0504d3269c2e0d9c232452a5f1acc69 Adds Ceph cluster creation for controllers PATCHSET3: fixes whitepsace Uses ceph_deploy.pp to create a Ceph cluster that is integrated into OpenStack. The current model is 1 OSD and 1 Ceph mon per controller, clustered together, resulting in 3 OSDs and 3 Mons. The network used for storage is optional, provided by storage_iface. If that variable is unset, then storage network will run on private network. JIRA: BGS-13 Change-Id: I242bfeb18c3f3b1e2fc7f7ed21dbfaa9f58337e8 Signed-off-by: Tim Rozet --- diff --git a/common/puppet-opnfv/manifests/controller_networker.pp b/common/puppet-opnfv/manifests/controller_networker.pp index c4e7423..6888850 100644 --- a/common/puppet-opnfv/manifests/controller_networker.pp +++ b/common/puppet-opnfv/manifests/controller_networker.pp @@ -20,11 +20,11 @@ class opnfv::controller_networker { if $odl_rest_port == '' { $odl_rest_port= '8081'} - if ($odl_flag != '') and str2bool($odl_flag) { + if ($odl_flag != '') and str2bool($odl_flag) { $ml2_mech_drivers = ['opendaylight'] $this_agent = 'opendaylight' } else { - $ml2_mech_drivers = ['openvswitch','l2population'] + $ml2_mech_drivers = ['openvswitch','l2population'] $this_agent = 'ovs' } @@ -46,8 +46,10 @@ class opnfv::controller_networker { if $ha_flag and str2bool($ha_flag) { ##Mandatory HA variables if !$controllers_ip_array { fail('controllers_ip_array is empty') } + $controllers_ip_array_str = $controllers_ip_array $controllers_ip_array = split($controllers_ip_array, ',') if !$controllers_hostnames_array { fail('controllers_hostnames_array is empty') } + $controllers_hostnames_array_str = $controllers_hostnames_array $controllers_hostnames_array = split($controllers_hostnames_array, ',') if !$amqp_vip { fail('amqp_vip is empty') } if !$private_subnet { fail('private_subnet is empty')} @@ -100,12 +102,30 @@ class opnfv::controller_networker { if !$pcmk_server_addrs {$pcmk_server_addrs = $controllers_ip_array} if !$pcmk_server_names {$pcmk_server_names = ["pcmk-${controllers_hostnames_array[0]}", "pcmk-${controllers_hostnames_array[1]}", "pcmk-${controllers_hostnames_array[2]}"] } if !$rbd_secret_uuid { $rbd_secret_uuid = '3b519746-4021-4f72-957e-5b9d991723be' } + if !$storage_iface { $storage_iface = $ovs_tunnel_if } ##we assume here that if not provided, the first controller is where ODL will reside ##this is fine for now as we will replace ODL with ODL HA when it is ready if $odl_control_ip == '' { $odl_control_ip = $controllers_ip_array[0] } - + ###find interface ip of storage network + $osd_ip = find_ip("", + "$storage_iface", + "") + + class { "opnfv::ceph_deploy": + fsid => $ceph_fsid, + osd_pool_default_size => $ceph_osd_pool_size, + osd_journal_size => $ceph_osd_journal_size, + mon_initial_members => $controllers_hostnames_array_str, + mon_host => $controllers_ip_array_str, + osd_ip => $osd_ip, + public_network => $ceph_public_network, + cluster_network => $ceph_public_network, + images_key => $ceph_images_key, + volumes_key => $ceph_volumes_key, + } + -> class { "quickstack::openstack_common": } -> class { "quickstack::pacemaker::params": @@ -346,7 +366,7 @@ class opnfv::controller_networker { horizon_ca => $quickstack::params::horizon_ca, horizon_cert => $quickstack::params::horizon_cert, horizon_key => $quickstack::params::horizon_key, - + ml2_mechanism_drivers => $ml2_mech_drivers, #neutron => true,