現行稼働しているBeeGFSはbeegfs-ctlコマンドで確認できる

[root@client ~]# beegfs-ctl --listnodes --showversion --nodetype=storage
ss1.sybyl.local [ID: 1]
   Version code: 6.19-0
ss2.sybyl.local [ID: 2]
   Version code: 6.19-0
ss3.sybyl.local [ID: 3]
   Version code: 6.19-0
[root@client ~]#

どうやら v6系である。
https://www.beegfs.io/release/beegfs_7_1/Changelog.txtにv7.1のChangelogがあるが、
v7ではストレージプールを用意して、SSDをキャッシュ代わりに使うそうな。ZFSのL2ARCと思えばいいのかしら?

ここでは v6 から v7 へのアップグレードを記載する
手順はここに記載されている
https://www.beegfs.io/wiki/Upgrade6xOr70To71

Step 1: Stop all BeeGFS services

全てのBeeGFSを停止します。当然clinetとしてマウントしてるマシンも。

[root@client ~]# systemctl stop beegfs-client beegfs-helperd
 
[root@ms ~]# for i in ss1 ss2 ss3;do ssh root@$i systemctl stop beegfs-storage ;done
 
[root@ms ~]# ssh mds systemctl stop beegfs-meta.service
 
[root@ms ~]# systemctl stop beegfs-admon beegfs-mgmtd

Step 2: Install new BeeGFS Repository files

リポジトリを更新します。
現状だと

[root@ms ~]# cat /etc/yum.repos.d/beegfs-rhel7.repo
[beegfs]
name=BeeGFS 6 (RHEL7)
 
# If you have an active BeeGFS support contract, use the alternative URL below
# to retrieve early updates. Replace username/password with your account for
# the BeeGFS customer login area.
#baseurl=http://username:password@www.beegfs.com/login/release/beegfs_6/dists/rhel7
baseurl=http://www.beegfs.com/release/beegfs_6/dists/rhel7
 
gpgkey=http://www.beegfs.com/release/beegfs_6/gpg/RPM-GPG-KEY-beegfs
gpgcheck=0
enabled=1
[root@ms ~]#

と思います。これを https://www.beegfs.io/release/beegfs_7_1/dists/beegfs_rhel7.repo へと差し替えます。
具体的にはこんな感じになる。

[root@ms ~]# cat /etc/yum.repos.d/beegfs-rhel7.repo
[beegfs]
name=BeeGFS 7.1.2 (rhel7)
 
# If you have an active BeeGFS support contract, use the alternative URL below
# to retrieve early updates. Replace username/password with your account for
# the BeeGFS customer login area.
# baseurl=https://username:password@www.beegfs.io/login/release/beegfs_7_1/dists/rhel7
baseurl=https://www.beegfs.io/release/beegfs_7_1/dists/rhel7
 
gpgkey=https://www.beegfs.io/release/beegfs_7_1/gpg/RPM-GPG-KEY-beegfs
gpgcheck=0
enabled=1
[root@ms ~]#

同じRHEL7向けですが、BeeGFS 6から「BeeGFS 7.1.2」に変わった点が重要
その後に

rpm --import https://www.beegfs.io/release/beegfs_7_1/gpg/RPM-GPG-KEY-beegfs

と実行してリポジトリのキーを入手します。

そしてこの作業を全てのBeeGFS関連マシン(ms,mds,ss1,ss2,ss3,client)に行います。

Step 3: Update to new BeeGFS Packages

リポジトリの更新が終ったら、BeeGFSのパッケージを更新します。

ここでは ms から始めます。

[root@ms ~]# yum update "beegfs*"
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * epel: ftp.riken.jp
 * extras: ftp.riken.jp
 * updates: ftp.riken.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ beegfs-admon.x86_64 6:6.19-el7 を 更新
---> パッケージ beegfs-admon.x86_64 20:7.1.2-el7 を アップデート
---> パッケージ beegfs-common.noarch 6:6.19-el7 を 更新
---> パッケージ beegfs-common.noarch 20:7.1.2-el7 を アップデート
---> パッケージ beegfs-mgmtd.x86_64 6:6.19-el7 を 更新
---> パッケージ beegfs-mgmtd.x86_64 20:7.1.2-el7 を アップデート
---> パッケージ beegfs-utils.x86_64 6:6.19-el7 を 更新
---> パッケージ beegfs-utils.x86_64 20:7.1.2-el7 を アップデート
--> 依存性解決を終了しました。
 
依存性を解決しました
 
=========================================================================================================================================
 Package                             アーキテクチャー             バージョン                          リポジトリー                  容量
