aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2017-01-10Add deployed-server backwards compatible templateJames Slagle4-2/+35
In Newton, the ctlplane port on deployed-server was called <hostname>-ctlplane-port. When this code was refactored in I29fbc720c3d582cbb94385e65e4b64b101f7eac9, the -port suffix was dropped in favor of <hostname>-<network> convention, and the port resource was created directly in deployed-server.yaml instead of in a nested stack. Both of those changes were backwards incompatible -- making it impossible to upgrade to the new version of deployed-server.yaml without the ctlplane port getting deleted/recreated, which causes a change in IP address. The IP address change causes services to be misconfigured on upgrade attempts. Change-Id: I45991b60a151abf3c5e4d05a3aa7246b2d25ac5a
2017-01-08Continue checking for request url if initially nullJames Slagle1-1/+8
When using get-occ-config.sh during overcloud upgrades, the script could potentially be started before the stack has been upgraded. In that scenario, the script will return null for the request metadata url for the deployed-server resource since the stack has not yet been updated and it's still using the previous Heat signaling. This patch updates the script to just continue checking the resource metadata if the request url is null. Eventually, once the resource has been updated, the script will continue and properly populate the os-collect-config configuration. Change-Id: I9db54d8ad278715f42b768edf8f0fd21998b2098
2017-01-08Add UpgradeInitCommand to deployed-serverJames Slagle1-0/+26
The commands specified by UpgradeInitCommand need to be run before InstanceIdDeployment in deployed-server.yaml, otherwise the upgrades hang with the resource in progress. This is because the new python-heat-agent-apply-config has not yet been installed on the deployed server. Adding the UpgradeInitCommand (and corresponding SoftwareConfig/SoftwareDeployment to apply it) will cause the new repos and python-heat-agent-* rpm's to be installed before InstanceIdDeployment. An open question is whether or not Heat should even be triggering the InstanceIdDepoyment to IN_PROGRESS on upgrade when only the group is changing from os-apply-config to apply-config. If that turns out to be a Heat bug, then this patch wouldn't be necessary. Change-Id: I9d87f995744415b110a7d0bca8d2309d7167148c
2017-01-06Heat engine settings required for UndercloudDan Prince1-0/+12
This patch adds several new heat engine setting that are required in order to configure a fully working Heat engine in the undercloud. New parameters have been added for the max resources and convergence settings. I've hard coded the max stack depth at 6 which matches our undercloud and should be fine as a default setting I think (would rarely need overridden). Change-Id: I335476f46b4bea4b9f3ac70a6312a7e906f43ba6
2017-01-06Merge "Set rabbitmq package_provider to yum"Jenkins1-0/+1
2017-01-06Merge "Add custom roles data for deployed-server"Jenkins2-0/+176
2017-01-06README: updates for CI matrixEmilien Macchi1-2/+2
Update the CI matrix to fit with what is actually tested. Change-Id: Ib9c96fe7a3ff25043395cb5a89657b3b6d22f12a
2017-01-05Merge "Merge mysql service_config_settings for nova"Jenkins1-15/+17
2017-01-05Merge mysql service_config_settings for novaJames Slagle1-15/+17
The hieradata from the nova-base.yaml service template needs to be available to the role running mysql, which isn't necessarily the same role as nova. nova-base.yaml isn't an actual service template though that is included in any ServiceChain resources, it's outputs need to be merged with an actual nova service template, such as nova-api.yaml. As nova-api.yaml already provides some hieradata for the mysql service in service_config_settings, this patch uses map_merge to combine the 2 values. Change-Id: I4dc684b3611b13f177f9499e69468d3f6ef6fa76 Closes-Bug: #1654058
2017-01-05Merge "nova-api: legacy cleanup with old wsgi params"Jenkins1-11/+0
2017-01-05Merge "nova-api: also include hiera for new apache_api class"Jenkins1-3/+14
2017-01-05Merge "Configure Heat engine metadata URL's"Jenkins1-0/+17
2017-01-04puppet/role.role.j2.yaml has invalid get_resource referenceDan Prince1-1/+1
Found this today when rebasing the undercloud installer. The puppet/role.role.j2.yaml Yaml has an invalid get_resource reference that causes a cryptic heat stack failures. Change-Id: Icfb7d73a1c4d02213b23a427605f2b0d5eaa984f
2017-01-04nova-api: legacy cleanup with old wsgi paramsEmilien Macchi1-11/+0
Cleanup old legacy params for wsgi config. Change-Id: Ic775de171c95d43d9273e1a29db2ab685fdf7706 Depends-On: I59b3b36be33268fa6e261a7db3c4aa8e8e712ffb
2017-01-04nova-api: also include hiera for new apache_api classEmilien Macchi1-3/+14
puppet-nova renamed nova::wsgi::apache to nova::wsgi::apache_api to welcome nova::wsgi::apache_placement (for nova placement API). This patch adds the required parameters before we make the switch in puppet-tripleo. Legacy parameters will be removed when the switch will be done in puppet-tripleo. Change-Id: I5fc99062d349597393e2248c66f2d863029c7730
2017-01-04Merge "Add pre-network hook and example showing config-then-reboot"Jenkins8-0/+85
2017-01-04Set rabbitmq package_provider to yumJames Slagle1-0/+1
When deploying with EnablePackageInstall:True, the rabbitmq puppet module defaults to the rpm package provider, which then tries to "rpm -i undef" since we are setting rabbitmq::package_source to undef. Instead of using the rpm provider at all, we should just use the yum provider to install whatever rabbitmq rpm's are found in enabled repos. Change-Id: I29365e675bfde676fde7a54dfc6c660c3970f50a Partially-implements: blueprint split-stack-software-configuration
2017-01-04Add custom roles data for deployed-serverJames Slagle2-0/+176
Adds a custom roles data file for use when using the deployed-server templates. The file takes care of setting disable_constraints: True, so that deployers don't have to do things like create fake images in glance. Also adds a comment to roles_data.yaml documenting disable_constraints. Partially-implements: blueprint split-stack-software-configuration Change-Id: I7c26c0c2851e0d6bcea42d7af7f4295a1944ec9f
2017-01-04Merge "Adds missing firewall rules for OpenDaylight API service"Jenkins1-0/+6
2017-01-04Merge "DB connection: prevent src address from binding to a VIP"Jenkins19-0/+83
2017-01-04Merge "Specify cell0 db creation"Jenkins1-0/+4
2017-01-04Configure Heat engine metadata URL'sDan Prince1-0/+17
Tried to use the heat-engine composable service in the Undercloud and I discovered that my software deployments (when spinning up an overcloud) weren't getting signals from my t-h-t configured undercloud heat. This patch resolves the issues by configuring the metadata URLs for Heat. Change-Id: I57c9e7010bfe4afc6e62fb4c3406716d11cdfa28 Closes-bug: #1653985
2017-01-03Expose enabled_perf_events libvirt optionsPradeep Kilambi1-0/+9
For cache monitoring technology feature to work, nova config libvirt settings should have the perf events enabled for nova to emit these so telemetry can capture them. Depends-On: Ia27e6831f3f6e9cdeaacb650039be5c81b90cb40 Change-Id: I92c318008b965a6527acbce85b41a545eda7ee18
2017-01-03Specify cell0 db creationAlex Schultz1-0/+4
This change pulls the hard coded value out of puppet-tripleo to later allow people to skip the cell0 creation if they want a more complex cell v2 setup for nova. Change-Id: I08119d781ef60750cc19753bc03190e413159925 Related-Bug: #1649341
2017-01-03Merge "Increase libvirt/qemu.conf max_files and max_processes"Jenkins1-0/+3
2017-01-03Merge "Set gnocchi wsgi display name"Jenkins1-0/+1
2017-01-03Merge "Bump template version for all templates to "ocata""Jenkins325-325/+325
2017-01-03Merge "Set aodh wsgi display name"Jenkins1-0/+1
2017-01-03DB connection: prevent src address from binding to a VIPDamien Ciabrini19-0/+83
When a service connects to the database VIP from the node hosting this VIP, the resulting TCP socket has a src address which is by default bound to the VIP as well. If the VIP is failed over to another node while the socket's Send-Q is not empty, TCP keepalive won't engage and the service will become unavailable for a very long time (by default more than 10m). To prevent failover issues, DB connections should have the src address of their TCP socket bound to the IP of the network interface used for MySQL traffic. This is achieved by passing a new option to the database connection URIs. This option is available starting from PyMySQL 0.7.9-2. We use a new intermediate variable in hiera to hold the IP to be used as a source address for all DB connections. All services adapt their database URI accordingly. Moreover, a new YAML validation check is added to guarantee that new services will construct their database URI appropriately. Change-Id: Ic69de63acbfb992314ea30a3a9b17c0b5341c035 Closes-Bug: #1643487
2017-01-02Merge "Use overcloud-full instead of atomic-image"Jenkins3-131/+29
2016-12-23Merge "Pass nova rabbit information to mysql"Jenkins1-0/+6
2016-12-23Merge "Split OVN northd and ml2 plugin"Jenkins6-11/+47
2016-12-23Bump template version for all templates to "ocata"Steven Hardy325-325/+325
Heat now supports release name aliases, so we can replace the inconsistent mix of date related versions with one consistent version that aligns with the supported version of heat for this t-h-t branch. This should also help new users who sometimes copy/paste old templates and discover intrinsic functions in the t-h-t docs don't work because their template version is too old. Change-Id: Ib415e7290fea27447460baa280291492df197e54
2016-12-23Merge "Manage disallow_iframe_embed"Jenkins1-0/+1
2016-12-23Merge "Add network_config_hook interface to run-os-net-config.sh"Jenkins1-0/+6
2016-12-23Merge "Modify external loadbalancer environments to use new FixedIPs"Jenkins2-26/+14
2016-12-23Merge "Add CI matrix to THT"Jenkins1-0/+61
2016-12-22Merge "Introduce role-specific NodeUserData, use for docker"Jenkins8-1/+47
2016-12-22Merge "FreeIPA: Make OTP and FreeIPA server parameters optional"Jenkins1-5/+16
2016-12-22Merge "Use ws instead of http for Zaqar websocket endpoints"Jenkins4-12/+12
2016-12-22Merge "Add bind mounts for agent state"Jenkins1-0/+3
2016-12-22Merge "Adds missing OpenDaylight username/password from ODL OVS service"Jenkins1-0/+11
2016-12-22Pass nova rabbit information to mysqlAlex Schultz1-0/+6
The cell v2 setup requires the transport url for nova. We need to provide mysql with the rabbit connection information so that it can it when setting up the cell information. Change-Id: I43ba77cd4c8da7c6dc117ab0bd53e5cd330dc3de Related-Bug: #1649341
2016-12-22Merge "Decouple swift-proxy from ceilometer"Jenkins4-21/+46
2016-12-22Add network_config_hook interface to run-os-net-config.shJames Slagle1-0/+6
run-os-net-config.sh only allows for limited customization of the network configuration in config.json. Namely, it only customizes the bridge_name and interface_name. This will likely not be sufficient for all use cases. This patch adds a generic network_config_hook bash function that will be called if it is defined. The function is an entry point for deployers to write custom code to further influence run-os-net-config.sh. A possible alternative approach would be to pass the server resource into the NetworkConfig template. That would allow running arbitrary SoftwareDeployments on the server before NetworkDeployment is executed. However, the interface of NetworkDeployment is likely still not as flexible as this approach as the inputs are hardcoded in the role template files (role.role.j2.yaml), which are not meant to be modified by deployers. The immediate use case for this work is using os-net-config in our multinode CI jobs where we need to create vxlan tunnels between the nodes and we need to know the local private IP of each node for the tunnel endpoint. As the IP is different for each node, it's not a parameter we could specify in the templates. Change-Id: I26d0ebdaba6fcd3fe885e41ed234eb79a2405228 Implements: blueprint multinode-ci-os-net-config
2016-12-22Merge "Add hook to generate metadata from service profiles"Jenkins10-0/+47
2016-12-22Merge "Add a per service bootstrap node variable"Jenkins3-0/+28
2016-12-22Add CI matrix to THTCarlos Camacho1-0/+61
Currently the description of CI matrix is defined in tripleo-ci, but the services for each scenario lives now in THT. This submission moves this table to the repo in which the configuration is defined. Change-Id: I9ef1acefc6e1f347528a48edcb4d997a9628fcf6
2016-12-22Add hook to generate metadata from service profilesJuan Antonio Osorio Robles10-0/+47
This enables the deployer to dynamically add nova metadata to the servers based on the output of service profiles that implement the metadata_settings key in the role_data output for the profiles. One can set an implementation via the OS::TripleO::ServerMetadataHook resource, which currently is set as OS::Heat::None. So, because of the default implementation, if left untouched it actually does nothing. Currently, besides the list, which is metadata_settings, this hook also takes the name of the node that it's setting the metadata for. This is useful for nova vendordata plugins that can parse said metadata. Change-Id: I8a937f711f0b90156fbb6c4632760435ef846474
2016-12-21Merge "Use df instead of findmnt in cephstorage upgrade scripts"Jenkins1-1/+1