aboutsummaryrefslogtreecommitdiff
path: root/ansible/roles/rabbitmq
AgeCommit message (Collapse)AuthorFilesLines
2016-11-15Remove Ansible from KollaSteven Dake16-311/+0
Change-Id: I5396e4b9927d3e65b6aa4185238a43a4765a996b
2016-11-03Move precheck into its own roleJeffrey Zhang1-0/+1
* Merge prechecks.yml and site.yml playbook * Create empty precheck.yml into all roles. Change-Id: I8a138558a26c0a2a66c5fd48ed37be657c99c1dd Implements: blueprint condition-pre-check
2016-10-13Merge "Remove do_reconfigure.yml file for all roles"Jenkins2-66/+63
2016-10-13Fix rabbitmq upgrade permission issueJeffrey Zhang1-0/+12
During the upgrade from Mitaka to Newton, the uid/gid may change for the same image. Especially on Ubuntu, we moved to Ubuntu Xenial in Newton and it added systemd related user which break all the uid/gid during an upgrade. It will the permissions in all docker named volumes. This fix extends set_config.py to set the proper permission during container start. This is super light then add commands in extend_start.sh file or add ansible tasks. This patch just fixes rabbitmq case. Other services will be fixed in following patches. Partial-Bug: #1631503 Change-Id: Ib17027b97abbc9bf4e3cd503601b8010325b5c5b
2016-09-27Remove do_reconfigure.yml file for all rolesJeffrey Zhang2-66/+63
do_reconfigure.yml is introduced to use serial directive. But we use it in wrong. Now serial has moved to playbook file. So it is time to remove the do_reconfigure.yml file Closes-Bug: #1628152 Change-Id: I8d42d27e6bc302a0e575b0353956eaef9b2ca9fd
2016-09-24Revert "Bind EPMD to api interface address"Jeffrey Zhang1-1/+10
This issue still exsits when disable ipv6 feature. This reverts commit 5480bd9b1d3a9efcd3618ddf12718d2621ceeb47. Change-Id: I1e6c6bff5585cf5a49890668203d6971112c32f1
2016-09-14Bind EPMD to api interface addressJeffrey Zhang1-10/+1
Closes-Bug: #1562701 Change-Id: Ica68bdee81223232995bc21ad5e5d5fbf9e8b05f
2016-09-13Added serial option to site.yml.Mick Thompson1-1/+0
Useful for upgrade etc., which is preferablly done serially. Example usage: tools/kolla-ansible deploy OR tools/kolla-ansible upgrade Closes-Bug: #1576708 DocImpact Change-Id: I34b2e16f8ce53e472a4682a4738c4ac0f5abf00c
2016-09-12Adding required check for Orchestration KubernetesSerguei Bezverkhi1-1/+0
Thgis PS add missing check for Kubernetes orchestration engine, without these changes, running kolla-ansible genconfig fails for Kubernetes environment. TrivialFix Change-Id: I25eeb7ae3ddba7c924f6d48aa24afdbe74227170
2016-08-26Move rabbitmq precheck from startPaul Bourke1-10/+0
rabbitmq's start task contains a precheck. This should be part of the other prechecks for consistency TrivialFix Change-Id: I7728ec3f5be3248424d74a4387925b72114b8943
2016-08-19Improve rabbitmq-clusterer template code formatDuong Ha-Quang1-4/+6
TrivialFix Change-Id: I735091c4d044344361e604014f3877b608223204
2016-08-10Fix intf address for RabbitMQ and disable cluster for KubeKen Wronkiewicz2-6/+10
enable_rabbitmq_cluster is now a "yes" by default but you can set it to "no" if you want to disable clustering under any circumstances. The agreement made at OpenStack in Austin was that Kolla-Kubernetes would concentrate on RabbitMQ and MariaDB without clustering but with persistent storage and workload migration, then examine how to do proper distributed functionality as the project progresses, so I am just following what we'd already agreed upon. First, it helps us deal with issues of version upgrades without dealing with clustered version upgrades and the synchronization thereof. Second, it provides an alternative model for durability when used in Kubernetes. Understand that, if we disable RabbitMQ's clustering, Kubernetes is still able to re-schedule the queue off of a failed node in ways that Kolla-Ansible is not. There are known issues with RabbitMQ clustering, especially with auto-heal turned on. For many small-to-mid-sized clusters, it's going to provide for a better operator experience to have the known potential for a 30 second blip after RabbitMQ node failure than it is to have the known potential for partition and data loss and/or manual operations after you've turned off auto-heal. Kolla-kubernetes has already turned off host networking for the RabbitMQ pod; it's safe to set the interface address in the Kubernetes context. The question was asked why don't I just set the RabbitMQ cluster to be a single instance. It's unlikely that Kubernetes RabbitMQ with a PetSet will be clustered in the same declaritive fashion as the rabbitmq-clusterer plugin. Easier to just disable it and worry about how to configure the kube-friendly clustered RabbitMQ at a later point in time. Furthermore, it's an entirely valid case for many OpenStack control planes hosted atop Kolla-Kubernetes to accept the possibility of a 30-60 second blip in lieu of the long and questionable history of RabbitMQ clustering in production. Co-authored-by: Ryan Hallisey <rhallise@redhat.com> Change-Id: I7f0cb22d29a418fce4af8d69f63739859173d746 Partially-implements: blueprint api-interface-bind-address-override
2016-08-09Port with_ loop variable syntax to Ansbile 2Duong Ha-Quang2-6/+6
Migrate to full variable syntax in with_ loop instead of bare variables for: - ceph - ceilometer - glance - heat - horizon - keystone - mariadb - memcached - neutron - nova - rabbitmq Change-Id: Ib925b4ecea47ac758a77739c9c7e140f06933b08 Partial-Implements: blueprint ansible2
2016-05-23Configure the rabbitmq ha policy in config fileJeffrey Zhang4-4/+24
Closes-Bug: #1580884 Change-Id: Ief5917d48dbf6abe4a5861e73b24d534b889bd52
2016-05-13Avoid _ in rabbitmq_clusterer.configDavanum Srinivas4-4/+4
Trying to use ConfigMap's in Kubernetes leads to an interesting problem. We use the file name as the key and the contents of the file as the text value. The ConfigMap is mounted on the container as a volume and the key is then used as the name of the file. The problem is that kubernetes has a limitation on the name of the key https://github.com/kubernetes/kubernetes/blob/release-1.2/docs/design/identifiers.md Which means we cannot use '_' in the name of the file. Closes-Bug: #1581162 Change-Id: I2d9ec80f989c30893b019954fe18b3623d27a076
2016-05-03map the host localtime to the containerJeffrey Zhang2-0/+2
Closes-Bug: #1577148 Change-Id: I636cefc63cf532434a41af3898b63dffa711e280
2016-04-12Merge "Rabbitmq Upgrade restarts container only when image was changed."Jenkins1-3/+18
2016-04-11Clarify comment about binding erlang to IPv4Martin André1-5/+9
The comment was confusing and not explaining what the real issue is when binding erlang to an IPv4 address. Change-Id: I819ea137fa37c0b2711efb1e7cb1e518ae26b9ab Related-Bug: #1562701
2016-04-11Fix rabbitmq crash in centos gateVikram Hosakote1-3/+5
Please refer to the Closes-Bug identifier for detailed information pertaining to this issue. Closes-Bug: #1562701 Change-Id: I77563930e14e11ea48e7edfef0bff80002279381
2016-04-10Rabbitmq Upgrade restarts container only when image was changed.Serguei Bezverkhi1-3/+18
This fix adds a check of Rabbitmq's image version during the upgrade. The container gets restarted only when the image version is different. Change-Id: Ie038845c0c8fff1ac51b7cbf21e1b593229c2c0e Closes-Bug: #1558832
2016-04-10Merge "Add quotes for RBMQ nodes definition"Jenkins1-2/+2
2016-04-08Add quotes for RBMQ nodes definitionProskurin Kirill1-2/+2
erlang parser, cant parse hostname with minus symbol, it returns: Ignoring external configuration due to error: {1,erl_parse,"bad term"} Adding single quotes fix this issue. Co-Authored-By: weiyu <weiyu@unitedstack.com> Closes-Bug: #1540234 Change-Id: I80e0789aa31febd552a851e6dc3a835d89c0e9d1
2016-04-05Merge "Playbook for rabbitmq upgrade"Jenkins2-0/+22
2016-04-01Merge "Fix IP resolve check for RabbitMQ on AIO"Jenkins1-1/+1
2016-04-01Fix IP resolve check for RabbitMQ on AIOMichal Rostecki1-1/+1
On AIO installation we cannot assume that the public IP address will be the first entry in "getent ahostsv4" result, because it may be also a localhost address. To make this check positive in AIO, we should look for the public IP in the whole output. Change-Id: I1da7b95d7f00c7f87ff68ead46bf55fdea812599 Closes-Bug: 1564564
2016-03-28Restrict the rabbitmq only start on rabbitmq groupJeffrey Zhang1-0/+1
Change-Id: I375d637eff76dd3d00e61e521c0d68a19e5da9a3 Closes-Bug: #1562261
2016-03-21Fix problem where ipv6 address causes failureSteven Dake1-1/+1
If an IPV6 address is assigned to the interface as well as IPv4, Kolla bombs out during deployment. Change-Id: Ic161c52825e0642e261d22418569d0f7667c6bd1 Closes-Bug: #1560137
2016-03-19Add check if all the hostnames are resolvableMichal (inc0) Jastrzebski1-0/+10
Rabbitmq can't work with IPs, so we need to make sure that all rabbit cluster hosts can resolve each others hostnames. We should also require that in docs. DocImpact Closes-Bug: #1559158 Change-Id: I2418187138988d21da3dc3624e9cdbda891d4894
2016-03-18Playbook for rabbitmq upgradeMichal (inc0) Jastrzebski2-0/+22
Main issue with rabbitmq clusterer setup is to shut down gospel node as last one, which is bulk of this change Co-Authored-By: Sam Yaple <sam@yaple.net> Change-Id: I88e566a19ed813b0e3eef65ef7139ccfaa0c2700 Implements: blueprint upgrade-rabbitmq Partially-implements: blueprint upgrade-kolla
2016-03-15Merge "Use ubuntu Mitaka repo"Jenkins1-4/+2
2016-03-14Use ubuntu Mitaka repoSamYaple1-4/+2
The rabbitmq-server package is upgraded to 3.5.7 in cloud-archive so we update centos to match The xen-utils package now needs an explict version, xen-utils-4.6 is what is provided by cloud-archive mitaka Libvirt 1.3 is in the ubuntu cloud-archive. This has a new daemon for logging that needs further implementation in newton. For now, it has been disabled within the qemu.conf Co-Authored-By: Jeffrey Zhang <jeffrey.zhang@99cloud.net> TrivialFix Change-Id: I84217824817c484b6800a64cbd7767b127a3098e
2016-03-11Reconfigure rabbitmq serviceVikram Hosakote2-0/+67
Change-Id: I8228c010577bd01a7dcac18a5455e11b0e6f569a Closes-Bug: #1553521
2016-02-25Add the default empty reconfigure.yml file to all rolesJeffrey Zhang1-0/+1
DocImpact Partially-implements: bp kolla-reconfig Change-Id: I9738e80960bcfbef18d1ef1b7942f81c45684e85
2016-02-19Make Heka collect RabbitMQ logsÉric Lemoine2-0/+3
Partially implements: blueprint heka Change-Id: I8fd3324daf15e52712591c2b3cbec613d82b73b3
2016-02-12Do not pull rabbitmq-data imageJeffrey Zhang2-11/+0
Rabbitmq container has moved to named volume. No need pull rabbitmq-data image. TrivialFix Change-Id: I83776ce626a7e398add0f07bd855924b8632b1ae
2016-02-04Revert "fix miss rabbitmq config when hostname include special character"Sam Yaple1-2/+2
This change breaks ubuntu This reverts commit 04992a3de0a181a658cae2561a3a1adce313bbf1. Change-Id: I5e38d4c4a37ee90603ad04ab4b9d03298b6b2eb2
2016-02-02fix miss rabbitmq config when hostname include special characterweiyu1-2/+2
Change-Id: I46db4d3547b120d1ccd87a48e31b699bdd1aa1a0 Closes-Bug: #1540234
2016-01-29Convert rabbitmq to named volumeSamYaple2-18/+11
Change-Id: I81413ffcaa4efb881d13fef62823d60b676e871d Implements: blueprint docker-named-volumes
2016-01-28Update all bootstraps to use LabelSamYaple1-0/+2
Add bootstrap label to all bootstrap containers to ensure that when the a new container is launched a difference is seen between it and the bootstrap container since we cannot rely on ENV variables for this. This only affects mariadb at this stage, but it is needed to ensure rabbitmq works when we switch to named volumes. Change-Id: Ia022af26212d2e5445c06149848831037a508407 Closes-Bug: #1538136
2016-01-26Add stub upgrade.ymlMichal Jastrzebski1-0/+1
After introduction of pull action and turing every main.yml into {{action}}.yml we lost ability to perform upgrade Change-Id: Ie9fa2cd083b061033abc733fba53d54f9c55e393 Fixes-Bug: #1538210
2016-01-06Allow rabbitmq role to pull imagesSamYaple3-5/+21
Change-Id: I184aabfbbd9fcd0b87080d044b0d286f0deac14c Partially-Implements: blueprint pre-pull-images
2015-12-31Convert rabbitmq to kolla_dockerSamYaple2-60/+21
Change-Id: Idd3528fe739f30e0251137966512ecc05dd715a7 Partially-Implements: blueprint kolla-docker-module
2015-12-22Simplify config creationSamYaple1-15/+16
Convert config creation from a playbook to an action_plugin. This reduces the complexity and confusion while retaining the same augment structure and flexibility. This allows us to remove the 0-byte files as requirements. They will still be used if they are present (this means we require additional documentation around them). DocImpact Closes-Bug: #1528430 Change-Id: I2c789f6be9f195c7771ca093a6d59499564b4740
2015-11-23Make the database json variable more readableSam Yaple1-1/+0
Additionally remove tty from the container cleanup docker section. It was added in a sed in a previous patchset by serves no purpose. Change-Id: Ib617870616bca687f72ffaa44b2e9a3a11ef1011 Partially-Implements: blueprint cleanup-playbooks
2015-11-12Drop root privileges for rabbitmqRyan Hallisey1-1/+1
Drop root privileges for rabbitmq. Only the rabbitmq user will be able to execute chown of /var/lib/rabbitmq. Change-Id: I546e6b475a8462bfbc75972854e1fee64f96d9cb Partially-Implements: blueprint drop-root
2015-11-03Use rabbitmq-clusterer when deployingSam Yaple6-13/+27
Change-Id: I2a9c6fa16444a2142ab77f58d188eda84a2e59fd Partially-Implements: blueprint rabbitmq-clusterer
2015-10-14Add tty to containersSam Yaple2-0/+4
sudo requires a tty to function by default on centos. Instead of tweaking the sudo conf we can just add a tty. This has the added advantage of making the containers more friendly if you have to `docker exec -i <container> bash` into them. Change-Id: If97a02ca1d37c243a787d98ade54bde8d641aecd backport: liberty Partially-Implements: blueprint functional-testing-gate
2015-10-13Fix issue with su and bad kernelsSam Yaple1-1/+1
Long story short, some kernels before 3.15 had an issue with using su in a container when the network namespace was --net=host. The gate has a 3.10 and a 3.13 kernel and has a problem with this. This changes everything to use sudo backport: liberty Partially-Implements: blueprint functional-testing-gate Change-Id: I4d79ccaa1cddffcc8393f64e7e1be2538efe33e5
2015-10-13Bump ansible to 1.9.2Sam Yaple2-3/+0
Ansible 1.9.2 contains the fix needed for docker-py >1.2.0 This is needed for some gate reasons, but it is also a good version bump because it fixes a few issues with delegate_to. Change-Id: Iafbabb3b0232620849d0548c5cd9d8d316c2b0f3 backport: liberty Partially-Implements: blueprint functional-testing-gate
2015-10-06Bring Kolla inline with FHSSam Yaple3-4/+4
This brings Kolla images inline with FHS and should make finding locations of things more consistent and reliable with the linux world at large. Change-Id: Iece5b4da4bace0fb8b1f41a65ab2c852ec73e6f8 Closes-Bug: #1485742