LINBITリポジトリの登録方法

本BlogではLINBITが提供するDRBDやPacemakerのパッケージを使ってクラスターを構築する方法を紹介しています。このパッケージを入手するにはLINBITのサポートを契約するか、期間限定で利用可能な、いわゆるデモライセンスを申請いただくことになります。
今回はデモライセンス申請したのち、LINBITのパッケージを利用する方法を紹介します。

パスワードの設定

デモライセンスを申請すると申請をいただいたメールアドレスでLINBITのユーザーポータルMy LINBITへアクセスが可能になります。
初期パスワードは登録されていないので、My LINBITにアクセスして登録します。
My LINBITでの初期パスワードの登録が終わっている方は、このメールアドレスとパスワードを使って次のリポジトリ登録ツールの実行が出来ます。

My LINBITでのパスワードの設定方法はこちらのリンクで詳しく紹介しています。

リポジトリ登録ツールの実行

RHEL系のシステムでは/etc/yum.repo.dにリポジトリファイルを登録して、パッケージのダウンロード先を定義できます。このファイルはテキストファイルなのでviエディタなどで作成することができますが、LINBITではリポジトリファイルの作成支援のツールを提供しています。ツールは次のように入手します。

[root@node1 tmp]# cd /tmp
[root@node1 tmp]# curl -O https://my.linbit.com/linbit-manage-node.py
[root@node1 tmp]# chmod u+x linbit-manage-node.py

linbit-manage-node.pyはPythonで書かれたプログラムです。Pythonがインストールされていないと実行ができないので、yumコマンドでPythonをインストールしておきます。

[root@node1 tmp]# ./linbit-manage-node.py 
no python interpreter found :-(             <-- Pythonが無いので実行できない
[root@node1 tmp]# yum install -y python3
Last metadata expiration check: 1:15:49 ago on Wed Oct  6 09:02:28 2021.
Dependencies resolved.
.....
.....
Installed size: 466 k
Downloading Packages:
(1/3): python3-pip-9.0.3-19.el8.noarch.rpm                                                      194 kB/s |  20 kB     00:00    
(2/3): python36-3.6.8-2.module_el8.4.0+790+083e3d81.x86_64.rpm                                  144 kB/s |  19 kB     00:00    
(3/3): python3-setuptools-39.2.0-6.el8.noarch.rpm                                               554 kB/s | 163 kB     00:00    
.....
.....
Installed:
  python36-3.6.8-2.module_el8.4.0+790+083e3d81.x86_64  python3-pip-9.0.3-19.el8.noarch  python3-setuptools-39.2.0-6.el8.noarch 

Complete!

Pythonのインストール後に、本ツールを実行します。

なお、本手順でのメールアドレスはhoge@example.comを 、パスワードは前記のMy LINBITで登録いただいたものを使います。

[root@node1 tmp]# ./linbit-manage-node.py 
linbit-manage-node.py (Version: 1.35)
Checking if version is up to date
[OK] Your version is up to date
Username: hoge@example.com                       <-- IDを入力する
Credential (will not be echoed): <<パスワード>>  <-- パスワードの入力する
Connecting to https://api.linbit.com
[OK] Login successful
Will this node form a cluster with...

1) *Be first node of a new cluster*              <-- 初回はnew clusterになります。

--> Please enter a number in range and press return: 1  <-- 1を入力します。
Writing registration data:
--> Write to file (/var/lib/drbd-support/registration.json)? [y/N] y <-- yを入力します。

すでに別のノードでリポジトリを登録している場合には、”1) *Be first node of a new cluster*”の表示が次のようになります。Cluster-IDは登録済みのノードで設定されたIDです。2台目のノードも同じCluster-IDで管理する場合は1を選択します。

....
[OK] Login successful
Will this node form a cluster with...

1) Nodes: node1 (Cluster-ID: 5666)
2) *Be first node of a new cluster*

--> Please enter a number in range and press return: 
....

入力が終わるとプロダクト選択の画面が表示されます。

