1 # Copyright 2014 Red Hat, Inc.
4 # Licensed under the Apache License, Version 2.0 (the "License"); you may
5 # not use this file except in compliance with the License. You may obtain
6 # a copy of the License at
8 # http://www.apache.org/licenses/LICENSE-2.0
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13 # License for the specific language governing permissions and limitations
16 if !str2bool(hiera('enable_package_install', 'false')) {
19 Package { provider => 'norpm' } # provided by tripleo-puppet
22 warning('enable_package_install option not supported.')
27 if count(hiera('ntp::servers')) > 0 {
32 glance_api_servers => join([hiera('glance_protocol'), '://', hiera('glance_host'), ':', hiera('glance_port')]),
35 file { ['/etc/libvirt/qemu/networks/autostart/default.xml',
36 '/etc/libvirt/qemu/networks/default.xml']:
38 before => Service['libvirt']
41 include ::nova::compute
44 'DEFAULT/my_ip': value => $ipaddress;
45 'DEFAULT/linuxnet_interface_driver': value => 'nova.network.linux_net.LinuxOVSInterfaceDriver';
48 $nova_enable_rbd_backend = hiera('nova_enable_rbd_backend', false)
49 if $nova_enable_rbd_backend {
50 include ::ceph::profile::client
51 include ::nova::compute::rbd
52 ceph::key { 'client.openstack' :
53 secret => hiera('ceph::profile::params::mon_key'),
54 cap_mon => hiera('ceph_openstack_default_cap_mon'),
55 cap_osd => hiera('ceph_openstack_default_cap_osd'),
60 include ::nova::compute::libvirt
62 class { 'nova::network::neutron':
63 neutron_admin_auth_url => join(['http://', hiera('neutron_host'), ':35357/v2.0']),
64 neutron_url => join(['http://', hiera('neutron_host'), ':9696']),
69 class { 'neutron::plugins::ml2':
70 flat_networks => split(hiera('neutron_flat_networks'), ','),
71 tenant_network_types => [hiera('neutron_tenant_network_type')],
72 type_drivers => [hiera('neutron_tenant_network_type')],
75 class { 'neutron::agents::ml2::ovs':
76 bridge_mappings => split(hiera('neutron_bridge_mappings'), ','),
77 tunnel_types => split(hiera('neutron_tunnel_types'), ','),
81 include ::ceilometer::agent::compute
83 class { 'ceilometer::agent::auth':
84 auth_url => join(['http://', hiera('keystone_host'), ':5000/v2.0']),
87 $snmpd_user = hiera('snmpd_readonly_user_name')
88 snmp::snmpv3_user { $snmpd_user:
90 authpass => hiera('snmpd_readonly_user_password'),
93 agentaddress => ['udp:161','udp6:[::1]:161'],
94 snmpd_config => [ join(['rouser ', hiera('snmpd_readonly_user_name')]), 'proc cron', 'includeAllDisks 10%', 'master agentx', 'trapsink localhost public', 'iquerySecName internalUser', 'rouser internalUser', 'defaultMonitors yes', 'linkUpDownNotifications yes' ],