节点切换后 Pacemaker 无法启动服务

节点切换后 Pacemaker 无法启动服务

我使用两台虚拟 Ubuntu 服务器(最新的长期服务器),两台服务器具有相同的配置,并且都运行 Squid 服务和 pcs pacemaker corosync。我有两个节点Squid01Squid02一个虚拟 IP。

问题:当我启动两台服务器时,Squid02通常是由一台服务器通过启动 Squid 代理服务来执行所有工作,但是Squid01代理服务会自动禁用并变为非活动状态,因此我关闭Squid02服务器并在服务器节点之间切换,但Squid02代理服务仍然处于非活动状态,您必须手动启动它。

它没有看到停止的服务

我需要实现的是,当发生切换时,非活动服务变为活动服务,或者两个服务始终处于工作状态。

我用过创建集群的示例

但只有一个区别是,我没有 Squid apt-get,但我使用配置手动创建了它

[Unit]
Description=Squid Web Proxy.
[Service]
Type=simple
PIDFile=/usr/local/squid/var/run/squid.pid
ExecStart=/usr/local/squid/sbin/squid
[Install]
WantedBy=multi-user.target

我跳过了防火墙部分。

答案1

通过如下编辑服务文件解决了此问题:

[Unit]
Description=Squid Proxy.
[Service]
Type=simple
PIDFile=/usr/local/squid/var/run/squid.pid
ExecStartPre=/usr/local/squid/sbin/squid –z 
ExecStart=/usr/local/squid/sbin/squid 
ExecReload=/bin/kill -HUP $MAINPID
KillMode=mixed
[Install]
WantedBy=multi-user.target

并将 Pacemaker 更新到修复了错误的最新版本。

该解决方案在 Ubuntu Linux 中使用,目前我正在使用具有最新 Squid 和 Pacemaker 的 CentOS,因此这些问题不再存在。

相关内容