aboutsummaryrefslogtreecommitdiffstats
path: root/puppet
AgeCommit message (Collapse)AuthorFilesLines
2015-10-16Merge "Puppet / Compute: allow to run Ephemeral only storage with RBD"Jenkins2-2/+9
2015-10-16Merge "Allow a deployer to specify HAProxy syslog server address"Jenkins1-0/+6
2015-10-15Set Django cache backend to Memcached instead of LocMemCacheGiulio Fidente1-0/+1
Change-Id: Ia2079fc3e350cc677811ebb970cd2b306d6e7040
2015-10-14Merge "Set shared secrets, keys and passwords as hidden"Jenkins4-0/+8
2015-10-13Merge "Parameterize RabbitMQ FD limit"Jenkins1-0/+13
2015-10-13Add more components virtual ip mapping into controller.Yanis Guenane1-0/+12
Currently only Glance and Heat have their virtual IP passed to the contrller directly. This commit adds the same feature for : * Ceilometer * Cinder * Nova * Swift Change-Id: I295d15d7a0aa33175a5530e3b155b0c61983b6ae
2015-10-13Parameterize RabbitMQ FD limitGiulio Fidente1-0/+13
Together with [1] this change permits to parameterize the file descriptor limit for RabbitMQ for both the Systemd startup script and the Pacemaker resource agent. 1. https://github.com/puppetlabs/puppetlabs-rabbitmq/commit/20325325b977c508b151ef8036107dcfefdf990b Closes-Bug: 1474586 Change-Id: I62d31e483641ccb5cf489df81146ecb31d0c423f
2015-10-13Allow a deployer to specify HAProxy syslog server addressYanis Guenane1-0/+6
This commit aims to allow a deployer to specify where to send haproxy's logs. It is backward compatible with what is already in place and send the logs to the UNIX socket /dev/log The value specified here will be written in the haproxy.cfg file with the following behavior HAProxySyslogAddress: 127.0.0.1 -> log 127.0.0.1 local0 HAProxySyslogAddress: ::1 -> log ::1 local0 HAProxySyslogAddress: /dev/log -> log /dev/log local0 (default) Change-Id: I46c489a1f424e2219d129f332e64c64019aef850 Depends-On: If7f7c8154e544e5d8a49f79f642e1ad01644a66d
2015-10-12Puppet / Compute: allow to run Ephemeral only storage with RBDEmilien Macchi2-2/+9
This patch allows the case where we're not running Ceph to host Persistent storage (volumes) but just to host Ephemeral storage (VMs). Before we were only allowing Ephemeral storage on Ceph when also Persistent storage was using Ceph. Change-Id: I03b775326e4424de413452f4453d4d88de0083bc
2015-10-12Set shared secrets, keys and passwords as hiddenJuan Antonio Osorio Robles4-0/+8
Change-Id: Ieb27729c6b33ffc849d07200ec0d42508214956e Closes-Bug: #1399793
2015-10-12Merge "Allow one to specify horizon ALLOWED_HOSTS"Jenkins2-1/+6
2015-10-12Allow one to specify horizon ALLOWED_HOSTSYanis Guenane2-1/+6
If horizon is running in production (DEBUG is False), it will answer only to the IPs/hostnames specified in the ALLOWED_HOSTS variable in the local_settings.py configuration file. The puppet-horizon module offer the feature to customize that, tripleo-heat-teamplates was missing the link between the top-level parameter and the puppet parameter, hence this commit. More info : * https://docs.djangoproject.com/en/dev/ref/settings/#allowed-hosts * https://github.com/openstack/puppet-horizon/blob/master/templates/local_settings.py.erb#L14-L24 Change-Id: I5faede8b74a0318e15baa761dc502b95b051ae0d
2015-10-12Merge "Allow enabling debug mode for config management (Puppet)"Jenkins7-0/+45
2015-10-12Merge "Ensure httpd is not enabled by puppet on system boot"Jenkins1-1/+4
2015-10-09Ensure httpd is not enabled by puppet on system bootGiulio Fidente1-1/+4
The httpd daemon will be started and managed by Pacemaker, it should not be enabled by puppet. Ideally, it shouldn't be started either but it seems it isn't possible with horizon and apache mod_wsgi [1]. 1. https://bugzilla.redhat.com/show_bug.cgi?id=1247547 Change-Id: I8a1b23c4ea27ac86385314f6cfde8c49d0879969 Co-Authored-By: marios andreou (marios@redhat.com)
2015-10-09Merge "Fix MariaDB account removal race condition"Jenkins3-8/+9
2015-10-09Merge "Rework pacemaker constraints from ovs and netns cleanup agents"Jenkins1-18/+22
2015-10-09Merge "Wire in NodeExtraConfig interface"Jenkins5-0/+40
2015-10-08Ensure Glance API reaches Registry using the service VIPGiulio Fidente1-2/+6
Previously the Registry service was reached using the local IP. Change-Id: I8f2b7275cd39d8a5358d8ce69f4f7e5bc7758b62
2015-10-08Merge "puppet: allow to configure any ceilometer param with Hiera"Jenkins3-0/+3
2015-10-07Merge "Enable Cisco N1KV driver"Jenkins6-0/+249
2015-10-06Rework pacemaker constraints from ovs and netns cleanup agentsmarios1-18/+22
In the current neutron-* services constraints chain, the ovs and netns cleanup services are re-run after a neutron-server restart. As discussed at [1] this may not be desirable leaving some neutron services down and any tenant routers without IP. This review introduces a second constraints chain so we now have: neutron-server-->openvswitch-->dhcp-->l3-->metadata and ovs-cleanup-->netns-cleanup-->openvswitch Instead of a single chain like neutron-server-->ovs-cleanup-->netns-cleanup-->openvswitch--> dhcp-->l3-->metadata [1] https://bugzilla.redhat.com/show_bug.cgi?id=1266910#c12 Related-Bug: 1501378 Change-Id: I4096704257aff74ff5bd37d8d01d8a776c6c6a76
2015-10-05Fix MariaDB account removal race conditionJiri Stransky3-8/+9
The removal of default MariaDB accounts was being triggered roughly at the same time on all controllers, causing a race condition -- multiple nodes found an account present and attempted deletion, but then only one succeeded with the deletion, the others failed. HA controller deletes the accounts only on bootstrap node now, which fixes the issue. Change-Id: Ieacd10a6ce26da50f6a37eaa3221d866c24353fa
2015-10-02puppet: allow to configure any ceilometer param with HieraEmilien Macchi3-0/+3
By including ::ceilometer::config on controller & compute, we allow anyone to trick ceilometer.conf with any parameter, using Hiera. Change-Id: Ie6698d5e6900ecaaf7f19ed79e9c44b39ced0559
2015-10-01Merge "swift::storage::all deprecation cleanup"Jenkins1-1/+4
2015-10-01Wire in NodeExtraConfig interfaceSteven Hardy5-0/+40
It's become apparent that some actions are required in the pre-deploy phase for all nodes, for example applying common hieradata overrides, or also as a place to hook in logic which must happen for all nodes prior to their removal on scale down (such as unregistration from a satellite server, which currently doesn't work via the *NodesPostDeployment for scale-down usage). So, add a new interface that enables ExtraConfig per-node (inside the scaled unit, vs AllNodes which is used for the cluster-wide config outside of the ResourceGroup) Change-Id: Ic865908e97483753e58bc18e360ebe50557ab93c
2015-10-01Ensure present/latest for puppet driven package updatesSteve Baker5-5/+26
This change updates yum_update.sh so that we set set a boolean output when "managed" packages should get updated. The output is named 'update_managed_packages' and for the puppet implementation it is wired up so that it directly sets tripleo::packages::enable_upgrade to control whether packages are updated. It also modifies yum_update.sh to build a yum update excludes list for packages managed by puppet. The exclude lists are being generated via puppet-tripleo as well via the new 'write_package_names' function that is now wired into all the role manifests. This change does not actually trigger the puppet apply. The fix for Related-Bug: #1463092 will be used to trigger the puppet run when the hiera changes. As a minor tweak to this logic we append the UpdateIdentifier to the config_identifier so that we ensure puppet gets executed on an update where other (non-related) hiera changes also occur. Co-Authored-By: Dan Prince <dprince@redhat.com> Change-Id: I343c3959517eae38bbcd43648ed56f610272864d
2015-10-01Write package names out to flat filesDan Prince7-2/+14
This patch updates all of the overcloud manifests so that we write out flat files containing lists of the Puppet packages which were managed by each manifest. The flat files all get written to /var/lib/puppet-tripleo/installed-packages/ where they can be easily parsed by external tools. Example format from the flat files looks like (for the controller step 1): cat /var/lib/puppet-tripleo/installed-packages/overcloud_controller1 keepalived haproxy Depends-On: If3e03b1983fed47082fac8ce63f975557dbc503c Change-Id: Ia324a08711796aa664f9c0273a051f4f2e3e92c9
2015-09-30Allow enabling debug mode for config management (Puppet)Jiri Stransky7-0/+45
Also adds an environment file which can be passed to heat stack-create to enable debugging. Change-Id: I9758e2ca3de6a0bed6d20c37ea19e48f47220721 Depends-On: Ie92d1714a8d7e59d347474039be999bd3a2b542f
2015-09-30Enable Cisco N1KV driverShiva Prasad Rao6-0/+249
This enables support for the Cisco N1kv driver for the ML2 plugin. It also configures the Nexus 1000v switch. Co-Authored-By: Steven Hillman <sthillma@cisco.com> Depends-On: I02dda0685c7df9013693db5eeacb2f47745d05b5 Depends-On: I3f14cdce9b9bf278aa9b107b2d313e1e82a20709 Change-Id: Idf23ed11a53509c00aa5fea4c87a515f42ad744f
2015-09-28Merge "Adding core_plugin, type_drivers and service_plugins parameters"Jenkins4-8/+74
2015-09-25Adding core_plugin, type_drivers and service_plugins parametersShiva Prasad Rao4-8/+74
Make core_plugin, type_drivers and service_plugins parameter in neutron configurable through heat. Also changing the type_drivers order to "vxlan,vlan,flat,gre" Change-Id: Iba895ed5897bdaf7bb772ffc063c424abb6e1638
2015-09-25Add CephStorageExtraConfigPre resourceGiulio Fidente1-1/+12
This change adds a CephStorageExtraConfigPre which can be used to distribute hooks for the CephStorage nodes. Change-Id: Id0023d8ffddb3ee5e855d5dcc32c76bc41ce4c63
2015-09-25Allow a user to set specific setting per hostYanis Guenane5-0/+5
It is currently not possible to specify settings per host and not per type of host. One of the example of the problematic that could cause is : What if node0 have devices /dev/sdb and /dev/sdc while node1 have devices /dev/sda and /dev/sdd, they is currently no way to specify that simply. The idea here is to add a top priority file in the hiera lookup that will match the UUID of the System Information section in the output of the dmidecode command. The file could be provided with the firstboot/rsync stack for example. Change-Id: I3ab082c8ebd2567bd1d914fc0b924e19b1eff7d0
2015-09-25Example of passing per-node config data in pre_deploy configSteven Hardy1-0/+56
Shows one method of passing a map of data in to the pre_deploy extraconfig interface, such that it could be used in combination with https://review.openstack.org/#/c/215013/ to create a node uuid specific hieradata file, or to perform some other non-puppet per-node configuration. This would be used by specifying an environment file like: resource_registry: OS::TripleO::ControllerExtraConfigPre: puppet/extraconfig/pre_deploy/per_node.yaml parameter_defaults: NodeDataLookup: | {"AB4114B1-9C9D-409A-BEFB-D88C151BF2C3": {"foo": "bar"}, "8CF1A7EA-7B4B-4433-AC83-17675514B1B8": {"foo2": "bar2"}} Change-Id: I62e344669e0ca781dd93d3f7d2190b70299877c2
2015-09-25Merge "Rename -puppet.yaml templates."Jenkins8-0/+0
2015-09-23Merge "Remove nameserver lookup dependency from Cisco ML2 CollectMacConfig."Jenkins1-2/+11
2015-09-23Merge "Add redis ordering with ceilometer-central"Jenkins1-0/+16
2015-09-23Merge "Re-add constranits between nova-api and nova-novncproxy"Jenkins1-18/+16
2015-09-22Remove nameserver lookup dependency from Cisco ML2 CollectMacConfig.tiswanso1-2/+11
The collection of hostname to MAC mappings done in AllNodesPostDeploy uses 'hostname -f' to get the FQDN for each node. This form of the command causes a nameserver lookup for the domain name. A timing issue has been seen where the hostname lookup fails due to the nameserver not having the mapping yet. The solution is to hardcode the domain to 'localdomain' as is done in a few other patches--ie. see controller-puppet.yaml. Change-Id: Ibea50fcc6b9f22ca163ff063e0dc9ca69dff5f34
2015-09-23Merge "Remove default_floating_pool in compute.yaml"Jenkins1-1/+0
2015-09-22Put staticweb middleware after keystoneauth in proxy pipelineEmilien Macchi1-1/+1
The staticweb middleware needs to be put after authentication middlewares to ensure correct functionality as documented in http://docs.openstack.org/developer/swift/middleware.html#staticweb Without this Swift sends a HTML response even if the request was done using a X-Auth-Token. This might result in a faulty handling of the response on the client side; for example, "swift stat containername" would report an empty, private container, while the container might actually be public readable with data stored in it. Closes-bug: 1494896 Change-Id: Id48840e0041f8d272e08def292fbedfaf76bbfbb Co-Authored-By: Christian Schwede <cschwede@redhat.com>
2015-09-22swift::storage::all deprecation cleanupDan Prince1-1/+4
This patch adds settings for swift::storage::all so that we set the recommended the incoming and outgoing chmod permissions. Depends-On: I627ab2255087b0ebc2d3ddc9cd4a7a7d254abb65 Change-Id: I2f14c9afe7b7135ad1bfecb9db0a39bfc3b4d03a
2015-09-22Rename -puppet.yaml templates.Dan Prince8-0/+0
Updates the /puppet directory templates so that we drop the '-puppet' from the filenames. This is redundant because we already have puppet in the directory name and fixes inconsistencies where we aren't using -puppet in all the files within the puppet directory. Depends-On: I71cb07b2f5305aaf9c43ab175cca976e844b8175 Change-Id: I70d6e048a566666f5d6e5c2407f8a6b4fd9f6f87
2015-09-22Remove default_floating_pool in compute.yamlJames Slagle1-1/+0
This is unused on compute nodes and does not need to be specified. Further, nova::api is not even included in the compute puppet manifest, so it had no effect anyway. Change-Id: I7589bf544fb1ddad3cd371869756cb880c0bac37
2015-09-22Pass default_floating_pool into nova::api classDerek Higgins2-7/+3
We were calling nova_config resource to define it but as of Ic060fc18c8f5d7dc8fcf1d7bd921623dc505a515 its now included as part of the nova::api class. Closes-bug: #1498237 Change-Id: I948f26304536e2d692acf38d994d29167672168b Depends-On: I2789e782a4fd673e09c6334b6d56819c68414c80
2015-09-21Merge "Configure ctlplane network with a static IP"Jenkins5-0/+5
2015-09-17Configure ctlplane network with a static IPDan Prince5-0/+5
This patch updates all network configuration templates so that we configure the ctlplane network interface with a static IP instead of using DHCP. The IP address used for the static IP is passed into each nested stack network configuration template via the ControlPlaneIp parameter. Three new nested stack parameters called ControlPlaneSubnetCidr, ControlPlaneDefaultRoute, and EC2MetadataIp have been added to help configure the CIDR, default route, and EC2 metadata route on the ctlplane statically. These parameters can be customized via the parameter_defaults section in the heat environment. A single new template called net-config-static-bridge.yaml has been added to help migrate towards using the static configuration templates when not using network isolation. Depends-On: I257e1cba6dee16f73f75512d1284e1e3b9d4c831 Change-Id: Ib267e6dcf2d5ff77f7a82ee20a123965c2d07565
2015-09-17Support new form of servers config for ML2 cisco nexus allnodes config.tiswanso1-2/+1
The puppet-neutron changes to remove the usage of ERB templates require changing the format of the 'servers' hash/dictionary to include a key for use with puppet's create_resources directly from hiera data. Depends-On: I401371c9e5176de7ce19d4d4e878e9f2e69aab80 Change-Id: I950b7fb019dd8dd072592618b968a19df5c9c884
2015-09-17Port Cisco Nexus/UCSM ExtraConfig to AllNodesSteven Hardy2-141/+326
Switch the implemention from a pre_deploy ExtraConfig to an AllNodesExtraConfig, so we can collect the mac->hostname mapping for all nodes, then calculate a NexusConfig based on that and a provided mapping of switch ports to mac address. The same conversion is also done to the NetworkUCSMHostList: The port mappings are provided via parameter_defaults like: parameter_defaults: NetworkNexusConfig: { "bxb-tor-1": { "username": "admin", "ssh_port": 22, "password": "lab", "ip_address": "10.86.7.204", "nve_src_intf": 0, "physnet": "datacentre", "servers": { "fa:16:3e:fa:be:ef": "1/11", "fa:16:3e:fa:5e:cf": "1/23", "fa:16:3e:fa:12:34": "2/34" } } } NetworkUCSMHostList: 'fa:16:3e:fa:be:ef:profile1' This results in an entry like this appended to /etc/puppet/hieradata/neutron_cisco_data.yaml: neutron::plugins::ml2::cisco::nexus::nexus_config:\ {"bxb-tor-1": {"username": "admin", "nve_src_intf": 0, "ssh_port": 22, "servers": {"overcloud-compute02": "2/34", "overcloud-compute01": "1/23", "overcloud-control01": "1/11"}, "password": "lab", "ip_address": "10.86.7.204", "physnet": "datacentre"}} neutron::plugins::ml2::cisco::ucsm::ucsm_host_list: overcloud-control01:profile1 Co-Authored-By: Rob Pothier <rpothier@cisco.com> Co-Authored-By: Tim Swanson <tiswanso@cisco.com> Change-Id: I372c3ffb6bd85b7239fcb9f3fc4fa51cd4a39332