CentOS8でHA構成組もうと思ったら Pacemaker
がリポジトリになかったでござる問題。
ネタ元
CentOS 8のリポジトリにPacemaker / Corosyncが存在しない問題を調べてみた
計画
ソースからインストールしようと頑張ってた過程で見つけたけど、たぶん以下で出来る。
# dnf -y install wget
# wget https://www.alteeve.com/an-repo/el8/alteeve-el8-repo-latest.noarch.rpm
# rpm -ivh alteeve-el8-repo-latest.noarch.rpm
# dnf -y install pacemaker
本当は GitHub の Pacemaker-2.0.3 から make install
しようと思って、 INSTALL.md
に沿ったパッケージをかき集めてたんだけど、やっぱり corosynclib-devel
あたりが CentOS-Base
になくて、ググってたら上記リポジトリを見つけた。
試してみた
VirtualBoxに CentOS-8-x86_64-1905-dvd1.iso
でCentOS8を最小構成インストール。
- enp0s3 … NAT(外部接続IF)
- enps08 … ホストオンリー(内部接続IF)
- お試しなので全部
root
です。ごめんね。
# nmcli con mod enps03 \
connection.autoconnect yes
# nmcil con mod enps08 \
connection.autoconnect yes \
ipv4.method manual \
ipv4.address "192.168.56.31/24"
# dnf -y install wget
# wget https://www.alteeve.com/an-repo/el8/alteeve-el8-repo-latest.noarch.rpm
# rpm -ivh alteeve-el8-repo-latest.noarch.rpm
# dnf -y install pacemaker
:(中略)
インストール済み:
pacemaker-2.0.2-3.el8.2.x86_64 nspr-4.21.0-2.el8_0.x86_64
nss-3.44.0-7.el8_0.x86_64 nss-softokn-3.44.0-7.el8_0.x86_64
nss-softokn-freebl-3.44.0-7.el8_0.x86_64 nss-sysinit-3.44.0-7.el8_0.x86_64
nss-util-3.44.0-7.el8_0.x86_64 perl-TimeDate-1:2.30-13.el8.noarch
python3-pip-9.0.3-13.el8.noarch python36-3.6.8-2.module_el8.0.0+33+0a10c0e1.x86_64
avahi-libs-0.7-19.el8.x86_64 bzip2-1.0.6-26.el8.x86_64
cifs-utils-6.8-2.el8.x86_64 cups-libs-1:2.2.6-25.el8.x86_64
device-mapper-event-8:1.02.155-6.el8.x86_64 device-mapper-event-libs-8:1.02.155-6.el8.x86_64
device-mapper-persistent-data-0.7.6-1.el8.x86_64 gssproxy-0.8.0-5.el8.x86_64
keyutils-1.5.10-6.el8.x86_64 libaio-0.3.110-12.el8.x86_64
libqb-1.0.3-7.el8.x86_64 libverto-libevent-0.3.0-5.el8.x86_64
libwbclient-4.9.1-8.el8.x86_64 libxslt-1.1.32-3.el8.x86_64
lvm2-8:2.03.02-6.el8.x86_64 lvm2-libs-8:2.03.02-6.el8.x86_64
net-snmp-libs-1:5.8-7.el8_0.2.x86_64 net-tools-2.0-0.51.20160912git.el8.x86_64
nfs-utils-1:2.3.3-14.el8_0.2.x86_64 perl-Carp-1.42-396.el8.noarch
perl-Errno-1.28-416.el8.x86_64 perl-Exporter-5.72-396.el8.noarch
perl-File-Path-2.15-2.el8.noarch perl-IO-1.38-416.el8.x86_64
perl-PathTools-3.74-1.el8.x86_64 perl-Scalar-List-Utils-3:1.49-2.el8.x86_64
perl-Socket-4:2.027-2.el8.x86_64 perl-Text-Tabs+Wrap-2013.0523-395.el8.noarch
perl-Time-Local-1:1.280-1.el8.noarch perl-Unicode-Normalize-1.25-396.el8.x86_64
perl-constant-1.33-396.el8.noarch perl-interpreter-4:5.26.3-416.el8.x86_64
perl-libs-4:5.26.3-416.el8.x86_64 perl-macros-4:5.26.3-416.el8.x86_64
perl-parent-1:0.237-1.el8.noarch perl-threads-1:2.21-2.el8.x86_64
perl-threads-shared-1.58-2.el8.x86_64 psmisc-23.1-3.el8.x86_64
python3-setuptools-39.2.0-4.el8.noarch quota-1:4.04-10.el8.x86_64
quota-nls-1:4.04-10.el8.noarch rpcbind-1.2.5-3.el8.x86_64
samba-client-libs-4.9.1-8.el8.x86_64 samba-common-4.9.1-8.el8.noarch
samba-common-libs-4.9.1-8.el8.x86_64 tar-2:1.30-4.el8.x86_64
pacemaker-schemas-2.0.2-3.el8.2.noarch corosync-3.0.2-3.el8_1.1.x86_64
corosynclib-3.0.2-3.el8_1.1.x86_64 libknet1-1.10-1.el8.2.x86_64
libknet1-crypto-nss-plugin-1.10-1.el8.2.x86_64 libnozzle1-1.10-1.el8.2.x86_64
pacemaker-cli-2.0.2-3.el8.2.x86_64 pacemaker-cluster-libs-2.0.2-3.el8.2.x86_64
pacemaker-libs-2.0.2-3.el8.2.x86_64 resource-agents-4.1.1-33.el8.x86_64
完了しました!
Alteeve さんとは?
で、このリポジトリ公開している Alteeve さんって何者じゃ。
About Alteeve
We started in 1997 with the simple but powerful idea that your servers should never let you down.
Today, Alteeve is a software and systems design company specializing in server uptime and operational continuity.
As we have grown, we have maintained our commitment of exceeding our customers’ expectations and have used innovative thinking to develop products and provide solutions.
We set and design to world class availability standards. Our fault-tolerant technology stack has been developed from the ground up, going broader and deeper than any other platform available. This has enabled us to achieve historical uptime across all our deployments over 99.9999%.
Our core values of support, stability and innovation define who we are, how we work and what we stand for. They guide our decisions and inspire us to make our customers successful through onboarding, training, proactive technical support and expanding the ways that they can use our products and services.
With clients across North America and a community of users that stretches around the world, our Intelligent Availability Platform – The Anvil! – is used by organizations ranging in size from small business to enterprise class in a variety of different fields.
Simple, stable, trusted, available. Alteeve.
OK, Google. 翻訳して。
私たちは、サーバーが決してあなたを失望させないというシンプルだが強力なアイデアから1997年に始めました。
現在、Alteeveは、サーバーの稼働時間と運用の継続性に特化したソフトウェアおよびシステムの設計会社です。
成長するにつれて、お客様の期待を超えるというコミットメントを維持し、革新的な思考を使用して製品を開発し、ソリューションを提供してきました。
世界クラスの可用性標準を設定および設計します。フォールトトレラントテクノロジースタックはゼロから開発されており、利用可能な他のプラットフォームよりも広く深くなっています。これにより、すべての展開で99.9999%を超える履歴アップタイムを達成できました。
サポート、安定性、革新のコアバリューは、私たちが誰であるか、どのように働くか、何を意味するかを定義します。オンボーディング、トレーニング、プロアクティブな技術サポート、および製品とサービスの使用方法の拡大を通じて、お客様を成功に導くための意思決定を促します。
北米全域のクライアントと世界中に広がるユーザーコミュニティを備えた当社のIntelligent Availability Platform – The Anvil! –さまざまな分野の小規模ビジネスからエンタープライズクラスまでの規模の組織で使用されます。
シンプル、安定、信頼、利用可能。アルティーブ。
企業…なのか。勝手にリポジトリ使っていいのかな。
確認してみる
# python3
Python 3.6.8 (default, May 21 2019, 23:51:36)
[GCC 8.2.1 20180905 (Red Hat 8.2.1-3)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
# pacemakerd --version
Pacemaker 2.0.2-3.el8.2
Written by Andrew Beekhof
# corosync -v
Corosync Cluster Engine, version '3.0.2'
Copyright (c) 2006-2018 Red Hat, Inc.
# pcs -v
-bash: pcs: コマンドが見つかりません
PCS を追加してみる
# dnf -y install pcs
エラー:
問題: cannot install the best candidate for the job
- nothing provides python3-clufter >= 0.70.0 needed by pcs-0.10.2-4.el8.x86_64
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
** おおっと **
python3-clufter
とやらがない。
ただ --skip-broken
または --nobest
を指定するととりあえずできるらしい。
それで何か問題があるかは動作させてから考えよう。
# dnf -y install pcs --nobest
# pcs --version
0.10.1
ま、とりあえずこれで。
sfex を追加してみる
共有ディスクの排他制御であるsfex
を使おうとしたら存在しなかった。
# cd /usr/lib/ocf/resource.d/heartbeat
# ls -l sfex
ls: 'sfex' にアクセスできません: そのようなファイルやディレクトリはありません
heartbeat
が非推奨になったことに伴い消えたのだろうか。まじかよ。
rpm.pbone.netさんからrpmを取得して突っ込んで見る。
# ls -tlr sfex-1.3-11.4.x86_64.rpm
-rw-r--r--. 1 root root 17512 1月 22 05:46 sfex-1.3-11.4.x86_64.rpm
# rpm -ivh sfex-1.3-11.4.x86_64.rpm
警告: sfex-1.3-11.4.x86_64.rpm: ヘッダー V3 DSA/SHA1 Signature、鍵 ID f3fb08be: NOKEY
Verifying... ################################# [100%]
準備しています... ################################# [100%]
更新中 / インストール中...
1:sfex-1.3-11.4 ################################# [100%]
あれ?すんなんり入ったな。
# ls -l /usr/lib/ocf/resource.d/swdist/sfex
-rwxr-xr-x. 1 root root 15290 6月 18 2014 /usr/lib/ocf/resource.d/swdist/sfex
むかーしむかしと場所が変わってるな。