Skip to content
This repository has been archived by the owner on May 14, 2019. It is now read-only.

Commit

Permalink
Merge pull request #106 from cmurphy/juno_experimentation
Browse files Browse the repository at this point in the history
Juno implementation
  • Loading branch information
cmurphy committed Nov 3, 2014
2 parents 5a200c9 + 6887b1f commit 00fff51
Show file tree
Hide file tree
Showing 26 changed files with 125 additions and 53 deletions.
2 changes: 2 additions & 0 deletions .gitignore
@@ -1,5 +1,7 @@
examples/allinone/Puppetfile
examples/multinode/Puppetfile
examples/swift/Puppetfile
**/.vagrant
examples/allinone/modules
examples/multinode/modules
examples/swift/modules
8 changes: 6 additions & 2 deletions Puppetfile
Expand Up @@ -58,13 +58,17 @@ mod "apache",
:git => "git://github.com/puppetlabs/puppetlabs-apache",
:ref => "1.1.1"

mod "epel",
:git => "git://github.com/stahnma/puppet-module-epel",
:ref => "master"

mod "inifile",
:git => "git://github.com/puppetlabs/puppetlabs-inifile",
:ref => "1.0.x"

mod "mysql",
:git => "git://github.com/puppetlabs/puppetlabs-mysql",
:ref => "2.2.x"
:ref => "master"

mod "stdlib",
:git => "git://github.com/puppetlabs/puppetlabs-stdlib",
Expand Down Expand Up @@ -109,7 +113,7 @@ mod "vcsrepo",

mod "firewall",
:git => "git://github.com/puppetlabs/puppetlabs-firewall",
:ref => "1.0.x"
:ref => "master"

mod "apt",
:git => "git://github.com/puppetlabs/puppetlabs-apt",
Expand Down
2 changes: 1 addition & 1 deletion examples/allinone.yaml
Expand Up @@ -93,7 +93,7 @@ openstack::ceilometer::meteringsecret: 'ceilometersecretkey'

######## Heat
openstack::heat::password: 'zap-bang'
openstack::heat::encryption_key: 'heatsecretkey'
openstack::heat::encryption_key: 'heatsecretkey123'


######## Horizon
Expand Down
3 changes: 1 addition & 2 deletions examples/allinone/10_setup_master.sh
Expand Up @@ -2,8 +2,7 @@
# Set up the Puppet Master

vagrant ssh puppet -c "sudo service iptables stop; \
sudo rpm -i http://yum.puppetlabs.com/puppetlabs-release-el-6.noarch.rpm; \
sudo yum install -y puppet-server; \
sudo apt-get install -y puppetmaster; \
sudo rmdir /etc/puppet/modules || sudo unlink /etc/puppet/modules; \
sudo ln -s /vagrant/modules /etc/puppet/modules; \
sudo ln -s /vagrant/site.pp /etc/puppet/manifests/site.pp; \
Expand Down
11 changes: 10 additions & 1 deletion examples/allinone/README.md
@@ -1,4 +1,13 @@
A few notes on using Vagrant and VMWare Fusion to test the Havana module:
# Allinone deployment

## Notes about the Swift deployment example

This example setup configures control, compute, network, and block storage on a
single node.

## Notes about setting up Vagrant and VMWare

A few notes on using Vagrant and VMWare Fusion to test the OpenStack module:

Five networks need to be setup in VMWare Fusion. The default net for
Vagrant, and the four OpenStack networks.
Expand Down
4 changes: 3 additions & 1 deletion examples/allinone/Vagrantfile
Expand Up @@ -5,14 +5,14 @@
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "puppetlabs/centos-65-x64-openstack"

config.hostmanager.enabled = true
config.hostmanager.manage_host = false
config.hostmanager.ignore_private_ip = false
config.hostmanager.include_offline = true

config.vm.define "puppet" do |puppet|
puppet.vm.box = "puppetlabs/ubuntu-14.04-64-puppet"
puppet.vm.network :private_network, ip: "192.168.11.3"
puppet.vm.network :private_network, ip: "192.168.22.3"
puppet.vm.network :private_network, ip: "172.16.33.3"
Expand All @@ -28,6 +28,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
end

config.vm.define "allinone" do |allinone|
allinone.vm.box = "jeffmccune/centos7"
allinone.vm.network :private_network, ip: "192.168.11.4"
allinone.vm.network :private_network, ip: "192.168.22.4"
allinone.vm.network :private_network, ip: "172.16.33.4"
Expand All @@ -40,6 +41,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
allinone.vm.provider "vmware_fusion" do |v|
v.vmx["memsize"] = "6144"
v.vmx["numvcpus"] = "4"
v.vmx["vhv.enable"] = "TRUE"
end
end

Expand Down
2 changes: 1 addition & 1 deletion examples/common.yaml
Expand Up @@ -93,7 +93,7 @@ openstack::ceilometer::meteringsecret: 'ceilometersecretkey'

