Example was missing required parameter mysql_root_password. Change-Id: I6a6b6e712ccab0057a668f2a3ee007f4483b9d76 Closes-bug: #1263292
		
			
				
	
	
		
			165 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Puppet
		
	
	
	
	
	
			
		
		
	
	
			165 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Puppet
		
	
	
	
	
	
#
 | 
						|
# This document serves as an example of how to deploy
 | 
						|
# basic single and multi-node openstack environments.
 | 
						|
#
 | 
						|
 | 
						|
# deploy a script that can be used to test nova
 | 
						|
class { 'openstack::test_file': }
 | 
						|
 | 
						|
####### shared variables ##################
 | 
						|
 | 
						|
 | 
						|
# this section is used to specify global variables that will
 | 
						|
# be used in the deployment of multi and single node openstack
 | 
						|
# environments
 | 
						|
 | 
						|
# assumes that eth0 is the public interface
 | 
						|
$public_interface        = 'eth0'
 | 
						|
# assumes that eth1 is the interface that will be used for the vm network
 | 
						|
# this configuration assumes this interface is active but does not have an
 | 
						|
# ip address allocated to it.
 | 
						|
$private_interface       = 'eth1'
 | 
						|
# credentials
 | 
						|
$admin_email             = 'root@localhost'
 | 
						|
$admin_password          = 'keystone_admin'
 | 
						|
$cinder_user_password    = 'cinder_pass'
 | 
						|
$cinder_db_password      = 'cinder_pass'
 | 
						|
$keystone_db_password    = 'keystone_db_pass'
 | 
						|
$keystone_admin_token    = 'keystone_admin_token'
 | 
						|
$nova_db_password        = 'nova_pass'
 | 
						|
$nova_user_password      = 'nova_pass'
 | 
						|
$glance_db_password      = 'glance_pass'
 | 
						|
$glance_user_password    = 'glance_pass'
 | 
						|
$rabbit_password         = 'openstack_rabbit_password'
 | 
						|
$rabbit_user             = 'openstack_rabbit_user'
 | 
						|
$fixed_network_range     = '10.0.0.0/24'
 | 
						|
$floating_network_range  = '192.168.101.64/28'
 | 
						|
$secret_key              = 'secret_key'
 | 
						|
$mysql_root_password     = 'secret'
 | 
						|
# switch this to true to have all service log at verbose
 | 
						|
$verbose                 = false
 | 
						|
# by default it does not enable atomatically adding floating IPs
 | 
						|
$auto_assign_floating_ip = false
 | 
						|
 | 
						|
 | 
						|
#### end shared variables #################
 | 
						|
 | 
						|
# all nodes whose certname matches openstack_all should be
 | 
						|
# deployed as all-in-one openstack installations.
 | 
						|
