On Thu, Nov 07, 2024 at 08:59:30AM +0100, Ferenc Wágner wrote: > I think a good solution is taking shape here. My thoughts: > > 1. Currently pacemaker only Recommends fence-agents, so users disabling > Recommends must have installed it manually (unless disabled it later). > > 2. Using pacemaker without fencing is possible but unsupported, so > tightening this dependency is reasonable given a singular alternative. > > 3. Users creating their own fence agent packages should depend on > fence-agents-common, or install it manually for plain scripts. > > 4. The xserver-xorg-video-* setup is a nice and well-known solution, if > all stakeholders support this setup, I'd go with it. > > 6. I'd avoid having both fence-agents and fence-agents-all, or > fence-agent and fence-agents (for name similarity). In the end > pacemaker should contain something like this, I guess: > > Depends: fence-agents-all | fence-agent > > where fence-agents-all would Depend on all agents (possibly only > Recommending some esoteric big ones), and all agent packages would > Provide fence-agents. > > Would this handle all concerns? Or should pacemaker stay with only > Recommending the agents?
Maybe Recommends in pacemaker still fits better with the description: This declares a strong, but not absolute, dependency. The Recommends field should list packages that would be found together with this one in all but unusual installations. But there might be few other complications to this plan... For example, fence-agents-sbd can only be in Suggests because will also install the sbd daemon. That daemon could influence the behavior of the pacemaker cluster in unexpected ways like rebooting the node when quorum is lost. Another problem are the legacy stonith agents in the cluster-glue package listed left below. Some of them like stonith:external/hetzner might still be useful if there is no alternative in fence-agents. But if we have cluster-glue also provide fence-agent, than fence-agents-all will not be installed by default anymore? stonith:apcmaster stonith:fence_ilo2 stonith:apcmastersnmp stonith:fence_ilo3 stonith:apcsmart stonith:fence_ilo3_ssh stonith:baytech stonith:fence_ilo4 stonith:bladehpi stonith:fence_ilo4_ssh stonith:cyclades stonith:fence_ilo5 stonith:drac3 stonith:fence_ilo5_ssh stonith:external/drac5 stonith:fence_ilo_moonshot stonith:external/dracmc-telnet stonith:fence_ilo_mp stonith:external/hetzner stonith:fence_ilo_ssh stonith:external/hmchttp stonith:fence_imm stonith:external/ibmrsa stonith:fence_intelmodular stonith:external/ibmrsa-telnet stonith:fence_ipdu stonith:external/ipmi stonith:fence_ipmilan stonith:external/ippower9258 stonith:fence_ipmilanplus stonith:external/kdumpcheck stonith:fence_ironic stonith:external/libvirt stonith:fence_kdump stonith:external/nut stonith:fence_kubevirt stonith:external/rackpdu stonith:fence_ldom stonith:external/riloe stonith:fence_legacy stonith:external/sbd stonith:fence_lindypdu stonith:external/ssh stonith:fence_lpar stonith:external/vcenter stonith:fence_mpath stonith:external/vmware stonith:fence_netio stonith:external/xen0 stonith:fence_openstack stonith:external/xen0-ha stonith:fence_ovh -- Valentin