aboutsummaryrefslogtreecommitdiffstats
path: root/puppet
AgeCommit message (Collapse)AuthorFilesLines
2016-03-05Allow to enable IPv6 on CorosyncEmilien Macchi2-2/+15
To enable IPv6 in Corosync, you'll need to set the --ipv6 parameter when building the cluster. To do so, we need to specify this parameter in puppet configuration when running ::pacemaker::corosync class. So we have now a new parameter: CorosyncIPv6 which is a boolean, False by default. If set to True, it will pass right options to enable IPv6 when building the Pacemaker cluster. Change-Id: I485f1399964ddd7a201ed19ec6580b8a136b3acd
2016-03-05Merge "Add IPv6 Support to Isolated Networks"Jenkins5-13/+65
2016-03-05Fix rabbit_hosts list for glance-api for IPv6Giulio Fidente3-8/+3
Previously we were always appending the :port suffix to the list of rabbitmq nodes but the syntax was invalid for IPv6. This change wires rabbit_hosts from the templates as it happens already for the other services. Port can be customized using rabbit_port. Change-Id: Iecc7a97d46d7de17e85398c57996c104c9125b0e
2016-03-05Use MysqlVirtualIPUri for nova_api and sahara databaseGiulio Fidente1-2/+2
Without this the nova_api and sahara database_connection string won't add brackets around the IP address, when IPv6, causing db sync to fail. Change-Id: I262e5de993ae59ad665edb043119aac2e09c6fdc
2016-03-04Merge "Allow for usage of pre-allocated IPs for the management network"Jenkins1-0/+2
2016-03-04Merge "Run keystone-manage bootstrap for HA deployment too"Jenkins1-3/+1
2016-03-04Run keystone-manage bootstrap for HA deployment tooJiri Stransky1-3/+1
This is necessary to keep creating the Default domain. Change-Id: Ib9911819e89f30270d4f7597639b33f30ad2e3a6 Closes-Bug: #1549867
2016-03-04Merge "Set notification driver for nova to send"Jenkins1-1/+1
2016-03-04Add IPv6 Support to Isolated NetworksDan Sneddon5-13/+65
This change adds a new set of network templates with IPv6 subnets that can be used instead of the existing IPv4 networks. Each network can use either the IPv4 or IPv6 template, and the Neutron subnet will be created with the specified IP version. The default addresses used for the IPv6 networks use the fd00::/8 prefix for the internal isolated networks (this range is reserved for private use similar to 10.0.0.0/8), and 2001:db8:fd00:1000::/64 is used as an example default for the External network (2001:db8::/32 are the documentation addresses [RFC3849]), but this would ordinarily be a globally addressable subnet. These parameters may be overridden in an environment file. This change will require updates to the OpenStack Puppet Modules to support IPv6 addresses in some of the hieradata values. Many of the OPM modules already have IPv6 support to support IPv6 deployments in Packstack, but some OPM packages that apply only to Instack/TripleO deployments need to be updated. IPv6 addresses used in URLs need to be surrounded by brackets in order to differentiate IP address from port number. This change adds a new output to the network/ports resources for ip_address_uri, which is an IP address with brackets in the case of IPv6, and a raw IP address without brackets for IPv4 ports. This change also updates some URLs which are constructed in Heat. This has been tested and problems were found with Puppet not accepting IPv6 addresses. This is addressed in the latest Puppet. Additional changes were required to make this work with Ceph. IPv6 tunnel endpoints with Open vSwitch are not yet supported (although support is coming soon), so this review leaves the Tenant network as an isolated IPv4 network for the time being. Change-Id: Ie7a742bdf1db533edda2998a53d28528f80ef8e2
2016-03-04Allow for usage of pre-allocated IPs for the management networkSteven Hardy1-0/+2
Id3d4f12235501ae77200430a2dc022f378dce336 added support for pre-allocated IPs on the other overlay networks, but because the patch adding the managment network (I0813a13f60a4f797be04b34258a2cffa9ea7e84f) was under review around the same time, we missed adding the from_pool capability to the ManagementNetwork. Change-Id: If99f37634d5da7e7fb7cfc31232e926bd5ff074a
2016-03-03Merge "Deploy Aodh services, replacing Ceilometer Alarm"Jenkins7-1/+158
2016-03-03Updated the heat_template_versionrajinir2-2/+2
Fixed the heat_template_version of these YAML files to the liberty release version according to HOT template specs. Change-Id: Ic5e0d843f7e164c59fb1737e52ef4cf6ad4df77f
2016-03-03Deploy Aodh services, replacing Ceilometer AlarmEmilien Macchi7-1/+158
Ceilometer Alarm is deprecated in Liberty by Aodh. This patch: * manage Aodh Keystone resources * deploy Aodh API under WSGI, Notifier, Listener and Evaluator * manage new parameters to customize Aodh deployment * uses ceilometer DB for the upgrade path * pacemaker config Depends-On: I9e34485285829884d9c954b804e3bdd5d6e31635 Depends-On: I891985da9248a88c6ce2df1dd186881f582605ee Depends-On: Ied8ba5985f43a5c5b3be5b35a091aef6ed86572f Co-Authored-By: Pradeep Kilambi <pkilambi@redhat.com> Change-Id: I58d419173e80d2462accf7324c987c71420fd5f6
2016-03-03Merge "Cisco nexus config template - obsolete parameter (replay count)."Jenkins1-2/+9
2016-03-02Merge "Use service tenant for ceilometer"Jenkins1-3/+1
2016-03-02Merge "Add HostnameMap to allow granular control of hostnames"Jenkins5-5/+40
2016-03-01Merge "Enable heat-manage purge_deleted cron job"Jenkins4-0/+19
2016-03-01Move ordering constraints from httpd to openstack-coreMichele Baldessari1-42/+57
With the move of keystone under wsgi and httpd, all openstack services received an ordering constraint on the 'httpd' service (which now exposes keystone and horizon). Since this is not only a layering violation, but it also removes the ability to restart keystone (httpd) without having to restart all dependent services, we introduce a dummy 'openstack-core' service which all other services depend on and we make also keystone (httpd) depend on it. The previous constraint ordering graph can be found here: http://acksyn.org/files/tripleo/wsgi-2016-02-24-cib.pdf Whereas after this change we have the following ordering graph: http://acksyn.org/files/tripleo/wsgi-openstack-core.pdf Once this is agreed upon, we can start working on fixing the upgrade path from Liberty. This fixes RHBZ#1290121 Closes bug: 1537885 Change-Id: Ie26908ac9bfc0b84b6b65ae3bda711236b03d9d4
2016-02-29controller/ha: disable keystone-manage bootstrap.Emilien Macchi1-3/+6
Because Overcloud Keystone resources are not managed by puppet-keystone but by os-cloud-config, we need to let os-cloud-config managing keystone bootstrap otherwise the Exec will fail since some data is already in place. Later, when Keystone resources will be managed by Puppet, drop this parameter, because puppet-keystone is able to manage the boostrap itself. Change-Id: I027deaae5cf90c27a6b5e9d236ae61145cab3c3f Closes-Bug: #1551501
2016-02-29Cisco nexus config template - obsolete parameter (replay count).Leon Zachery1-2/+9
Due to fix: https://bugs.launchpad.net/networking-cisco/+bug/1469839, the replay count parameter is no longer used. This needs to be reflected in the Triple O templates. Change-Id: I666c4394108287adcb4989e897ab3936667a602b Closes-bug: #1551387
2016-02-29Add missing createUser line to /etc/snmp/snmpd.confRichard Su5-5/+5
Adds missing configuration which allows overcloud nodes to be polled by undercloud node. One would have expected the snmp::snmpv3_user call to create the missing configuration line. But as noted in this bug, it does not: https://github.com/razorsedge/puppet-snmp/issues/9 Fixes BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1223278 Change-Id: Ieb2d612a27a938b45056bd37176f44cb55543d75 Closes-Bug: 1532700
2016-02-29Merge "OpenContrail heat templates"Jenkins7-2/+127
2016-02-29Merge "Enable notifications on the overcloud"Jenkins4-3/+23
2016-02-27Merge "Add support for DeployArtifactURLs"Jenkins7-3/+117
2016-02-26Merge "Emits a different hostname for each network the node is on"Jenkins5-15/+230
2016-02-26Add support for DeployArtifactURLsDan Prince7-3/+117
Adds a new nested stack deployment which allows operators to opt-in to deploy tarball's and RPM packages by setting DeployArtifactURLs as a parameter_default in a Heat environment. The intent is to use this setting to allow t-h-t to transparently deploy things like tarballs of puppet modules via a Swift Temp URL. Change-Id: I1bad4a4a79cf297f5b6e439e0657269738b5f326 Implements: blueprint puppet-modules-deployment-via-swift
2016-02-26Merge "Nova RPC unpinning"Jenkins2-0/+12
2016-02-26Merge "Add meta notify=true to rabbitmq resource"Jenkins1-0/+1
2016-02-25Set notification driver for nova to sendPradeep Kilambi1-1/+1
Currently since nova compute is not configured to send notifications to ceilometer, tempest tests fail on tempest.api.telemetry.test_telemetry_notification_api. Change-Id: I763b7d246ae3f5955b6f555c8fd107d2cac89787
2016-02-25Enable notifications on the overcloudBen Nemec4-3/+23
Configures all services to send notifications to rabbit. The puppet modules are not consistent regarding how this is done - some expose notification config as a top-level param, others you need to set it through a *_config structure, and cinder provides a separate class dedicated to enabling ceilometer notifications. Change-Id: I23e2ddad3c59a06cfbfe5d896a16e6bad2abd943
2016-02-24Emits a different hostname for each network the node is onGiulio Fidente5-15/+230
Populates /etc/hosts with an entry for each IP address the node is on, which will be useful to migrate services configuration from using IPs into using hostnames. This is how the lines look like on a host which doesn't have all ports: 172.16.2.6 overcloud-novacompute-0.localdomain overcloud-novacompute-0 192.0.2.9 overcloud-novacompute-0-external 172.16.2.6 overcloud-novacompute-0-internalapi 172.16.1.6 overcloud-novacompute-0-storage 192.0.2.9 overcloud-novacompute-0-storagemgmt 172.16.0.4 overcloud-novacompute-0-tenant 192.0.2.9 overcloud-novacompute-0-management the network against which the default (or primary) name is resolved can be configured (for computes) via ComputeHostnameResolveNetwork Change-Id: Id480207c68e5d68967d67e2091cd081c17ab5dd7
2016-02-24Nova RPC unpinningJiri Stransky2-0/+12
During upgrades, we only run Puppet on the whole deployment to converge the state, after the upgrade workflow itself has been fully completed. That is an opportunity to utilize Puppet to make sure Nova Compute RPC doesn't remain pinned to the older version. Change-Id: I6ebc813a80dfd9dfbbb213c38724487e044507b8
2016-02-24Merge "Nova Neutron configuration now uses keystone v3 endpoint"Jenkins2-2/+2
2016-02-24Merge "Update nova::network::neutron variables to drop deprecated parameters"Jenkins3-9/+9
2016-02-24Merge "Allow vncproxy to work with ssl enabled"Jenkins1-0/+6
2016-02-23Permits configuration of Cinder enabled_backend via hieradataGiulio Fidente5-3/+6
It is currently possible to provide arbitrary config settings for Cinder using the "cinder::config::cinder_config:" hiera key. To add a backend though particular one has to edit the list of enabled backends in Cinder too which isn't possible. This change will make it possible using a user-customizable array of backends to be enabled. Change-Id: Ic664c1c2b0f7b1b4b6be8b5064a38650694d4857
2016-02-23Nova Neutron configuration now uses keystone v3 endpointDavid Moreau Simard2-2/+2
Our current nova-neutron configuration does not work with the latest puppet-nova. In particular, this patch[1]. This commit adds keystone v3 endpoints to the map and gets the nova::network::neutron configuration to use them. [1] https://github.com/openstack/puppet-nova/commit/d09868a59c451932d67c66101b725182d7066a14 Change-Id: Ifb8c23c81c665c2732fa5cd757760668b06a449a
2016-02-23Add meta notify=true to rabbitmq resourceMichele Baldessari1-0/+1
See RHBZ 1311005 and 1247303. In short: sometimes when a controller node gets fenced, rabbitmq is unable to rejoin the cluster. To fix this we need two steps: 1) The fix for the RA in BZ 1247303 2) Add notify=true to the meta parameters of the rabbitmq resource on fresh installs and updates Note that if this change is applied on systems that do not have the fix for the rabbitmq resource agent, no action is taken. So when the resource agent will be updated, the notify operation will start to work as soon as the first monitor action will take place. Fixes RH Bug #1311005 Change-Id: I513daf6d45e1a13d43d3c404cfd6e49d64e51d5a
2016-02-22Add extra config yaml files for big switch agents.xinwu6-3/+54
This change adds extra config yaml files for big switch agent and big switch lldp. This change is mainly for compute nodes. The changes related to controller nodes are landed at e78e1c8d9b5a7ebf327987b22091bff3ed42d1c1 This change also removes the neutron_enable_bigswitch_ml2 flag. Instead, User needs to specify NeutronMechanismDrivers: bsn_ml2 in environment file. Previous discussion about this change can be found at an abandoned review request https://review.openstack.org/#/c/271940/ Depends-On: Iefcfe698691234490504b6747ced7bb9147118de Change-Id: I81341a4b123dc4a8312a9a00f4b663c7cca63d7c
2016-02-22Update nova::network::neutron variables to drop deprecated parametersDavid Moreau Simard3-9/+9
This commit ensures we are not using any deprecated parameters for nova::network::neutron and are using the right variable names. Change-Id: Ic1b41e2cdbb6b180496822cc363c433e9388aa02
2016-02-19Merge "Use the class param to configure Cinder 'host' setting"Jenkins1-3/+1
2016-02-19Merge "Add TripleO Heat Template Parameters for Neutron Tenant MTU"Jenkins2-0/+24
2016-02-19Use the class param to configure Cinder 'host' settingGiulio Fidente1-3/+1
By configuring the Cinder 'host' setting via the appropriate class param instead of cinder_config we don't risk to override it if the user is to pass additional config settings using cinder_config in ExtraConfig. Change-Id: Idf33d87e08355b5b4369ccb0001db8d4c3b4c20f
2016-02-18Merge "Configure keystone public_endpoint"Jenkins1-1/+1
2016-02-18Merge "Enable the ML2 port security extension driver by default"Jenkins1-1/+1
2016-02-18Merge "Add missing : in hieradata key name"Jenkins1-1/+1
2016-02-18Add sysctl settings to disable IPv6 autoconfig and accept_raDan Sneddon1-0/+5
This change adds puppet hieradata settings which disable IPv6 autoconfiguration and accept_ra by default on all interfaces. When IPv6 is used, the interfaces are individually enabled and configured with static IP addresses. The networking on the compute host needs to be completely separate from the tenant networking, in order to safeguard the compute host and isolate tenant traffic. This change disables IPv6 autoconfiguration and acceptance of RAs by default on interfaces unless specifically enabled. Without these settings, IPv6 is enabled on all interfaces, as well as autoconfiguration and accept_ra, so when the compute host creates a bridge interface for the router (qbr-<ID>), the compute node will automatically assign an IPv6 address and will install a default IPv6 route on the bridge interface when it receives the RAs from the Neutron router. The change to turn off autoconfiguration means that interfaces will not self-assign an IPv6 address, and the change to not accept RAs is a security hardening feature. This requires that a static gateway address be declared in the network environment in the parameter ExternalNetworkDefaultRoute. Alternately, sysctl can be modified to change the accept_ra behavior for specific interfaces. Change-Id: I8a8d311a14b41baf6e7e1b8ce26a63abc2eaabef Closes-bug: 1544296
2016-02-18Merge "Make injected CA file readable by others"Jenkins1-1/+1
2016-02-18Merge "Increase size of connection tracking table"Jenkins7-0/+19
2016-02-17Add TripleO Heat Template Parameters for Neutron Tenant MTUDan Sneddon2-0/+24
This change adds the TripleO Heat Parameters and Puppet hieradata to support setting the MTU for Neutron tenant networks. A new parameter, NeutronTenantMtu is introduced, and this gets used for the NeutronDnsmasqOptions and in Puppet hieradata. NeutronTenantMtu is also used in the Puppet hieradata for both the compute and control nodes. Two values are set: nova::compute::network_device_mtu which sets /etc/nova/nova.conf: network_device_mtu = <NeutronTenantMtu> neutron::network_device_mtu which sets in /etc/neutron/neutron.conf: network_device_mtu = <NeutronTenantMtu> finally, the NeutronDnsmasqOptions parameter becomes a str_format that maps the NeutronTenantMtu onto the DHCP options, so a default of 'dhcp-option-force=26,%MTU%' would be formatted to 'dhcp-option-force=26,1300' if NeutronTenantMtu were 1300. This will set dnsmasq to serve an MTU via DHCP that matches the NeutronTenantMtu: /etc/neutron/dnsmasq-neutron.conf:dhcp-option-force=26,1300 Typically, you would change all three of these settings to use small or jumbo frames in VMs. When using tunneling, NeutronTenantMtu should be set at least 50 bytes smaller than the physical network MTU in order to make room for tunneling overhead. Note that this change does not support setting the MTU on veth interfaces if veth patches are used to br-int instead of OVS patches. Change-Id: I38840e082ee01dc3b6fc78e1dd97f53fa4e63039