######## Heat
openstack::heat::password: 'zap-bang'
openstack::heat::encryption_key: 'heatsecretkey'
openstack::heat::encryption_key: 'heatsecretkey123'


######## Horizon
Expand Down
6 changes: 2 additions & 4 deletions examples/multinode/10_setup_master.sh
Expand Up @@ -2,11 +2,9 @@
# Set up the Puppet Master

vagrant ssh puppet -c "sudo service iptables stop; \
sudo rpm -i http://yum.puppetlabs.com/puppetlabs-release-el-6.noarch.rpm; \
sudo yum install -y puppet-server; \
sudo apt-get install -y puppetmaster; \
sudo rmdir /etc/puppet/modules || sudo unlink /etc/puppet/modules; \
sudo ln -s /vagrant/modules /etc/puppet/modules; \
sudo ln -s /vagrant/site.pp /etc/puppet/manifests/site.pp; \
sudo service puppetmaster start;\
sudo service puppetmaster start; \
sudo puppet agent -t;"
# sudo puppet apply --modulepath /etc/puppet/modules -e \"class { '::puppetdb': listen_address => '0.0.0.0', ssl_listen_address => '0.0.0.0' } class { 'puppetdb::master::config': puppetdb_server => 'puppet'}\""
1 change: 0 additions & 1 deletion examples/multinode/50_destroy_nodes.sh
@@ -1,2 +1 @@
vagrant destroy -f puppet control storage network compute
vagrant destroy -f tempest
18 changes: 16 additions & 2 deletions examples/multinode/README.md
@@ -1,4 +1,18 @@
A few notes on using Vagrant and VMWare Fusion to test the Havana module:
# Multinode deployment

## Notes about the Multinode deployment example

This example setup configures a controller node, a block storage node, a compute
node, and a network node. The controller node is equipt to act as a proxy for a
swift setup and will set up swift endpoints, but swift is not set up
automatically. To get swift up and running, you need to install puppetdb on the
pupept master, include the openstack::role::swiftstorage class on your swift
nodes, run puppet on them, and then run puppet on the controller once more. See
the swift examples directory for example setup.

## Notes about setting up Vagrant and VMWare

A few notes on using Vagrant and VMWare Fusion to test the OpenStack module:

Five networks need to be setup in VMWare Fusion. The default net for
Vagrant, and the four OpenStack networks.
Expand Down Expand Up @@ -40,7 +54,7 @@ The Vagrantfile will automatically download a prepared CentOS box for you.
You need to have R10K installed. You can use the one provided by the rubygem.

```
ruby gem install R10K
gem install R10K
```

Using R10K, module dependencies are automatically downloaded and the root of the module
Expand Down
4 changes: 3 additions & 1 deletion examples/multinode/Vagrantfile
Expand Up @@ -5,14 +5,16 @@
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "puppetlabs/centos-65-x64-openstack"

config.vm.box = "jeffmccune/centos7"

config.hostmanager.enabled = true
config.hostmanager.manage_host = false
config.hostmanager.ignore_private_ip = false
config.hostmanager.include_offline = true

config.vm.define "puppet" do |puppet|
puppet.vm.box = "puppetlabs/ubuntu-14.04-64-puppet"
puppet.vm.network :private_network, ip: "192.168.11.3"
puppet.vm.network :private_network, ip: "192.168.22.3"
puppet.vm.network :private_network, ip: "172.16.33.3"
Expand Down
2 changes: 1 addition & 1 deletion examples/multinode/firstrun.sh
Expand Up @@ -2,7 +2,7 @@
./00_download_modules.sh
./05_up.sh
./10_setup_master.sh
./11_setup_havana.sh
./11_setup_openstack.sh
./20_setup_nodes.sh
./30_deploy_control.sh
./40_deploy_nodes.sh
11 changes: 10 additions & 1 deletion examples/swift/README.md
@@ -1,4 +1,13 @@
A few notes on using Vagrant and VMWare Fusion to test the Havana module:
# Swift deployment

## Notes about the Swift deployment example

This example setup only configures a controller node and three object storage
nodes.

## Notes about setting up Vagrant and VMWare

A few notes on using Vagrant and VMWare Fusion to test the OpenStack module:

