aboutsummaryrefslogtreecommitdiffstats
path: root/puppet/controller-puppet.yaml
AgeCommit message (Collapse)AuthorFilesLines
2015-06-08Merge "Enable NetApp Backends in Cinder"Jenkins1-0/+7
2015-06-08Config & deployments to update overcloud packagesSteve Baker1-0/+18
This change adds config and deployment resources to trigger package updates on nodes. The deployments are triggered by doing a stack-update and setting one of the parameters to a unique value. The intent is that rolling update will be controlled by setting breakpoints on all of the UpdateDeployment resources inside the role resource groups. Change-Id: I56bbf944ecd6cbdbf116021b8a53f9f9111c134f
2015-06-05Add Redis as a Pacemaker resourceYanis Guenane1-0/+5
Change-Id: I731b408f24da01c1bc897bfffe8fd4d5638932ed
2015-06-05Merge "Wire Neutron VLAN ranges param as array to puppet"Jenkins1-2/+9
2015-06-05Enable NetApp Backends in CinderRyan Hefner1-0/+7
Enables support for configuring Cinder with a NetApp backend. This change adds all relevant parameters for: - Clustered Data ONTAP (NFS, iSCSI, FC) - Data ONTAP 7-Mode (NFS, iSCSI, FC) - E-Series (iSCSI) Change-Id: If6c6e511ef2d26c4794e3b37c61e5318485ff4db
2015-06-05Wire Neutron VLAN ranges param as array to puppetGiulio Fidente1-2/+9
Turns NeutronNetworkVLANRanges into a list and makes it consumable by neutron::plugins::ml2::network_vlan_ranges as an array. Previously usage of vlans was impossible due to puppet-neutron failing to join() network_vlan_ranges. Also fixes wiring of network_vlan_ranges on computes and adds a sample environment file to test use of vlans for tenant networks. Change-Id: I8725cdb9591dd8d0b7125fdacbefdc9138703266
2015-06-04Isolate the Ceph storage and storage_mgmt netsDan Prince1-0/+16
This patch updates the Ceph configuration for the puppet implementation so that it isolates the Ceph traffic for the public and cluster interfaces. By default public traffic runs on the "storage" network and the cluster traffic runs on the "storage mgmt" network. If network isolation is not enabled then the default ctlplane address's will be used for both the public and cluster interfaces. Change-Id: I791244d72c8f42142d9de99e0cf0acdca19e62b0
2015-06-04Set glance_api_servers for cinderDan Prince1-0/+1
This patch updates the hiera configuration for the Cinder API so that we set glance_api_servers. By default Cinder constructs a glance URL based on $my_ip (the local IP of the machine) which may not be correct if you are running Glance on a non-default internal network. By setting glance_api_servers to the same thing we already use for Nova we make Cinder contact the correct Glance URL regardless of the network settings. Change-Id: I1c56eb585ddfdc9989a8b55bc1bac819802f7794
2015-06-04puppet controller role: per service VIP settingsDan Prince1-31/+48
This patch refactors the puppet controller role so that it makes use of per service VIP settings for each service. Previously the VIP for the ctlplane was hard wired to many of the controller service. With this patch we have the ability to isolate traffic for services which made use of the ctlplane and public VIPs for their settings. The implementation includes: * stops the use of the VirtualIP and PublicVirtualIP within the controller role. These parameters have now been replaced with per service heat parameters for the controller nested stack which are determined via VipMap based on per service settings in the heat environment. * All VIP configuration is now moved into puppet/vip-config.yaml. This made sense so we could deprecate the use of the VirtualIP and PublicVirtualIP settings above. * The puppet manifests for the controller were cleaned up for several to use Hiera directly instead of constructing URLs based on the static controller and public network VIPs. This improvement was something we wanted to do anyways and made the implementation cleaner. Change-Id: I9b9a15be67f74bec97366408f7047acfd6ea0ec6
2015-06-04Merge "Combine Heat API networks into single net"Jenkins1-4/+2
2015-06-03Remove NO_SIGNAL from puppet role templatesSteven Hardy1-2/+1
Currently we use NO_SIGNAL on both the NetworkConfig and subsequent config deploying the data associated with the role. This means there is a risk that should the NetworkConfig do anything interruptive (os-net-config can do interface renaming based on discovery data for example) the role configuration config could fail, and we'd never know until some later error occurs. Additionally, we need to be sure that the heiradata deployed by each of the role specicific configs is actually in-place before proceeding with any of the cluster configuration - atm this works due to the inherent delays involved deploying to bare-metal, but there's still a theoretical race if very fast deployment backends (I'm thinking containers, e.g lxc backend to nova or something) were used instead. Essentially, we should never be using NO_SIGNAL unless we want to ignore failure, which AFAICT is not the case in this instance. Change-Id: I0dbbcc87fb8df8e6bc4775c39fa616b0d0713464
2015-06-03Combine Heat API networks into single netDan Prince1-4/+2
We probably don't need to split out separate networks for Heat CFN and Cloudwatch. Just having a single network for Heat API in the overcloud is probably fine. Change-Id: I917b314e01227af72129645c9b72ad8e54f07865
2015-06-02Wire Neutron allow_automatic_l3agent_failover param to moduleGiulio Fidente1-2/+2
Change-Id: Ibd1581ebb87ed02f3840000e90025a2a371019aa
2015-05-28Map Mysql to isolated networksDan Prince1-2/+2
This change adds parameters to specify which networks the MySQL service will use. If the internal_api network exists the MySQL service will bind to the IP address on that network, otherwise the services will default to the IP on the Undercloud 'ctlplane' network. This patch also drop the old 'controller_host' variable from the puppet controller template since it is no longer in use. Change-Id: I4fba2c957f7db47e916bc269fb4bd32ccc99bd4c
2015-05-28Use heat inputs for network port settingsDan Prince1-21/+42
This patch updates the controller and compute roles so that we use get_input in the software configuration instead of calling get_attr/get_param there. Change-Id: I1dc11987b4ea3c37775b14fbdddb75588499e9bb
2015-05-27Merge "Map Horizon, Redis, Rabbit, memcached to isolated nets"Jenkins1-4/+4
2015-05-27Merge "Map Swift services to isolated networks"Jenkins1-2/+2
2015-05-27Merge "Map Nova services to isolated networks"Jenkins1-2/+2
2015-05-27Merge "Map Heat services to isolated networks"Jenkins1-3/+3
2015-05-27Merge "Map Neutron services to isolated networks"Jenkins1-1/+1
2015-05-27Merge "Map Keystone services to isolated networks"Jenkins1-2/+2
2015-05-27Merge "Map Glance services to isolated networks"Jenkins1-3/+3
2015-05-27Merge "Reuse the various service passwords as db passwords."Jenkins1-13/+25
2015-05-27Map Horizon, Redis, Rabbit, memcached to isolated netsDan Sneddon1-4/+4
This change adds parameters to select the networks for Horizon, Redis, Rabbit MQ, and memcached services. Horizon is often used for administration from outside the cloud, so if the external network exists, Horizon will bind to that IP, otherwise it will default to the Undercloud 'ctlplane' network. Redis, Rabbit MQ, and memcached will bind to IPs on the internal_api network if it exists, else they will default to the 'ctlplane' network as well. Any of these network assignments can be overridden with an environment file. Change-Id: Ie0aa46b4a3c00d3826866796b4ec3b14f71f987c
2015-05-27Map Swift services to isolated networksDan Sneddon1-2/+2
This change adds paramters to specify which networks the Swift API services will use. If the storage network exists, it will be used for the Swift API, otherwise the Undercloud 'ctlplane' network will be used. If the storage_mgmt network exists, it will be used for the back-end storage services, otherwise the 'ctlplane' will be used by default. Change-Id: I1d5e966a16416c52935c22efe2d4783cd2192c32
2015-05-27Map Nova services to isolated networksDan Sneddon1-2/+2
This change adds parameters to specify which networks the Nova API and metadata services will use. If the internal_api network exists, it will be used for the bind IP for Nova API and metadata servers, otherwise the Undercloud 'ctlplane' IP will be used by default. Change-Id: Ie420274c7fba80abf9cf2b599431acc47e28fc7a
2015-05-27Map Heat services to isolated networksDan Sneddon1-3/+3
This change adds parameters to specify which networks the Heat services will use. If the internal_api network exists, the Heat API, Heat Cloud Formations, and Heat Cloudwatch services will bind to the IP address on that network, otherwise the services will default to the IP on the Undercloud 'ctlplane' network. Change-Id: I5febe1b9071600b43fa76c6cf415db83cad472ab
2015-05-26Map Neutron services to isolated networksDan Sneddon1-1/+1
This change adds parameters to specify which network the Neutron API should use. If the internal_api network exists, Neutron will bind to the IP on that network, otherwise the Undercloud 'ctlplane' network will be used. The network that the Neutron API is bound to can be overridden in an environment file. Change-Id: I11bcebba3a22e8850095250a2ddfaf972339476b
2015-05-26Map Keystone services to isolated networksDan Sneddon1-2/+2
This change adds parameters to specify which networks the Keystone API services will use. If the external network exists, Keystone will bind to the IP on that network for the public API, otherwise it will default to the IP on the Undercloud 'ctlplane' network. If the internal_api network exists it will be used for the Keystone Admin API, otherwise it will default to the 'ctlplane' IP. The networks these APIs are bound to can be overridden in an environment file. Change-Id: I6694ef6ca3b9b7afbde5d4f9d173723b9ce71b20
2015-05-26Map Glance services to isolated networksDan Sneddon1-3/+3
This change adds parameters to specify which networks the Glance services will use. If the internal_api network exists, Glance Registry will bind to the IP on that network, otherwise it will default to the Undercloud 'ctlplane' network. If the storage network exists, Glance API will bind to the IP on that network, otherwise it will default to 'ctlplane'. The networks that these services use can be overridden with an environment file. Change-Id: I6114b2d898c5a0ba4cdb26a3da2dbf669666ba99
2015-05-26Map Cinder services to isolated networksDan Sneddon1-2/+2
This change adds parameters to specify which networks the Cinder API and Cinder iSCSI services will listen on. If the internal_api network exists, Cinder API will be bound to the IP on that network, otherwise it will default to the Undercloud 'ctlplane' network. The Cinder iSCSI service will bind to the storage network if it exists, otherwise will also default to using the Undercloud 'ctlplane' network. Change-Id: I98149f108baf28d46eb199b69a72d0f6914486fd
2015-05-26Map Ceilometer services to isolated networksDan Sneddon1-2/+2
This change adds the parameters to specify which networks the Ceilometer and MongoDB servers listen on. It is set to the internal_api network if present, and reverts to the default Undercloud 'ctlplane' network if not. Change-Id: Ib646e4a34496966f9b1d454f04d07bf95543517f
2015-05-26Switch net-config templates to use OS::stack_idDan Prince1-1/+1
This patch removes the custom config_id outputs and replaces it with OS::stack_id which allows us to just call get_resource in the parent stack. The motivation for this change is we'll be adding more os-net-config templates and it would be nice to take advantage of this newer template feature. Change-Id: I6fcb26024b94420779b86766e16d8a24210c4f8e
2015-05-26Update neutron local_ip to use the tenant networkDan Prince1-1/+15
This patch uses the new NetIpMap and ServiceMap abstractions to assign the Neutron tenant tunneling network addresses. By default this is associated with the tenant network. If no tenant network is activated this will still default to the control plane IP address. Change-Id: I9db7dd0c282af4e5f24947f31da2b89f231e6ae4
2015-05-26Add isolated network ports to controller rolesDan Prince1-0/+46
This patch updates the controller roles so that they can optionally make use of isolated network ports on each of 5 available overcloud networks. -Multiple networks are created based upon settings in the heat resource registry. These nets will either use the noop network (the control plane pass-thru default) or create a custom Neutron port on each of the configured networks. -The ipaddress/subnet of each network is passed passed into the NetworkConfig resource which drives os-net-config. This allows the deployer to define a custom network template for static IPs, etc on each of the networks. -The ipaddress is exposed as an output parameter. By exposing the individual addresses as outputs we allow Heat to construct collections of ports for various services. Change-Id: I9bbd6c8f5b9697ab605bcdb5f84280bed74a8d66
2015-05-22Remove unused EnablePacemaker param from templatesGiulio Fidente1-5/+0
Use of Pacemaker is governed by the resource registry since change Ibefb80d0d8f98404133e4c31cf078d729b64dac3. The param stayed longer in the template to prevent breakage of scripts which could have passed it when launching stack-create, despite it being ignored. This change removes the param entirely. Change-Id: I026ce391319a4306c4b81a15652e3cad470e5cb7 Depends-On: I775724b207c737043a2a418a3ec8ede2cbaa8fa0
2015-05-21Merge "Overcloud: bump HOT version to 2015-04-30"Jenkins1-1/+1
2015-05-20Overcloud: bump HOT version to 2015-04-30Dan Prince1-1/+1
This patch bumps the HOT version for the overcloud to Kilo 2015-04-30. We should have already done this since we are making use of OS::stack_id (a kilo feature) in some of the nested stacks. Also, this will give us access to the new repeat function as well. Change-Id: Ic534e5aeb03bd53296dc4d98c2ac5971464d7fe4
2015-05-20Use clustercheck script to control galera-readyGiulio Fidente1-6/+0
The exec timeout/attempts is configured so that it is left running for up to 30mins if the command runs but is unsuccessfull and up to 2h if the command times out. Change-Id: I4b6b77e878017bf92d7c59c868d393e74405a355
2015-05-19Provide RabbitMQ clients with a list of servers instead of VIPGiulio Fidente1-10/+0
This will change the way how RabbitMQ clients get to the servers, they will not go through HAProxy anymore. Change-Id: I522d7520b383a280505e0e7c8fecba9ac02d2c9b
2015-05-18Remove unused enable_pacemaker setting from templatesGiulio Fidente1-2/+0
Use of Pacemaker is governed by the resource registry since change Ibefb80d0d8f98404133e4c31cf078d729b64dac3 Change-Id: I2f1fa8d6d28ae009940be2c2c530066197aa543b
2015-05-13Add Galera as a Pacemaker resource when EnablePacemakerYanis Guenane1-0/+6
This commit aims to support the creation of the galera cluster via Pacemaker. With this commit in, three use-cases will be supported. * Non HA setup / Non Pacemaker setup : The deployment will take place as it is currently the case in f20puppet-nonha. Nothing changes. * Non HA setup / Pacemaker setup : Even though it is a non ha setup, galera cluster via pacemaker will be deployed with a cluster nbr of 1. * HA setup / Non Pacemaker setup : N/A * HA setup / Pacemaker setup : It is assumed that HA setup will always be with pacemaker. So in this situation pacemaker will deploy a cluster of 3 galera master nodes. Depends-On: I7aed9acec11486e0f4f67e4d522727476c767d83 Change-Id: If0c37a86fa8b5aa6d452129bccf7341a3a3ba667
2015-05-05Merge "puppet: install Horizon on overcloud-controller"Jenkins1-0/+10
2015-05-04Merge "Add support for Glance RBD backend"Jenkins1-0/+9
2015-05-04Add support for Glance RBD backendDan Prince1-0/+9
This patch adds support for a new GlanceBackend setting which can be set to one of swift, rbd, or file to control which Glance backend is configured for use by default. Change-Id: Id6a3fbc3477e85e8e2446e3dc13d424f9535d0ff
2015-05-01Revert "Keystone domain for Heat"Dan Prince1-7/+2
This reverts commit 7313930c22b9f18d67e630de084ffcc6fad5ebe7. Seeing errors when trying to create the keystone admin role with packages. (ImportError: No module named os_client_config) Change-Id: I78796598ccb8d2ffd6bfca85dce7d18dc0fd768e Related-bug: #1450786
2015-05-01Reuse the various service passwords as db passwords.Derek Higgins1-13/+25
We need to stop using "unset" as the password for all databases. Ideally we would add a "XxxxDSN" parameter (e.g. KeystoneDSN) but this wont work because we don't know the VirtualIP to pass in. Until we can come up with a better solution we should at least get rid of the "unset" passwords. Change-Id: I31f45912fa9c116ccdee010a2c5d91ea43a25671 Depends-On: I8ffe1eb481f615b0fbe127cd8107f1e70794c839
2015-04-30Merge "Keystone domain for Heat"Jenkins1-2/+7
2015-04-30Merge "Allow deployer to choose Ceilometer backend"Jenkins1-0/+13
2015-04-29Allow deployer to choose Ceilometer backendYanis Guenane1-0/+13
Ceilometer can use different backends. A recent change moved backend support for Ceilometer from MySQL to MongoDB. This commit introduce a greater flexibility, letting the deployer choose wheter MySQL or MongoDB should be used as a backend for Ceilometer. Change-Id: I0d5bfb0763cbcee234df7ab13574d866743d5ddf