Colleen Murphy 55b83f9e22 Add controller class and supporting manifests
This adds a manifest to install the controller components as referenced
in the Infra Cloud guide[1]:

  - single-node mysql
  - single-node rabbitmq
  - keystone using the uuid token provider and apache/wsgi with ssl
  - glance api and registry
  - neutron server and ml2 linuxbridge plugin and agent supporting a
    provider network[2]
  - nova api, scheduler, conductor

[1] http://docs.openstack.org/infra/system-config/infra-cloud.html
[2] http://docs.openstack.org/networking-guide/deploy_scenario4b.html

Change-Id: I380f62e48b29103d5abffad24abd9aeca4621f02
2015-10-13 20:12:38 -07:00

26 lines
865 B
Puppet

# Create a veth pair to connect the neutron bridge to the vlan bridge
class infracloud::veth {
exec { 'create veth pair':
command => '/sbin/ip link add veth1 type veth peer name veth2',
unless => '/sbin/ip link show | /bin/grep veth1 && /sbin/ip link show | /bin/grep veth2',
}
exec { 'attach veth pair':
command => '/sbin/brctl addif br-vlan25 veth1',
unless => '/sbin/brctl show br-vlan25 | /bin/grep veth1',
require => Exec['create veth pair'],
}
exec { 'turn on veth1':
command => '/sbin/ip link set dev veth1 up',
unless => '/sbin/ip link show dev veth1 | /bin/grep "state UP"',
require => Exec['attach veth pair'],
}
exec { 'turn on veth2':
command => '/sbin/ip link set dev veth2 up',
unless => '/sbin/ip link show dev veth2 | /bin/grep "state UP"',
require => Exec['attach veth pair'],
}
}