aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2017-05-30Merge "Enable arp_accept for all interfaces"Jenkins2-0/+11
2017-05-30Merge "Change database sync timeout from 300 to 900 in low-memory-usage ↵Jenkins2-0/+8
environment file."
2017-05-30Merge "docker bootstrap service commands"Jenkins11-28/+36
2017-05-29ceilometer-expirer: remove the crontab during upgradeEmilien Macchi1-5/+17
When running disabled/ceilometer-expirer.yaml, we want to remove the crontab that used to run ceilometer-expirer binary in periodic way. Let's use Puppet to remove this crontab. We can't easily use Ansible tasks this time, because the Ansible cron module can only remove Crontabs previously managed by Ansible: https://docs.ansible.com/ansible/cron_module.html#examples In this case, Puppet will erase the crontab in Pike. In Queens, we'll be able to remove these environments files since we wouldn't need it anymore. Change-Id: Idb050c3b281d258aea52d6a3ef40441bb9c8bcbe
2017-05-29Containerized nova-compute working with Deployed ServerJiri Stransky2-0/+91
When using the Deployed Server feature, we rely on Puppet to install packages. But nova-compute/libvirt puppet is running in a container, so it cannot install anything on the host. We rely on virtlogd on the host, so we need to install it there some way. This patch uses host_prep_tasks for that, conditionally based on the EnablePackageInstall stack parameter value. Also multinode-container-upgrade.yaml env is copied as multinode-containers.yaml, to remove the naming confusion, as the environment file can be used for more than just upgrades. The old env file will be removed once we make the upgrade job use the new one (catch 22 type of issue). Change-Id: Ia9b3071daa15bc30792110e5f34cd859cc205fb8
2017-05-26Merge "Add RoleNetHostnameMap output"Jenkins1-1/+13
2017-05-26Add sshd service to containerized compute roleOliver Walsh2-0/+2
This adds the sshd puppet service to the containerized compute role All other roles already include this service from the defaults roles data, it is only missing from the compute role. As the sshd service runs on the docker host, this must remain as a traditional puppet service. NB the sshd puppet service does not enable sshd, it just enables the management of the sshd config via t-h-t/puppet. Closes-bug: #1693837 Change-Id: I86ff749245ac791e870528ad4b410f3c1fd812e0
2017-05-26Merge "Store role_data in an OS::Heat::Value resource"Jenkins1-8/+16
2017-05-26Merge "Add heat environment for disabling all telemetry services"Jenkins1-0/+20
2017-05-26Merge "Add ignore_projects to filter gnocchi events"Jenkins1-0/+8
2017-05-26Container-specific variants of scenarios 001-004Jiri Stransky5-4/+369
Add container-specific variants of scenarios. These variants are supposed to be temporary, as their only purpose is to allow us CIing the scenarios with containers while we don't have pacemaker containerized yet. Once we can deploy and upgrade containerized deployment with pacemaker, these should be deleted and normal scenarios should be used. Alternative approach would be to edit the scenarios on the fly within the CI job, to remove the pacemaker parts, which would be more DRY, but perhaps more surprising when trying to debug issues. Change-Id: I36ef3f4edf83ed06a75bc82940152e60f9a0941f
2017-05-26Handle upgrading cinder-volume under pacemakerAlan Bishop1-0/+15
Add upgrade tasks for cinder-volume when it's controlled by pacemaker: o Stop the service before the entire pacemaker cluster is stopped. This ensures the service is stopped before infrastructure services (e.g. rabbitmq) go away. o Migrate the cinder DB prior to restarting the service. This covers the situation when puppet-cinder (who otherwise would handle the db sync) isn't managing the service. o Start the service after the rest of the pacemaker cluster has been started. Closes-Bug: #1691851 Change-Id: I5874ab862964fadb68320d5c4de39b20f53dc25c
2017-05-26Merge "Align optional services with optional services-docker"Jenkins2-0/+2
2017-05-25Add heat environment for disabling all telemetry servicesJohn Trowbridge1-0/+20
This will be used in our HA OVB CI job where we currently are failing due to running out of memory. Telemetry will still be tested via scenarios, but this will free up a large chunk of memory in the most memory intensive job. Closes-Bug: 1693174 Change-Id: Idefe9f0de47c5b0f29b7326642d697ed179e2eb8
2017-05-25Enable arp_accept for all interfacesIhar Hrachyshka2-0/+11
OpenStack heavily relies on gratuitous ARP updates when moving floating IP addresses between devices. When a floating IP moves, Neutron L3 agent issues a burst of gratuitous ARP packets that should update any existing ARP table entries on all nodes that belong to the same network segment. Due to locktime kernel behavior, some gratuitous ARP packets may be ignored [1], rendering ARP table entries broken for some time. Due to a kernel bug [2], the time may be as long as hours, depending on other traffic flowing to the node. With the current EL7 kernel, the only way to make sure that nodes honor all sent gratuitous ARP updates is to set arp_accept to 1; this will disable locktime mechanism for the packets sent by Neutron L3 agent, and will make sure ARP tables are always updated. [1] https://patchwork.ozlabs.org/patch/762732/ [2] https://bugzilla.redhat.com/show_bug.cgi?id=1450203 Related-Bug: #1690165 Change-Id: I863b240e0ab4c4d5bb844f91b607fd0937d5cedf
2017-05-25Add ignore_projects to filter gnocchi eventsPradeep Kilambi1-0/+8
Without this, ceilometer db gets hammered with gnocchi swift events. Keystone creds are required so middleware can query for id. Related change: I5c0f4f1a2c7fe7eb39ea6441970e9ac0946a4ec1 Change-Id: I9a7a80252703e470a69dc10352e7ece45ab23150
2017-05-25Align optional services with optional services-dockerBogdan Dobrelya2-0/+2
Add missing optional services for docker, if present in non-docker optional services, and vice versa. Fix issues with non containerized Mongo resources are missing when deploying optional containerized zaqar service. Add non containerized Ironix-Pxe resources to the optional Ironic services, as it is done for the containerized Ironic. Change-Id: I56675e015fa4bbd6d9809dbf7c21453939321410 Signed-off-by: Bogdan Dobrelya <bdobreli@redhat.com>
2017-05-25Merge "Include mongodb in scenario002 job"Jenkins1-0/+1
2017-05-25Merge "Remove duplicate PreConfig definition"Jenkins1-7/+0
2017-05-25Add support for linuxbridge agentBartosz Stopa5-0/+95
Currently TripleO does not support LinuxBridge driver, setting NeutronMechanismDrivers to linuxbridge will not force ml2 plugin to use linuxbridge. This commit adds new environment file which replaces default ovs agent with linuxbridge on Compute and Controller nodes. Change-Id: I433b60a551c1eeb9d956df4d0ffb6eeffe980071 Closes-Bug: #1652211 Depends-On: Iae87dc7811bc28fe86db0c422c363eaed5e5285b Depends-On: Ie3ac03052f341c26735b423701e1decf7233d935
2017-05-25Include mongodb in scenario002 jobPradeep Kilambi1-0/+1
Since we disable mongodb by default, zaqar needs it in sceanio002 job. Lets explicitly include it so it doesnt fail with: Error while evaluating a Function Call, Could not find data item mongodb_node_ips in any Hiera data file and no default supplied at /etc/puppet/modules/tripleo/manifests/profile/base/zaqar.pp Change-Id: I8f66def467d0c0175ad76f2ba5256b6a431934a8
2017-05-25Merge "Enable mistral to run under mod_wsgi"Jenkins2-6/+45
2017-05-24Containerize RabbitMQ for HADan Prince1-0/+159
This service allows configuring and deploying RabbitMQ containers in a HA overcloud managed by pacemaker. The containers are managed and run by pacemaker. Inside there is pacemaker_remote which will invoke the resource agent managing galera. The resources themselves are created via puppet-pacemaker inside a short-lived container used for this purpose (mysql_init_bundle). This container needs to use the 'docker_config' section to invoke puppet (as opposed to 'docker_puppet_tasks'), because due to the HA composability each resource creation needs to happen on the bootstrap node of that service and 'docker_puppet_tasks' will only run on the controller/primary role. Co-Authored-By: Michele Baldessari <michele@acksyn.org> Co-Authored-By: John Eckersberg <jeckersb@redhat.com> Closes-Bug: #1692909 Depends-On: I0722e4a4d4716f477e8304cfa1aadd3eef7c2f31 Change-Id: I942737134385af775cade40c2d69516d4fe31a99
2017-05-24Containerize MySQL for HADamien Ciabrini1-0/+180
This service allows configuring and deploying MySQL/galera containers in a HA overcloud managed by pacemaker. The containers are managed and run by pacemaker. Inside there is pacemaker_remote which will invoke the resource agent managing galera. The resources themselves are created via puppet-pacemaker inside a short-lived container used for this purpose (mysql_init_bundle). This container needs to use the 'docker_config' section to invoke puppet (as opposed to 'docker_puppet_tasks'), because due to the HA composability each resource creation needs to happen on the bootstrap node of that service and 'docker_puppet_tasks' will only run on the controller/primary role. Co-Authored-By: Michele Baldessari <michele@acksyn.org> Closes-Bug: #1692842 Depends-On: I3b4d8ad2eec70080419882d5d822f78ebd3721ae Change-Id: I790dbc30b3de1c1a3fe76d3d8f060e4d7f95e2e7
2017-05-24Containerize HAProxy for HADamien Ciabrini1-0/+116
This service allows configuring and deploying HAProxy containers in a HA overcloud managed by pacemaker. The containers are managed and run by pacemaker. Pacemaker runs the standard Kolla image but overrides the initial command so that it explicitely calls HAProxy. This way, we shield ourselves from any unexpected future change in Kolla. This container needs to use the 'docker_config' section to invoke puppet (as opposed to 'docker_puppet_tasks'), because due to the HA composability each resource creation needs to happen on the bootstrap node of that service and 'docker_puppet_tasks' will only run on the controller/primary role. Co-Authored-By: Michele Baldessari <michele@acksyn.org> Closes-Bug: #1692908 Depends-On: Ifcf890a88ef003d3ab754cb677cbf34ba8db9312 Change-Id: I2f679bfe195733f4507e9b9e920b678e1370bb82
2017-05-24Remove duplicate PreConfig definitionJiri Stransky1-7/+0
We had two exactly the same definitions of PreConfig in docker_steps.j2.yaml. We should remove one of them. I chose to remove the first definition, as the 2nd definition is amended by change I674a4d9d2c77d1f6fbdb0996f6c9321848e32662, so we'll avoid a conflict. Change-Id: If65e30daefcf6552e085c7648c6691b7068834d4
2017-05-24Fix race condition between docker-puppet and container stepsJiri Stransky1-0/+1
GenerateConfigDeployment wasn't anchored with dependencies anywhere. If it took too long to complete and step 1 of containers creation already started executing, problems happened. This is now fixed by adding the required dependency relationship. Change-Id: Ie7dfd2a965e704ba278d4c2fad67f14a3a62799e Closes-Bug: #1692503
2017-05-24Merge "Role Specific paramaeter support for neutron-ovs-dpdk-agent service"Jenkins1-9/+32
2017-05-23Containerize clustercheck galera monitor for HA deploymentsDamien Ciabrini1-0/+103
In HA overcloud deployments, HAProxy makes use of a helper service called "clustercheck", to check whether galera nodes are available for serving traffic. This change implements a dedicated service for clustercheck, which was originally part of the pacemaker mysql service. The service is configured by tripleo and the container's lifecycle is managed by docker, like other containerized services. Closes-Bug: #1692969 Change-Id: I8a5b30429f8ec3e484256a62a29ab7dee33ab291 Co-Authored-By: Michele Baldessari <michele@acksyn.org> Depends-on: I1aabe34fa6a9c8c705a4405f275b66502c313cf2
2017-05-23Merge "Remove osd_pool_default_min_size to allow Ceph cluster to do the ↵Jenkins6-2/+21
right thing by default"
2017-05-23Merge "docker/TLS-everywhere: Add metadata_settings output to templates"Jenkins5-0/+10
2017-05-23Example environment file to use Neutron BGPVPN driver with ODLRicardo Noriega1-0/+12
Service_provider is configured to point to networking-odl Change-Id: Icdb1c1414b237a9409e8e7dc55bb3c01da41841c Signed-off-by: Ricardo Noriega <rnoriega@redhat.com>
2017-05-23Merge "Example environment file to use L2GW Neutron Driver with ODL"Jenkins1-0/+18
2017-05-23Merge "Disable mongodb by default"Jenkins5-1/+49
2017-05-23Merge "Updated from global requirements"Jenkins1-1/+1
2017-05-23Merge "Use disabled suffix for disabled service names"Jenkins4-6/+6
2017-05-22Remove osd_pool_default_min_size to allow Ceph cluster to do the right thing ↵Keith Schincke6-2/+21
by default The default value is 0 which has the minimum number be caluclated based on the replica count from osd_pool_defaut_size. The default replica count is 3 and the calculated min_size is 2. If the replica count is 1 then the min_size is 1. ie: min_size = replica - (replica/2) Add CephPoolDefaultSize parameter to ceph-mon.yaml. This parameter defaults to 3 but can be overriden. See puppet-ceph-devel.yaml for an example Change-Id: Ie9bdd9b16bcb9f11107ece614b010e87d3ae98a9
2017-05-22docker bootstrap service commandsDan Prince11-28/+36
This patch guards db syncs and initialization code from executing on multiple nodes at the same time by using the new bootstrap_host_exec script. This helper script checks to make sure the container is executing on the "bootstrap host" for the specified service (arg 0) and then if it matches runs the specified command. Depends-On: If25f217bbb592edab4e1dde53ca99ed93c0e146c Depends-On: Ic1585bae27c318bd6bafc287e905f2ed250cce0f Change-Id: I0c864ca093ea476248b619d8c88477ef0b64e2eb Closes-Bug: 1688380
2017-05-22Updated from global requirementsOpenStack Proposal Bot1-1/+1
Change-Id: I468f654fa75b22aef398e2cba9c3625eb8f0767c
2017-05-22docker/TLS-everywhere: Add metadata_settings output to templatesJuan Antonio Osorio Robles5-0/+10
This is needed since it's what writes the service metadata to the nova server in order to create the kerberos principals. It worked in a base controller since the keystone template does have this. But if we would deploy these services on a separate role, it would break. So this output is needed. bp tls-via-certmonger-containers Change-Id: I3ee8c65d356dcd092a3fbf79041e5c69ef23b721
2017-05-22Example environment file to use L2GW Neutron Driver with ODLRicardo Noriega1-0/+18
Agent service is disabled and service_provider is configured to point to networking-odl Change-Id: I570d15a092cff66666a74e95dee69f6531a58b22 Signed-off-by: Ricardo Noriega <rnoriega@redhat.com>
2017-05-22Merge "Re-Add ceilometer expirer to roles_data"Jenkins1-0/+3
2017-05-22Merge "Add Neutron L2 Gateway service to scenario 004"Jenkins2-1/+8
2017-05-22Disable mongodb by defaultJuan Antonio Osorio Robles5-1/+49
It's not used by any service that we enable by default. So instead, I added it to the environment that enables the services that use it. Change-Id: Id2e6550fb7c319fc52469644ea022cf35757e0ce
2017-05-22Use disabled suffix for disabled service namesJuan Antonio Osorio Robles4-6/+6
This changes both the service names and the file names for disabled services, adding the 'disabled' suffix to them. This comes with the reasoning that, if a service requires a disabled service, and checks for the name in the "service_names" hiera entry, it will appear as if the service was enabled, when it's actually not. So changing the name and using this convention prevents that issue. Change-Id: I308d6680a4d9b526f22ba0d7d20e5db638aadb9a
2017-05-22Modify vhost user socket directory's default value in environment fileSaravanan KR2-1/+7
From ocata, the vhost socket directory requires a different set of permissions from the default directory (/var/run/openvswitch). Modifying the directory to a new agreed directory which will be created in puppet. Closes-Bug: #1687993 Depends-On: I255f98c40869e7508ed01a03a96294284ecdc6a8 Change-Id: I77250ca84c9da2fb5a8381e6f60234f8a05cbf12
2017-05-22Merge "TLS everywhere: configure mongodb's TLS settings"Jenkins1-0/+37
2017-05-22Re-Add ceilometer expirer to roles_dataJuan Antonio Osorio Robles1-0/+3
Even though this service was disabled by default in Pike[1], we still want the entry in roles_data since it will actually disable the service on upgrade. A comment was added so we remember to remove it in Queens. [1] Icffb7d1bb2cf7bd61026be7d2dcfbd70cd3bcbda Change-Id: I2012d7494207bf3239f589bf80b8048abf72428f
2017-05-22Add Neutron L2 Gateway service to scenario 004Carlos Camacho2-1/+8
This submission installs the Neutron L2 Gateway service in the scenario 004. This is only to check that the service is installed correctly no sanity check is running yet. Change-Id: I421802e9aa1a9f192860a6d72b4bb7c729666c3a
2017-05-21Change database sync timeout from 300 to 900 in low-memory-usage environment ↵Or Idgar2-0/+8
file. During a deployment on lower spec systems, the "db sync" can take longer than five minutes. The solution is to increase the default value of DatabaseSyncTimeout from 300 to 900 by using the environment file "low-memory-usage.yaml". Change-Id: I6463dbdd4dfe1d6f2dd283211cc496fe3a628fb0 Closes-bug: #1689318