Five networks need to be setup in VMWare Fusion. The default net for
Vagrant, and the four OpenStack networks.
Expand Down
52 changes: 52 additions & 0 deletions files/RPM-GPG-KEY-RDO-Juno
@@ -0,0 +1,52 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1

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
tqA=
=vBYB
-----END PGP PUBLIC KEY BLOCK-----
1 change: 1 addition & 0 deletions manifests/common/glance.pp
Expand Up @@ -15,5 +15,6 @@
debug => $::openstack::config::debug,
enabled => $::openstack::profile::base::is_storage,
mysql_module => '2.2',
os_region_name => $::openstack::region,
}
}
6 changes: 6 additions & 0 deletions manifests/profile/firewall.pp
@@ -1,4 +1,10 @@
class openstack::profile::firewall {
if $::osfamily == 'RedHat' and $::operatingsystemmajversion == 7 {
package { 'iptables-services':
ensure => present,
}
Package['iptables-services'] -> Firewall<||>
}
class { '::openstack::profile::firewall::pre': }
class { '::openstack::profile::firewall::puppet': }
class { '::openstack::profile::firewall::post': }
Expand Down
1 change: 0 additions & 1 deletion manifests/profile/mysql.pp
Expand Up @@ -25,7 +25,6 @@

class { '::mysql::bindings':
python_enable => true,
ruby_enable => true,
}

Service['mysqld'] -> Anchor['database-service']
Expand Down
11 changes: 0 additions & 11 deletions manifests/profile/neutron/router.pp
Expand Up @@ -52,17 +52,6 @@
enabled => true,
}

# Temporarily fix a bug on RHEL packaging
if $::osfamily == 'RedHat' {
file { '/usr/lib/python2.6/site-packages/neutronclient/client.py':
ensure => present,
source => 'puppet:///modules/openstack/client.py',
mode => '0644',
notify => Service['neutron-metadata-agent'],
require => Package['openstack-neutron'],
}
}

$external_bridge = 'brex'
$external_network = $::openstack::config::network_external
$external_device = device_for_network($external_network)
Expand Down
2 changes: 1 addition & 1 deletion manifests/profile/swift/storage.pp
Expand Up @@ -9,7 +9,7 @@
proto => 'tcp',
state => ['NEW'],
action => 'accept',
port => '',
port => '6000',
}

firewall { '6001 - Swift Container Store':
Expand Down
4 changes: 2 additions & 2 deletions manifests/resources/repo.pp
Expand Up @@ -3,10 +3,10 @@
# on RHEL-alikes and Ubuntu
#
class openstack::resources::repo(
$release = 'icehouse'
$release = 'juno'
) {
case $release {
'icehouse', 'havana', 'grizzly': {
'juno', 'icehouse', 'havana', 'grizzly': {
if $::osfamily == 'RedHat' {
class {'openstack::resources::repo::rdo': release => $release }
class {'openstack::resources::repo::erlang': }
Expand Down
20 changes: 2 additions & 18 deletions manifests/resources/repo/epel.pp
@@ -1,25 +1,9 @@
class openstack::resources::repo::epel {
if ($::osfamily == 'RedHat' and
$::operatingsystem != 'Fedora' and
$::operatingsystemrelease =~ /^6\..*$/) {
$::operatingsystemmajrelease >= 6) {
include openstack::resources::repo::yum_refresh

yumrepo { 'epel':
mirrorlist => 'https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch',
descr => 'Extra Packages for Enterprise Linux 6 - $basearch',
enabled => 1,
gpgcheck => 1,
gpgkey => 'file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6',
failovermethod => priority,
notify => Exec['yum_refresh']
}
file { '/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6':
source => 'puppet:///modules/openstack/RPM-GPG-KEY-EPEL-6',
owner => root,
group => root,
mode => '0644',
before => Yumrepo['epel'],
}
Yumrepo['epel'] -> Package<||>
include ::epel
}
}
2 changes: 1 addition & 1 deletion manifests/resources/repo/rdo.pp
Expand Up @@ -30,6 +30,6 @@
mode => '0644',
before => Yumrepo['rdo-release'],
}
Yumrepo['rdo-release'] -> Package<||>
Yumrepo<||> -> Package<||>
}
}
2 changes: 1 addition & 1 deletion manifests/resources/user.pp
Expand Up @@ -15,7 +15,7 @@

if $admin == true {
keystone_user_role { "$name@$tenant":
roles => ['_member_', 'admin'],
roles => ['_member_', 'admin', 'heat_stack_owner'],
ensure => present,
}
} else {
Expand Down
2 changes: 2 additions & 0 deletions manifests/role/allinone.pp
Expand Up @@ -20,4 +20,6 @@
class { '::openstack::profile::auth_file': }
class { '::openstack::setup::sharednetwork': }
class { '::openstack::setup::cirros': }

Class['::openstack::profile::ceilometer::api'] -> Class['::openstack::setup::cirros']
}
1 change: 1 addition & 0 deletions manifests/role/controller.pp
Expand Up @@ -5,6 +5,7 @@
class { '::openstack::profile::mysql': } ->
class { '::openstack::profile::mongodb': } ->
class { '::openstack::profile::keystone': } ->
class { '::openstack::profile::swift::proxy': } ->
class { '::openstack::profile::ceilometer::api': } ->
class { '::openstack::profile::glance::auth': } ->
class { '::openstack::profile::cinder::api': } ->
Expand Down

0 comments on commit 00fff51

Please sign in to comment.