=========================================================================================================================================
更新します:
 beegfs-admon                        x86_64                       20:7.1.2-el7                        beegfs                       2.0 M
 beegfs-common                       noarch                       20:7.1.2-el7                        beegfs                       9.0 k
 beegfs-mgmtd                        x86_64                       20:7.1.2-el7                        beegfs                       650 k
 beegfs-utils                        x86_64                       20:7.1.2-el7                        beegfs                       1.5 M
 
トランザクションの要約
=========================================================================================================================================
更新  4 パッケージ
 
総ダウンロード容量: 4.2 M
Is this ok [y/d/N]: y
 :
 :
更新:
  beegfs-admon.x86_64 20:7.1.2-el7 beegfs-common.noarch 20:7.1.2-el7 beegfs-mgmtd.x86_64 20:7.1.2-el7 beegfs-utils.x86_64 20:7.1.2-el7
 
完了しました!
[root@ms ~]#

と無事終了

本家にはinfinibandで構築している場合、「yum install "libbeegfs-ib"」の実行が必要とありますが、ここは使ってないのでスキップ。
また「beegfs-opentk-lib」パッケージがあったらそれは不要なので削除します。
その後にデーモンが書き換わったので再読み込みします。

[root@ms ~]# yum remove beegfs-opentk-lib
[root@ms ~]# systemctl daemon-reload

これでパッケージの更新は完了。

っで、他のノード(client含む)も同じように「yum update "beegfs*";yum remove beegfs-opentk-lib;systemctl daemon-reload」と実行します。

Step 4: Start the BeeGFS services

BeeGFSを立ち上げます。まずは管理ノード(ms.sybyl.local)から

が、updateして気になった点

[root@ms ~]# systemctl list-unit-files | grep beegfs
beegfs-admon.service                          enabled
beegfs-mgmtd.service                          enabled
beegfs-mgmtd@.service                         disabled
[root@ms ~]#

三行目の「beegfs-mgmtd@.service」は複数インスタンス対応っぽい。
いまは単一インスタンスなので、「beegfs-mgmtd.service」と「beegfs-admon.service」を起動します。

[root@ms ~]# systemctl start beegfs-mgmtd.service beegfs-admon.service

次にMetadata Servers(mds.sybyl.local)。ここでもupdateしたら複数インスタンス対応が行われているようでした。

[root@mds ~]# systemctl list-unit-files |grep beegfs-meta
beegfs-meta.service                           enabled
beegfs-meta@.service                          disabled
[root@mds ~]#
 
[root@mds ~]# systemctl start beegfs-meta.service

次にStorage Server群。

[root@ss1 ~]# systemctl list-unit-files |grep beegfs
beegfs-storage.service                        enabled
beegfs-storage@.service                       disabled
[root@ss1 ~]#
 
[root@ss1 ~]# systemctl start beegfs-storage.service

ss2,ss3も同様に起動させる。

最後にclient。

[root@client ~]# systemctl list-unit-files|grep beegfs
beegfs-client.service                         enabled
beegfs-helperd.service                        enabled
beegfs-helperd@.service                       disabled
[root@client ~]#
 
[root@client ~]# systemctl start beegfs-client.service beegfs-helperd.service

最後のbeegfs-client.service、beegfs-helperd.serviceの起動にちょいと時間が掛かりますが、
上手く行きました。

バージョン確認

冒頭のようにバージョンを確認してみます。

[root@client  ~]# beegfs-ctl --listnodes --showversion --nodetype=storage
ss1.sybyl.local [ID: 1]
   Version code: 7.1.2
ss2.sybyl.local [ID: 2]
   Version code: 7.1.2
ss3.sybyl.local [ID: 3]
   Version code: 7.1.2
 
[root@client ~]#
[root@client ~]# beegfs-ctl --listnodes --showversion --nodetype=meta
mds.sybyl.local [ID: 4]
   Version code: 7.1.2
 
[root@cl ~]#
[root@client ~]# beegfs-check-servers
Management
==========
ms.sybyl.local [ID: 1]: reachable at 192.168.0.47:8008 (protocol: TCP)
 
Metadata
==========
mds.sybyl.local [ID: 4]: reachable at 192.168.0.48:8005 (protocol: TCP)
 
Storage
==========
ss1.sybyl.local [ID: 1]: reachable at 192.168.0.49:8003 (protocol: TCP)
ss2.sybyl.local [ID: 2]: reachable at 192.168.0.50:8003 (protocol: TCP)
ss3.sybyl.local [ID: 3]: reachable at 192.168.0.51:8003 (protocol: TCP)
 
[root@client ~]#

トップ   編集 添付 複製 名前変更     ヘルプ   最終更新のRSS
Last-modified: 2019-02-06 (水) 22:34:11 (164d)