We blindly bind mount /etc/corosync/corosync.conf from the host to the
container as that is required by pcs when running on pacemaker nodes
when using pcs 0.9/pcmk 1.x.
When running on a pacemaker remote node, this will actually barf on it
because that file does not exist on a remote node:
"stderr: error checking path \"/etc/corosync/corosync.conf\": stat /etc/corosync/corosync.conf: no such file or directory",
This is not an issue with docker because docker simply creates non
existing host bind mount points.
So we should not bind mount this when we run podman because podman and
HA only works on RHEL/CentOS 8 and it is not required there.
Tested this on an Stein deployment with RHEL8 as OS and I correctly
get a composable HA environment using pacemaker remote:
overcloud-database-0 (ocf::pacemaker:remote): Started overcloud-controller-0
overcloud-database-1 (ocf::pacemaker:remote): Started overcloud-controller-1
overcloud-database-2 (ocf::pacemaker:remote): Started overcloud-controller-2
overcloud-messaging-0 (ocf::pacemaker:remote): Started overcloud-controller-0
overcloud-messaging-1 (ocf::pacemaker:remote): Started overcloud-controller-1
overcloud-messaging-2 (ocf::pacemaker:remote): Started overcloud-controller-2
podman container set: galera-bundle [192.168.24.1:8787/rhosp15/openstack-mariadb:pcmklatest] galera-bundle-0 (ocf::heartbeat:galera): Master overcloud-database-0 galera-bundle-1 (ocf::heartbeat:galera): Master overcloud-database-1 galera-bundle-2 (ocf::heartbeat:galera): Master overcloud-database-2
podman container set: redis-bundle [192.168.24.1:8787/rhosp15/openstack-redis:pcmklatest] redis-bundle-0 (ocf::heartbeat:redis): Master overcloud-controller-0 redis-bundle-1 (ocf::heartbeat:redis): Slave overcloud-controller-1 redis-bundle-2 (ocf::heartbeat:redis): Slave overcloud-controller-2
podman container set: rabbitmq-bundle [192.168.24.1:8787/rhosp15/openstack-rabbitmq:pcmklatest] rabbitmq-bundle-0 (ocf::heartbeat:rabbitmq-cluster): Started overcloud-messaging-0 rabbitmq-bundle-1 (ocf::heartbeat:rabbitmq-cluster): Started overcloud-messaging-1 rabbitmq-bundle-2 (ocf::heartbeat:rabbitmq-cluster): Started overcloud-messaging-2
ip-192.168.24.12 (ocf::heartbeat:IPaddr2): Started overcloud-controller-0
ip-10.0.0.106 (ocf::heartbeat:IPaddr2): Started overcloud-controller-1
ip-172.17.1.68 (ocf::heartbeat:IPaddr2): Started overcloud-controller-2
ip-172.17.1.89 (ocf::heartbeat:IPaddr2): Started overcloud-controller-0
ip-172.17.3.23 (ocf::heartbeat:IPaddr2): Started overcloud-controller-1
ip-172.17.4.41 (ocf::heartbeat:IPaddr2): Started overcloud-controller-2
podman container set: haproxy-bundle [192.168.24.1:8787/rhosp15/openstack-haproxy:pcmklatest] haproxy-bundle-podman-0 (ocf::heartbeat:podman): Started overcloud-controller-0 haproxy-bundle-podman-1 (ocf::heartbeat:podman): Started overcloud-controller-1 haproxy-bundle-podman-2 (ocf::heartbeat:podman): Started overcloud-controller-2
podman container set: ovn-dbs-bundle [192.168.24.1:8787/rhosp15/openstack-ovn-northd:pcmklatest] ovn-dbs-bundle-0 (ocf::ovn:ovndb-servers): Master overcloud-controller-0 ovn-dbs-bundle-1 (ocf::ovn:ovndb-servers): Slave overcloud-controller-1 ovn-dbs-bundle-2 (ocf::ovn:ovndb-servers): Slave overcloud-controller-2
stonith-fence_ipmilan-5254008aa119 (stonith:fence_ipmilan): Started overcloud-controller-0
stonith-fence_ipmilan-5254003d74a4 (stonith:fence_ipmilan): Started overcloud-controller-0
stonith-fence_ipmilan-525400092968 (stonith:fence_ipmilan): Started overcloud-controller-1
stonith-fence_ipmilan-525400439c7e (stonith:fence_ipmilan): Started overcloud-controller-0
stonith-fence_ipmilan-5254002beafa (stonith:fence_ipmilan): Started overcloud-controller-2
stonith-fence_ipmilan-525400bbb6cb (stonith:fence_ipmilan): Started overcloud-controller-1
stonith-fence_ipmilan-5254001b9a8f (stonith:fence_ipmilan): Started overcloud-controller-2
stonith-fence_ipmilan-525400367613 (stonith:fence_ipmilan): Started overcloud-controller-1
stonith-fence_ipmilan-525400150f28 (stonith:fence_ipmilan): Started overcloud-controller-2
podman container: openstack-cinder-volume [192.168.24.1:8787/rhosp15/openstack-cinder-volume:pcmklatest] openstack-cinder-volume-podman-0 (ocf::heartbeat:podman): Started overcloud-controller-0
Closes-Bug: #1838279
Change-Id: I399098bf734aa3b2862e1713d4b1f429d180afbc
(cherry picked from commit bdf742d05f90a57fdd08e73409d417bfcffdb8ab)
Reviewed: https:/ /review. opendev. org/675139 /git.openstack. org/cgit/ openstack/ tripleo- heat-templates/ commit/ ?id=e20d02a8b63 e83deca47d3d531 28c44b4e5ce629
Committed: https:/
Submitter: Zuul
Branch: stable/stein
commit e20d02a8b63e83d eca47d3d53128c4 4b4e5ce629
Author: Michele Baldessari <email address hidden>
Date: Mon Jul 29 17:02:03 2019 +0200
Fix pcmk remote podman bundle restarts
We blindly bind mount /etc/corosync/ corosync. conf from the host to the
container as that is required by pcs when running on pacemaker nodes
when using pcs 0.9/pcmk 1.x.
When running on a pacemaker remote node, this will actually barf on it
because that file does not exist on a remote node:
This is not an issue with docker because docker simply creates non
existing host bind mount points.
So we should not bind mount this when we run podman because podman and
HA only works on RHEL/CentOS 8 and it is not required there.
Tested this on an Stein deployment with RHEL8 as OS and I correctly database- 0 (ocf::pacemaker :remote) : Started overcloud- controller- 0 database- 1 (ocf::pacemaker :remote) : Started overcloud- controller- 1 database- 2 (ocf::pacemaker :remote) : Started overcloud- controller- 2 messaging- 0 (ocf::pacemaker :remote) : Started overcloud- controller- 0 messaging- 1 (ocf::pacemaker :remote) : Started overcloud- controller- 1 messaging- 2 (ocf::pacemaker :remote) : Started overcloud- controller- 2 24.1:8787/ rhosp15/ openstack- mariadb: pcmklatest]
galera- bundle- 0 (ocf::heartbeat :galera) : Master overcloud- database- 0
galera- bundle- 1 (ocf::heartbeat :galera) : Master overcloud- database- 1
galera- bundle- 2 (ocf::heartbeat :galera) : Master overcloud- database- 2 24.1:8787/ rhosp15/ openstack- redis:pcmklates t]
redis-bundle- 0 (ocf::heartbeat :redis) : Master overcloud- controller- 0
redis-bundle- 1 (ocf::heartbeat :redis) : Slave overcloud- controller- 1
redis-bundle- 2 (ocf::heartbeat :redis) : Slave overcloud- controller- 2 24.1:8787/ rhosp15/ openstack- rabbitmq: pcmklatest]
rabbitmq- bundle- 0 (ocf::heartbeat :rabbitmq- cluster) : Started overcloud- messaging- 0
rabbitmq- bundle- 1 (ocf::heartbeat :rabbitmq- cluster) : Started overcloud- messaging- 1
rabbitmq- bundle- 2 (ocf::heartbeat :rabbitmq- cluster) : Started overcloud- messaging- 2 192.168. 24.12 (ocf::heartbeat :IPaddr2) : Started overcloud- controller- 0 :IPaddr2) : Started overcloud- controller- 1 :IPaddr2) : Started overcloud- controller- 2 :IPaddr2) : Started overcloud- controller- 0 :IPaddr2) : Started overcloud- controller- 1 :IPaddr2) : Started overcloud- controller- 2 24.1:8787/ rhosp15/ openstack- haproxy: pcmklatest]
haproxy- bundle- podman- 0 (ocf::heartbeat :podman) : Started overcloud- controller- 0
haproxy- bundle- podman- 1 (ocf::heartbeat :podman) : Started overcloud- controller- 1
haproxy- bundle- podman- 2 (ocf::heartbeat :podman) : Started overcloud- controller- 2 24.1:8787/ rhosp15/ openstack- ovn-northd: pcmklatest]
ovn-dbs- bundle- 0 (ocf::ovn: ovndb-servers) : Master overcloud- controller- 0
ovn-dbs- bundle- 1 (ocf::ovn: ovndb-servers) : Slave overcloud- controller- 1
ovn-dbs- bundle- 2 (ocf::ovn: ovndb-servers) : Slave overcloud- controller- 2 fence_ipmilan- 5254008aa119 (stonith: fence_ipmilan) : Started overcloud- controller- 0 fence_ipmilan- 5254003d74a4 (stonith: fence_ipmilan) : Started overcloud- controller- 0 fence_ipmilan- 525400092968 (stonith: fence_ipmilan) : Started overcloud- controller- 1 fence_ipmilan- 525400439c7e (stonith: fence_ipmilan) : Started overcloud- controller- 0 fence_ipmilan- 5254002beafa (stonith: fence_ipmilan) : Started overcloud- controller- 2 fence_ipmilan- 525400bbb6cb (stonith: fence_ipmilan) : Started overcloud- controller- 1 fence_ipmilan- 5254001b9a8f (stonith: fence_ipmilan) : Started overcloud- controller- 2 fence_ipmilan- 525400367613 (stonith: fence_ipmilan) : Started overcloud- controller- 1 fence_ipmilan- 525400150f28 (stonith: fence_ipmilan) : Started overcloud- controller- 2 cinder- volume [192.168. 24.1:8787/ rhosp15/ openstack- cinder- volume: pcmklatest]
openstack- cinder- volume- podman- 0 (ocf::heartbeat :podman) : Started overcloud- controller- 0
get a composable HA environment using pacemaker remote:
overcloud-
overcloud-
overcloud-
overcloud-
overcloud-
overcloud-
podman container set: galera-bundle [192.168.
podman container set: redis-bundle [192.168.
podman container set: rabbitmq-bundle [192.168.
ip-
ip-10.0.0.106 (ocf::heartbeat
ip-172.17.1.68 (ocf::heartbeat
ip-172.17.1.89 (ocf::heartbeat
ip-172.17.3.23 (ocf::heartbeat
ip-172.17.4.41 (ocf::heartbeat
podman container set: haproxy-bundle [192.168.
podman container set: ovn-dbs-bundle [192.168.
stonith-
stonith-
stonith-
stonith-
stonith-
stonith-
stonith-
stonith-
stonith-
podman container: openstack-
Closes-Bug: #1838279
Change-Id: I399098bf734aa3 b2862e1713d4b1f 429d180afbc fdd08e73409d417 bfcffdb8ab)
(cherry picked from commit bdf742d05f90a57