aboutsummaryrefslogtreecommitdiffstats
path: root/puppet
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2015-01-08 08:17:23 +0000
committerGerrit Code Review <review@openstack.org>2015-01-08 08:17:23 +0000
commit5466d83f118a36532c3fe33bbcdd67219a201b65 (patch)
tree73f50a6720d9232572426715ae58cd81dffb6669 /puppet
parent3217305e8d841e56d8e72e0241338e667be23f37 (diff)
parent6812f6f644914da6d4b1c62230517cdd29b1e5f9 (diff)
Merge "Puppet: overcloud compute config"
Diffstat (limited to 'puppet')
-rw-r--r--puppet/hieradata/common.yaml1
-rw-r--r--puppet/hieradata/compute.yaml20
-rw-r--r--puppet/overcloud_compute.pp58
3 files changed, 79 insertions, 0 deletions
diff --git a/puppet/hieradata/common.yaml b/puppet/hieradata/common.yaml
new file mode 100644
index 00000000..884be6af
--- /dev/null
+++ b/puppet/hieradata/common.yaml
@@ -0,0 +1 @@
+# Common Hiera data gets applied to all nodes
diff --git a/puppet/hieradata/compute.yaml b/puppet/hieradata/compute.yaml
new file mode 100644
index 00000000..ffa716a4
--- /dev/null
+++ b/puppet/hieradata/compute.yaml
@@ -0,0 +1,20 @@
+# Hiera data here applies to all compute nodes
+
+nova::notify_on_state_change: 'vm_and_task_state'
+
+nova::compute::enabled: true
+nova::compute::instance_usage_audit: true
+nova::compute::instance_usage_audit_period: 'hour'
+nova::compute::vnc_enabled: true
+
+nova::compute::libvirt::vncserver_listen: '0.0.0.0'
+nova::compute::libvirt::migration_support: true
+
+nova::network::neutron::neutron_admin_tenant_name: 'service'
+nova::network::neutron::neutron_admin_username: 'neutron'
+nova::network::neutron::vif_plugging_is_fatal: false
+nova::network::neutron::vif_plugging_timeout: 30
+
+neutron::plugins::ml2::tunnel_id_ranges: ['1:1000']
+
+ceilometer::agent::auth::auth_tenant_name: 'service'
diff --git a/puppet/overcloud_compute.pp b/puppet/overcloud_compute.pp
new file mode 100644
index 00000000..798fb544
--- /dev/null
+++ b/puppet/overcloud_compute.pp
@@ -0,0 +1,58 @@
+# Copyright 2014 Red Hat, Inc.
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+class { 'nova':
+ glance_api_servers => join([hiera('glance_protocol'), '://', hiera('glance_host'), ':', hiera('glance_port')]),
+}
+
+file { ['/etc/libvirt/qemu/networks/autostart/default.xml',
+ '/etc/libvirt/qemu/networks/default.xml']:
+ ensure => absent,
+ before => Service['libvirt']
+}
+
+include ::nova::compute
+
+nova_config {
+ 'DEFAULT/my_ip': value => $ipaddress;
+ 'DEFAULT/linuxnet_interface_driver': value => 'nova.network.linux_net.LinuxOVSInterfaceDriver';
+}
+
+include ::nova::compute::libvirt
+
+class { 'nova::network::neutron':
+ neutron_admin_auth_url => join(['http://', hiera('neutron_host'), ':35357/v2.0']),
+ neutron_url => join(['http://', hiera('neutron_host'), ':9696']),
+}
+
+include ::neutron
+
+class { 'neutron::plugins::ml2':
+ flat_networks => split(hiera('neutron_flat_networks'), ','),
+ tenant_network_types => [hiera('neutron_tenant_network_type')],
+ type_drivers => [hiera('neutron_tenant_network_type')],
+}
+
+class { 'neutron::agents::ml2::ovs':
+ bridge_mappings => split(hiera('neutron_bridge_mappings'), ','),
+ tunnel_types => split(hiera('neutron_tunnel_types'), ','),
+}
+
+include ::ceilometer
+include ::ceilometer::agent::compute
+
+class { 'ceilometer::agent::auth':
+ auth_url => join(['http://', hiera('keystone_host'), ':5000/v2.0']),
+}