RHEL8やCentOS8の場合は次のような画面になります。

  Here are the repositories you can enable:

    1) pacemaker-2(Disabled)
    2) drbd-9.0-only(Disabled)
    3) drbd-9.0(Disabled)
    4) drbd-9(Disabled)

  Enter the number of the repository you wish to enable/disable. Hit 0 when you are done.

RHEL7やCentOS7の場合は次のような表示になります。

  Here are the repositories you can enable:

    1) pacemaker-2(Disabled)
    2) pacemaker-1.1.21(Disabled)
    3) pacemaker-1.1.15(Disabled)
    4) pacemaker-1.1(Disabled)
    5) drbd-9.0-only(Disabled)
    6) drbd-9.0(Disabled)
    7) drbd-9(Disabled)
    8) drbd-8.4(Disabled)

  Enter the number of the repository you wish to enable/disable. Hit 0 when you are done.

DRBDの項目がいくつか並んでいます。安定板のDRBD 9を利用したい場合はdrbd-9.0を選択してください。

drbd-9現在開発中のDRBD 9.1です。まだ安定していないのでDRBD 9.1の新しい機能が必要でない場合はdrbd-9.0を選択してください。

DRBD 9を選択する(上の例では3を入力する)と画面の表示がこのように変わります。

Here are the repositories you can enable:

    1) pacemaker-2(Disabled)
    2) drbd-9.0-only(Disabled)
    3) drbd-9.0(Enabled)
    4) drbd-9(Disabled)

  Enter the number of the repository you wish to enable/disable. Hit 0 when you are done.

選択ができたら、0を入力します。リポジトリ情報が画面に表示されて、それを/etc/yum.repo.dに保存するか確認のプロンプトが表示されます。yと入力するとLINBITのkeyringの登録のプロンプトが表示されるので、これもyと入力します。

Writing repository config:
Content:
[drbd-9]
name=LINBIT Packages for drbd-9 - $basearch
baseurl=https://packages.linbit.com/<<ハッシュ番号>>/yum/rhel8/drbd-9/$basearch
enabled=0
gpgkey=https://packages.linbit.com/package-signing-pubkey.asc
gpgcheck=1

[drbd-9.0-only]
name=LINBIT Packages for drbd-9.0-only - $basearch
baseurl=https://packages.linbit.com/<<ハッシュ番号>>/yum/rhel8/drbd-9.0-only/$basearch
enabled=0
gpgkey=https://packages.linbit.com/package-signing-pubkey.asc
gpgcheck=1

[pacemaker-2]
name=LINBIT Packages for pacemaker-2 - $basearch
baseurl=https://packages.linbit.com/<<ハッシュ番号>>/yum/rhel8/pacemaker-2/$basearch
enabled=0
gpgkey=https://packages.linbit.com/package-signing-pubkey.asc
gpgcheck=1

[drbd-9.0]
name=LINBIT Packages for drbd-9.0 - $basearch
baseurl=https://packages.linbit.com/<<ハッシュ番号>>/yum/rhel8/drbd-9.0/$basearch
enabled=1
gpgkey=https://packages.linbit.com/package-signing-pubkey.asc
gpgcheck=1


--> Write to file (/etc/yum.repos.d/linbit.repo)? [y/N] y   <--- yを入力する
[OK] Repository configuration written
Downloading LINBIT yum plugin
Downloading LINBIT yum plugin config
--> Add linbit signing key to keyring now? [y/N] y   <--- yを入力する
Final Notes:
Please add the following line to your
base, updates, el repo (if enabled)
repositories under /etc/yum.repos.d/
to ensure you are using LINBIT's packages:

exclude=cluster* corosync* drbd kmod-drbd libqb* pacemaker* resource-agents*

Now update your package information and install
LINBIT's kernel module and/or user space utilities
[OK] Congratulations! Your node was successfully configured.
[root@node1 tmp]# 

リポジトリ登録ツールが終了し、DRDBのインストールの準備ができました。