aboutsummaryrefslogtreecommitdiffstats
path: root/puppet/controller-puppet.yaml
AgeCommit message (Collapse)AuthorFilesLines
2015-07-24Merge "Set heat::instance_user to empty string"Jenkins1-1/+0
2015-07-24Merge "NFS backend for Cinder"Jenkins1-0/+29
2015-07-20Puppet: wire in tripleo::packagesDan Prince1-1/+1
This wires in use of a new puppet-tripleo class which encapsulates the logic to enable/disable package installation and upgrades. By using the new class we can remove the global Package provider declaration at the top of each module. Change-Id: I5c6e5fd8600031bd8fb6195649721607c560f9d5 Depends-on: Ie8fbc344149bc8c9977e127de77636903607617a
2015-07-17Merge "Increase default max_connections for MySQL from 1024 to 4096"Jenkins1-1/+1
2015-07-16Increase default max_connections for MySQL from 1024 to 4096Giulio Fidente1-1/+1
As a matter of fact it seems that the 1024 connections barrier can easily be reached with modern hardware, see: https://bugzilla.redhat.com/show_bug.cgi?id=1240824 Change-Id: I194a0dd725907350ca16ea3c41f3ed4f68a11bcf
2015-07-15Enable hieradata ExtraConfig overrides for ControllerSteven Hardy1-36/+9
Wires in the ControllerExtraConfig and ExtraConfig parameters so that they may be used to specify overrides of the default hieradata. Note if this is used to override values specified via parameters rather than hard-coded values in puppet/hieradata caution should be used as the overridden values will always take precendence regardless of the parameter input, unless the parameter is provided directly to the Deployment resource applying the manifiest (e.g not the pattern currently employed in most of t-h-t) Also note that ControllerExtraConfig takes precedence over the deployment-wide ExtraConfig. For example, here's how you would pass a value which disables the heat-api-cfn service on all controllers. This would be put into an environment file, then passed to the heat stack-create via an extra -e option: parameters: controllerExtraConfig: heat::api_cfn::enabled: false Note the parameter capitalization is different in the top-level overcloud-without-mergepy template for some reason. Change-Id: I6d6e3e78460308134d95c01892bb242aba70e9ca
2015-07-15Merge "Adds the NeutronTunnelIdRanges and NeutronVniRanges parameters"Jenkins1-0/+30
2015-07-15Merge "Configure Heat's ec2 auth uri correctly"Jenkins1-0/+7
2015-07-15Merge "Allow a user to disable MongoDB journaling"Jenkins1-0/+6
2015-07-13Adds the NeutronTunnelIdRanges and NeutronVniRanges parametersmarios1-0/+30
This adds the NeutronTunnelIdRanges and NeutronVniRanges parameters which govern the GRE or VXLAN tunnel IDs (respectively) that are to be made available for overcloud tenant networks. These both default to "1:1000," to retain the current behaviour. They are propagated to the hiera data for puppet deploys and there is a separate change to support passing these into the config via the neutron tripleo-image-element at https://review.openstack.org/#/c/199592/ Change-Id: I967a8cae218a31e888abc438e9de5756ae627adb Related-Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1240631
2015-07-13Allow a user to disable MongoDB journalingYanis Guenane1-0/+6
By default MongoDB enables a journaling system that prevents loss of data in case of an unexpected shut-down. When journaling is enabled, MongoDB will create the journal files before actually starting the daemon[1]. The journaling feature is useful in production environment, but not really on a CI-like system, where we only want to make sure MongoDB is setup correctly and running, hence here we allow a user to enable/disable MongoDB journaling. [1] http://docs.mongodb.org/manual/core/journaling/ Change-Id: I0e4e65af9f650c10fdf5155ff709b4eb984cf4e1 Closes-bug: #1468246
2015-07-10Allow configuration of MySQL max_connections settingGiulio Fidente1-0/+6
The number of connections created to the database depends on the number of running processes and this is a factor of both the nodes count and the cores count. We make it configurable so it can be increased when needed. Change-Id: I41d511bde95d0942706bf7c28cd913498ea165fb
2015-07-10Merge "Add services to ServiceNetMap to select hostnames resolution network"Jenkins1-1/+1
2015-07-09Adds the NeutronDhcpAgentsPerNetwork parametermarios1-0/+6
Currently for both puppet and image-elements based deploys we set the dhcp_agents_per_network in neutron.conf to 2 and there is no control over that number (in the hieradata for the former and the image element for the latter). This change adds the NeutronDhcpAgentsPerNetwork parameter and also changes the default to 3 when not explicitly set. In the puppet case propagate this parameter in the hieradata for the neutron class and in the non-puppet case expose a new item in the neutron config to be consumed by the neutron image element (that change will point here) Change-Id: Id97c7796db7231b636f2001e28412452cf89562b
2015-07-08Set heat::instance_user to empty stringSteve Baker1-1/+0
In the overcloud heat, heat.conf instance_user is set to heat-admin. The consequence of this is that SSHing into heat created guest VMs will require the user 'heat-admin'. I predict that this will result in user confusion as to how to SSH into their VMs since they will be attempting default usernames (centos, cloud-user etc) or the documented heat default user (ec2-user) This change sets it to an empty string so that default usernames are used. This change depends on the puppet-heat fix to allow empty string instance_user: Depends-On: I9e8be0dd50709d271fc81683770c78380724e405 Change-Id: Id14bf3a4ac1b1c95797dae16c674b32a2da230f8
2015-07-08Merge "Add NeutronExternalNetworkBridge parameter"Jenkins1-0/+6
2015-07-08Add services to ServiceNetMap to select hostnames resolution networkGiulio Fidente1-1/+1
The *HostnameResolveNetwork services define the network against which the hostnames in /etc/hosts should be resolved, defaults to 'internal_api' for all except CephStorage for which it uses 'storage' as they do not have connectivity to 'internal_api'. Closes-Bug: 1471179 Change-Id: Ia8971f8a63016966236e7975ac2d97921a314255
2015-07-07NFS backend for CinderJiri Stransky1-0/+29
Adds support for NFS backend for Cinder, but remains disabled by default. Change-Id: I9ebef072ed115efe980fa4904ea80f02384522af
2015-07-06Add NeutronExternalNetworkBridge parameterDan Prince1-0/+6
This patch adds a new parameter to configure the neutron external network bridge. This setting applies to the bridge used in the Neutron l3_agent.ini file and can by useful if you wish to set external_network_bridge = '' in that file. As part of this fix we also update the environment file for network isolation so that we automatically set the new NeutronExternalNetworkBridge to an empty string. This fixes an issue where overcloud floating IPs did not work correctly when using the external network interface for floating IP traffic. Change-Id: I3bfcda8746780ea0851d88ed6db8557e261cef0d
2015-07-06Configure Heat's ec2 auth uri correctlyBen Nemec1-0/+7
We weren't configuring the Heat ec2 auth uri, so it was using the default pointing at localhost. This won't work in most setups because Keystone listens on specific addresses not including localhost, so configure it to use the proper Keystone address. Change-Id: I979a87c68a8f6f558ccfc04662c158c89fcf1388
2015-07-06Wire in Controller pre-deployment extraconfigSteven Hardy1-1/+13
The recently added cinder-netapp extraconfig contains some additional hieradata which needs to be applied during the initial pre-deployment phase, e.g in controller-puppet.yaml (before the manifests are applied) so wire in a new OS::TripleO::ControllerExtraConfigPre provider resource which allows passing in a nested stack (empty by default) which contains any required "pre deployment" extraconfig, such as applying this hieradata. Some changes were required to the cinder-netapp extraconfig and environment such that now the hieradata is actually applied, and the parameter_defaults specified will be correctly mapped into the StructuredDeployment. Change-Id: I8838a71db9447466cc84283b0b257bdb70353ffd
2015-07-01Allow to enable fencing, pass through fencing configJiri Stransky1-0/+40
Add two new parameters: EnableFencing and FencingConfig. FencingConfig is a json with an expected structure documented in the templates. It gets passed further to puppet-tripleo, which configures the fencing devices. Fencing is configured and enabled in the last step after all pacemaker resources and constraints have been created, which should be a more stable approach than the other way round. Change-Id: Ifd432bfd2443b6d13e7efa006d4120bb0eaa2554 Depends-On: I819fc8c126ec47cd207c59b3dcf92ff699649c5a Depends-On: I8b7adff6f05f864115071c51810b41efad887584
2015-06-24Merge "Make puppet-applying *Post resources depend on hieradata"Jenkins1-0/+3
2015-06-22Merge "Enable httpd balancing for Horizon"Jenkins1-0/+1
2015-06-18Merge "Enable loadbalancing of the Redis VIP, defaults to False"Jenkins1-0/+7
2015-06-18Merge "Rename ServiceNetMap: NeutronLocalIp"Jenkins1-1/+1
2015-06-18Enable httpd balancing for HorizonGiulio Fidente1-0/+1
We need to customize the default apache::ip param or the default vhost configured will listen on ::80 Change-Id: I195a083f727da940841beb3a0c37dade02c6d1ca
2015-06-18Enable loadbalancing of the Redis VIP, defaults to Falsemarios1-0/+7
We have to set it to true as the default is false which means the redis vip can't be reached. This was manifested as a problem with ceilometer agent reaching the coordination url like [1]. Co-Authored-By: Giulio Fidente <gfidente@redhat.com> [1] https://bugzilla.redhat.com/attachment.cgi?id=1040023 Closes-Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1232797 Change-Id: I1cd63308d0ac1d17542e1a2a909ee1a9680ed4b3
2015-06-18Bind novncproxy to its own networkBen Nemec1-0/+1
By default the nova vncproxy binds to 0.0.0.0, which will fail in a loadbalanced environment. This makes it bind to its network. Change-Id: I08776a8f6c72b63d73433b147c130fbc9a7110b0
2015-06-17Merge "Remove NO_SIGNAL from puppet role templates"Jenkins1-2/+1
2015-06-17Merge "Allow control of hostname formatting"Jenkins1-0/+4
2015-06-17Merge "Add $hostname.localdomain alias to /etc/hosts"Jenkins1-1/+1
2015-06-17Merge "Remove unused EnablePacemaker param from templates"Jenkins1-5/+0
2015-06-17Allow control of hostname formattingSteven Hardy1-0/+4
Currently, we use the heat default server names, which results in some fairly unreadable hostnames due to the level of nesting in the templates. e.g ov-sszdbj5rdne-0-bhseh65edxv6-Controller-zoqc6tlypbdp Instead, we allow the user to specify a format string per role, defaulted to a string which formats the name e.g <stackname>-controller-<index> e.g overcloud-controller-0 Optionally additional hostname components (not replaced by heat) could be added, such that deployment time customization of hostnames via firstboot scripts (e.g cloud-init) may be possible. Should anyone wish to maintain the old heat-generated names, they can pass an empty string via these parameters, which heat will treat as if no "name" property was provided to OS::Nova::Server. Change-Id: I1730caa0c2256f970da22ab21fa3aa1549b3f90b
2015-06-16Make puppet-applying *Post resources depend on hieradataSteven Hardy1-0/+3
When you do a stack-update which affects, e.g ControllerDeployment such that some value in hieradata is updated (for example changing the "Debug" parameter to True), we only write the hieradata file and don't reapply the manifests. So we introduce a dependency on the deploy_stdout values from all hieradata applying configs, such that the manifests will be re-applied on update if the data is changed. This requires https://review.openstack.org/#/c/190282/ so that 99-refresh-completed will return the derived config ID as part of the deploy_stdout payload. Closes-Bug: #1463092 Change-Id: I1175248c3236d0c42e37d062afce550efce8aadc
2015-06-15Add $hostname.localdomain alias to /etc/hostsGiulio Fidente1-1/+1
We want to make sure to be able to resolve the default domain suffix (.localdomain) appended when no domain option is passed by the dhcp server. Change-Id: I33111e91b502f57da442e5745de2217bd6d2d882
2015-06-10Rename ServiceNetMap: NeutronLocalIpDan Prince1-1/+1
This patch renames the NeutronLocalIp option to be called NeutronTenantNetwork. This is more consistent with all of the other ServiceNetMap settings which end in 'Network' and initial end user feedback found the old name a bit cryptic as well. This is the network for neutron tenant traffic so lets just name it that. Change-Id: Id49afe75c372887453413c092190a5775aa3e1ee
2015-06-09Merge "Add Redis as a Pacemaker resource"Jenkins1-0/+5
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