gpt4 book ai didi

cluster-computing - 无法启动 Corosync 集群引擎

转载 作者:行者123 更新时间:2023-12-03 05:54:43 24 4
gpt4 key购买 nike

我正在尝试按照 OpenStack HA 指南为 Controller 节点创建 HA OpenStack 集群。
所以我的集群中有三个节点:
Controller -0
Controller -1
Controller -2

为每个主机上的 hacluster 用户设置密码。

[root@controller-0 ~]# yum install pacemaker pcs corosync libqb fence-agents-all resource-agents –y ;

使用构成集群的密码在所有节点中进行身份验证

[root@controller-0 ~]# pcs cluster auth controller-0 controller-1 controller-2 -u hacluster -p password --force  
controller-2: Authorized
controller-1: Authorized
controller-0: Authorized

创建集群之后:

[root@controller-1 ~]# pcs cluster setup --force --name ha-controller controller-0 controller-1 controller-2
Redirecting to /bin/systemctl stop pacemaker.service
Redirecting to /bin/systemctl stop corosync.service
Killing any remaining services...
Removing all cluster configuration files...
controller-0: Succeeded
controller-1: Succeeded
controller-2: Succeeded
Synchronizing pcsd certificates on nodes controller-0, controller-1 controller-2...
controller-2: Success
controller-1: Success
controller-0: Success
Restaring pcsd on the nodes in order to reload the certificates...
controller-2: Success
controller-1: Success
controller-0: Success

启动集群:

[root@controller-0 ~]# pcs cluster start --all
controller-0:
controller-2:
controller-1:

但是当我启动 corosync 时,我得到:

[root@controller-0 ~]# systemctl start corosync
Job for corosync.service failed because the control process exited with error code.
See "systemctl status corosync.service" and "journalctl -xe" for details.

在消息日志中:

controller-0 systemd: Starting Corosync Cluster Engine...
controller-0 corosync[23538]: [MAIN ] Corosync Cluster Engine ('2.3.4'): started and ready to provide service.
controller-0 corosync[23538]: [MAIN ] Corosync built-in features: dbus systemd xmlconf snmp pie relro bindnow
controller-0 corosync[23539]: [TOTEM ] Initializing transport (UDP/IP Unicast).
controller-0 corosync[23539]: [TOTEM ] Initializing transmit/receive security (NSS) crypto: none hash: none
controller-0 corosync: Starting Corosync Cluster Engine (corosync): [FAILED]
controller-0 systemd: corosync.service: control process exited, code=exited status=1
controller-0 systemd: Failed to start Corosync Cluster Engine.
controller-0 systemd: Unit corosync.service entered failed state.
controller-0 systemd: corosync.service failed.

我的corosync配置文件:

[root@controller-0 ~]# cat /etc/corosync/corosync.conf    
totem {
version: 2
secauth: off
cluster_name: ha-controller
transport: udpu
}
nodelist {
node {
ring0_addr: controller-0
nodeid: 1
}
node {
ring0_addr: controller-1
nodeid: 2
}
node {
ring0_addr: controller-2
nodeid: 3
}
}
quorum {
provider: corosync_votequorum
expected_votes: 3
wait_for_all: 1
last_man_standing: 1
last_man_standing_window: 10000
}
logging {
to_logfile: yes
logfile: /var/log/cluster/corosync.log
to_syslog: yes
}

而且所有名称都是可解析的

操作系统是 CentOS Linux 版本 7.2.1511(核心)

[root@controller-0 ~]# uname -a
Linux controller-0 3.10.0-327.13.1.el7.x86_64 #1 SMP Thu Mar 31 16:04:38 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

已安装的版本:

pacemaker.x86_64                1.1.13-10.el7_2.2   @updates
pacemaker-cli.x86_64 1.1.13-10.el7_2.2 @updates
pacemaker-cluster-libs.x86_64 1.1.13-10.el7_2.2 @updates
pacemaker-libs.x86_64 1.1.13-10.el7_2.2 @updates
corosync.x86_64 2.3.4-7.el7_2.1 @updates
corosynclib.x86_64 2.3.4-7.el7_2.1 @updates
libqb.x86_64 0.17.1-2.el7.1 @updates
fence-agents-all.x86_64 4.0.11-27.el7_2.7 @updates
resource-agents.x86_64 3.9.5-54.el7_2.9 @updates

最佳答案

和你有完全相同的问题; systemctl 输出中没有错误消息或任何内容,但 corosync 始终无法启动。

Oct 03 11:24:43 jf-pacemaker-1 systemd[1]: Starting Corosync Cluster Engine...
Oct 03 11:24:43 jf-pacemaker-1 corosync[11468]: [MAIN ] Corosync Cluster Engine ('2.3.4'): started and ready to provide service.
Oct 03 11:24:43 jf-pacemaker-1 corosync[11468]: [MAIN ] Corosync built-in features: dbus systemd xmlconf snmp pie relro bindnow
Oct 03 11:24:44 jf-pacemaker-1 corosync[11469]: [TOTEM ] Initializing transmit/receive security (NSS) crypto: none hash: none
Oct 03 11:25:44 jf-pacemaker-1 corosync[11461]: Starting Corosync Cluster Engine (corosync): [FAILED]
Oct 03 11:25:44 jf-pacemaker-1 systemd[1]: corosync.service: control process exited, code=exited status=1
Oct 03 11:25:44 jf-pacemaker-1 systemd[1]: Failed to start Corosync Cluster Engine.
Oct 03 11:25:44 jf-pacemaker-1 systemd[1]: Unit corosync.service entered failed state.
Oct 03 11:25:44 jf-pacemaker-1 systemd[1]: corosync.service failed.

事实证明我的名称解析有点困惑,如果我尝试 ping 我的短主机名,它将解析为本地主机:

$ ping jf-pacemaker-1
PING jf-pacemaker-1.localdomain (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost.localdomain (127.0.0.1): icmp_seq=1 ttl=64 time=0.017 ms

这是由于我的 /etc/hosts 文件中的 IPv6 条目引起的,由 cloud-init 引入:

::1 jf-pacemaker-2.localdomain jf-pacemaker-2

正确删除该行(并确保我的主机名 <-> IP 条目位于 /etc/hosts 中)使我的 IP 正确解析为非本地主机:

$ ping jf-pacemaker-1
PING jf-pacemaker-1 (10.0.0.22) 56(84) bytes of data.
64 bytes from jf-pacemaker-1 (10.0.0.22): icmp_seq=1 ttl=64 time=0.039 ms

现在任何 corosync 都可以正常运行。

关于cluster-computing - 无法启动 Corosync 集群引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36979663/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com