我尝试在 RHEL6(CentOS 版本 6.5)上使用 corosync 和 pacemaker 设置集群
我已经添加了以下 repo 数据
[haclustering]
name=HA Clustering
type=rpm-md
baseurl=http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/RedHat_RHEL-6/
gpgcheck=1
gpgkey=http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/RedHat_RHEL-6/repodata/repomd.xml.key
enabled=1
我尝试默认安装启用 repo(enabled=1)并且禁用 repo 并使用 --enablerepo 选项,同时仅安装 pacemaker 和 corosync。
似乎依赖关系存在问题,并且我收到如下错误消息:
Error: Package: pacemaker-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libcoroipcc.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libcoroipcc.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libcoroipcc.so.4()(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: pacemaker-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libcfg.so.4(COROSYNC_CFG_0.82)(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libcfg.so.4(COROSYNC_CFG_0.82)(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libcfg.so.4(COROSYNC_CFG_0.82)(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: pacemaker-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libconfdb.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libconfdb.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libconfdb.so.4()(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: pacemaker-libs-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libconfdb.so.4(COROSYNC_CONFDB_1.0)(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libconfdb.so.4(COROSYNC_CONFDB_1.0)(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libconfdb.so.4(COROSYNC_CONFDB_1.0)(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: pacemaker-cli-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libcoroipcc.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libcoroipcc.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libcoroipcc.so.4()(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: pacemaker-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libconfdb.so.4(COROSYNC_CONFDB_1.0)(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libconfdb.so.4(COROSYNC_CONFDB_1.0)(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libconfdb.so.4(COROSYNC_CONFDB_1.0)(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: pacemaker-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libcfg.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libcfg.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libcfg.so.4()(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: clusterlib-3.0.12.1-59.el6_5.2.x86_64 (updates)
Requires: libconfdb.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libconfdb.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libconfdb.so.4()(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: clusterlib-3.0.12.1-59.el6_5.2.x86_64 (updates)
Requires: libconfdb.so.4(COROSYNC_CONFDB_1.0)(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libconfdb.so.4(COROSYNC_CONFDB_1.0)(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libconfdb.so.4(COROSYNC_CONFDB_1.0)(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: pacemaker-cli-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libcfg.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libcfg.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libcfg.so.4()(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: pacemaker-libs-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libcoroipcc.so.4(COROSYNC_COROIPCC_3.0)(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libcoroipcc.so.4(COROSYNC_COROIPCC_3.0)(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libcoroipcc.so.4(COROSYNC_COROIPCC_3.0)(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: pacemaker-libs-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libcfg.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libcfg.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libcfg.so.4()(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: pacemaker-libs-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libconfdb.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libconfdb.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libconfdb.so.4()(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: pacemaker-libs-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libcoroipcc.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libcoroipcc.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libcoroipcc.so.4()(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
Error: Package: pacemaker-cli-1.1.12+git20140723.483f48a-1.1.x86_64 (haclustering)
Requires: libconfdb.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6.x86_64 (base)
libconfdb.so.4()(64bit)
Available: corosynclib-1.4.1-17.el6_5.1.x86_64 (updates)
libconfdb.so.4()(64bit)
Available: corosynclib-2.3.3-1.1.i686 (haclustering)
Not found
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
有没有什么线索可以解决这个问题?pacemaker-1.1.12 是否适用于从“ha-clustering”存储库安装的任何人?
答案1
我也有同样的经历。过去,似乎您可以在 CentOS 上使用 OpenSUSE 软件包。但至少在目前的版本中,依赖关系都搞砸了。如果您按照其他答案的建议使用当前的 CentOS 软件包,那么您还必须处理 CMAN,而不仅仅是 Pacemaker 和 Corosync。我不确定这是否是您想要做的。
我能够通过在 CentOS 6.5 上从源代码构建软件来获取 Pacemaker 和 Corosync 2.x 集群......但这并不是很有趣。
答案2
您不应该使用 Suse repo 中的任何内容crmsh
,因此pssh
您应该在 repo 文件中添加一行,includepkgs=crmsh,pssh
以便它不会覆盖 CentOS 提供的 corosync 等。
将此 repo 添加到您的 Centos Pacemaker Srv 1 和 Srv2
[heartbeat]
name=HA Clustering
baseurl=http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/CentOS_CentOS-6/
enabled=1
gpgcheck=0
includepkgs=crmsh,pssh