node /openstack_all/ {
 | 
						|
 | 
						|
  include 'apache'
 | 
						|
 | 
						|
  class { 'openstack::all':
 | 
						|
    public_address          => $ipaddress_eth0,
 | 
						|
    public_interface        => $public_interface,
 | 
						|
    private_interface       => $private_interface,
 | 
						|
    admin_email             => $admin_email,
 | 
						|
    admin_password          => $admin_password,
 | 
						|
    cinder_db_password      => $cinder_db_password,
 | 
						|
    cinder_user_password    => $cinder_user_password,
 | 
						|
    keystone_db_password    => $keystone_db_password,
 | 
						|
    keystone_admin_token    => $keystone_admin_token,
 | 
						|
    nova_db_password        => $nova_db_password,
 | 
						|
    nova_user_password      => $nova_user_password,
 | 
						|
    glance_db_password      => $glance_db_password,
 | 
						|
    glance_user_password    => $glance_user_password,
 | 
						|
    rabbit_password         => $rabbit_password,
 | 
						|
    rabbit_user             => $rabbit_user,
 | 
						|
    libvirt_type            => 'kvm',
 | 
						|
    floating_range          => $floating_network_range,
 | 
						|
    fixed_range             => $fixed_network_range,
 | 
						|
    verbose                 => $verbose,
 | 
						|
    auto_assign_floating_ip => $auto_assign_floating_ip,
 | 
						|
    secret_key              => $secret_key,
 | 
						|
    neutron                 => false,
 | 
						|
    mysql_root_password     => $mysql_root_password,
 | 
						|
  }
 | 
						|
 | 
						|
  class { 'openstack::auth_file':
 | 
						|
    admin_password       => $admin_password,
 | 
						|
    keystone_admin_token => $keystone_admin_token,
 | 
						|
    controller_node      => '127.0.0.1',
 | 
						|
  }
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
# multi-node specific parameters
 | 
						|
 | 
						|
$controller_node_address  = '192.168.101.11'
 | 
						|
 | 
						|
$controller_node_public   = $controller_node_address
 | 
						|
$controller_node_internal = $controller_node_address
 | 
						|
 | 
						|
node /openstack_controller/ {
 | 
						|
 | 
						|
#  class { 'nova::volume': enabled => true }
 | 
						|
 | 
						|
#  class { 'nova::volume::iscsi': }
 | 
						|
 | 
						|
  class { 'openstack::controller':
 | 
						|
    public_address          => $controller_node_public,
 | 
						|
    public_interface        => $public_interface,
 | 
						|
    private_interface       => $private_interface,
 | 
						|
    internal_address        => $controller_node_internal,
 | 
						|
    floating_range          => $floating_network_range,
 | 
						|
    fixed_range             => $fixed_network_range,
 | 
						|
    # by default it does not enable multi-host mode
 | 
						|
    multi_host              => true,
 | 
						|
    # by default is assumes flat dhcp networking mode
 | 
						|
    network_manager         => 'nova.network.manager.FlatDHCPManager',
 | 
						|
    verbose                 => $verbose,
 | 
						|
    auto_assign_floating_ip => $auto_assign_floating_ip,
 | 
						|
    mysql_root_password     => $mysql_root_password,
 | 
						|
    admin_email             => $admin_email,
 | 
						|
    admin_password          => $admin_password,
 | 
						|
    keystone_db_password    => $keystone_db_password,
 | 
						|
    keystone_admin_token    => $keystone_admin_token,
 | 
						|
    cinder_db_password      => $cinder_db_password,
 | 
						|
    cinder_user_password    => $cinder_user_password,
 | 
						|
    glance_db_password      => $glance_db_password,
 | 
						|
    glance_user_password    => $glance_user_password,
 | 
						|
    neutron                 => false,
 | 
						|
    nova_db_password        => $nova_db_password,
 | 
						|
    nova_user_password      => $nova_user_password,
 | 
						|
    rabbit_password         => $rabbit_password,
 | 
						|
    rabbit_user             => $rabbit_user,
 | 
						|
    secret_key              => $secret_key,
 | 
						|
  }
 | 
						|
 | 
						|
  class { 'openstack::auth_file':
 | 
						|
    admin_password       => $admin_password,
 | 
						|
    keystone_admin_token => $keystone_admin_token,
 | 
						|
    controller_node      => $controller_node_internal,
 | 
						|
  }
 | 
						|
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
node /openstack_compute/ {
 | 
						|
 | 
						|
  class { 'openstack::compute':
 | 
						|
    public_interface   => $public_interface,
 | 
						|
    private_interface  => $private_interface,
 | 
						|
    internal_address   => $ipaddress_eth0,
 | 
						|
    libvirt_type       => 'kvm',
 | 
						|
    fixed_range        => $fixed_network_range,
 | 
						|
    network_manager    => 'nova.network.manager.FlatDHCPManager',
 | 
						|
    multi_host         => true,
 | 
						|
    cinder_db_password => $cinder_db_password,
 | 
						|
    nova_db_password   => $nova_db_password,
 | 
						|
    nova_user_password => $nova_user_password,
 | 
						|
    neutron            => false,
 | 
						|
    rabbit_host        => $controller_node_internal,
 | 
						|
    rabbit_password    => $rabbit_password,
 | 
						|
    rabbit_user        => $rabbit_user,
 | 
						|
    glance_api_servers => "${controller_node_internal}:9292",
 | 
						|
    vncproxy_host      => $controller_node_public,
 | 
						|
    vnc_enabled        => true,
 | 
						|
    verbose            => $verbose,
 | 
						|
    manage_volumes     => true,
 | 
						|
    volume_group       => 'cinder-volumes'
 | 
						|
  }
 | 
						|
 | 
						|
}
 |