既存のBeeGFSに新しいストレージノードを追加してみる
2019y02m07d_000800223.png

パッケージのインストール

新しいノードは ss4.sybyl.local とします。
まずはBeeGFSのリポジトリとキーを登録します

[root@ss4 ~]# curl -o /etc/yum.repos.d/beegfs-rhel7.repo https://www.beegfs.io/release/beegfs_7_1/dists/beegfs_rhel7.repo
 
[root@ss4 ~]# rpm --import https://www.beegfs.io/release/beegfs_7_1/gpg/RPM-GPG-KEY-beegfs

ストレージノードなのでインストールするパッケージは「beegfs-storage」です

[root@ss4 ~]# yum -y install beegfs-storage

これで下準備は完了。

ストレージターゲットの準備

仮想マシンで作ってます。
/dev/sdb(24GB)用意しています。これにパーティションを加えて/dev/sdb1を作りxfsに仕立てます。

[root@ss4 ~]# gdisk /dev/sdb
  :
  :
[root@ss4 ~]#
[root@ss4 ~]# mkfs.xfs -L beegfs /dev/sdb1
[root@ss4 ~]# mkdir /beegfs
[root@ss4 ~]# echo "LABEL=beegfs /beegfs xfs defaults 0 0" >> /etc/fstab
[root@ss4 ~]# mount -a

1. Management Serverにて新しいストレージノードを登録可能にする

Management Serverに入り、「/etc/beegfs/beegfs-mgmtd.conf」にて

sysAllowNewServers = true
sysAllowNewTargets = true

となっていることを確認します。

[root@ms ~]# vi /etc/beegfs/beegfs-mgmtd.conf
 :
 :
# --- Section 1.1: [Basic Settings] ---
#
 
storeMgmtdDirectory      = /beegfs/beegfs_mgmtd
storeAllowFirstRunInit   = false
 
sysAllowNewServers       = true
sysAllowNewTargets       = true
 :
 :
[root@ms ~]#

と既に有効であったので、このまま次へ進みます。
もし違っていたら、この「/etc/beegfs/beegfs-mgmtd.conf」を変更して、beegfs-mgmtdを再起動させます。

systemctl restart beegfs-mgmtd.service

2. 新しいストレージノードで登録作業

ストレージノードで、初めに構築したときと同じようにストレージを登録します。
ss1.sybyl.localでは

/opt/beegfs/sbin/beegfs-setup-storage -p /beegfs/storage -s 10 -i 101 -m ms

として登録を行った。

「-p」はストレージの場所。「-s」は識別番号で、「-i」はストレージのIDで、「-m」で管理ノードを指定する。
ここでは「-s」の識別番号は「40」として、「-i」のIDは、「501」とします。

[root@ss4 ~]# /opt/beegfs/sbin/beegfs-setup-storage -p /beegfs -s 40 -i 401 -m ms
 
Preparing storage target directory: /beegfs
 * Creating format.conf file...
 * Creating chunks directory...
 * Creating buddymir directory...
 * Creating target numeric ID file: /beegfs/targetNumID
 * Creating server numeric ID file: /beegfs/nodeNumID
Updating config file: /etc/beegfs/beegfs-storage.conf
 * Setting management host: ms
 * Appending to target directory list in config file...
 * Disabling usage of uninitialized storage targets in config file...
All done.
[root@ss4 ~]#

備考
各ノードでの識別番号とストレージのIDは、clientで下記コマンドで得られる。

[root@client ~]# beegfs-ctl --listtargets --longnodes
TargetID   NodeID
========   ======
     101   beegfs-storage ss1.sybyl.local [ID: 1]
     201   beegfs-storage ss2.sybyl.local [ID: 2]
     301   beegfs-storage ss3.sybyl.local [ID: 3]
[root@client ~]#

3. ストレージのデーモンを起動します

ss4にて新規ストレージを定義したら、ストレージデーモンをupします。

[root@ss4 ~]# systemctl start beegfs-storage

4. 各種ログを確認

問題がないかログを確認します

あと、「beegfs-check-servers」コマンドで様子も確認します

[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: 9]: reachable at 192.168.0.48:8005 (protocol: TCP)
 
Storage
==========
ss1.sybyl.local [ID: 10]: reachable at 192.168.0.49:8003 (protocol: TCP)
ss2.sybyl.local [ID: 20]: reachable at 192.168.0.50:8003 (protocol: TCP)
ss3.sybyl.local [ID: 30]: reachable at 192.168.0.51:8003 (protocol: TCP)
ss4.sybyl.local [ID: 40]: reachable at 192.168.0.83:8003 (protocol: TCP)
 
[root@client ~]#

client側からはbeegfsの容量が増えます
*clientのbeegfs-helperdとbeegfs-clientを再起動したら反映された

[root@client ~]# df -Th -t beegfs
ファイルシス   タイプ サイズ  使用  残り 使用% マウント位置
beegfs_nodev   beegfs   120G   11G  110G    9% /mnt/beegfs
 ↑
beegfs_nodev   beegfs    96G   11G   86G   12% /mnt/beegfs
[root@client ~]#

容量は、32+32+32+24 = 120 となっている

各ストレージの消費量

[root@client ~]# beegfs-ctl --listtargets --longnodes --state --spaceinfo
TargetID     Reachability  Consistency        Total         Free    %      ITotal       IFree    %   NodeID
========     ============  ===========        =====         ====    =      ======       =====    =   ======
     101           Online         Good      32.0GiB      28.4GiB  89%       16.0M       16.0M 100%   beegfs-storage ss1.sybyl.local [ID: 10]
     201           Online         Good      32.0GiB      28.4GiB  89%       16.0M       16.0M 100%   beegfs-storage ss2.sybyl.local [ID: 20]
     301           Online         Good      32.0GiB      28.4GiB  89%       16.0M       16.0M 100%   beegfs-storage ss3.sybyl.local [ID: 30]
     401           Online         Good      24.0GiB      24.0GiB 100%       12.0M       12.0M 100%   beegfs-storage ss4.sybyl.local [ID: 40]
[root@client ~]#

当然ながら新規追加の401は未使用状態

5. 自動登録の抑止

Management Serverの「/etc/beegfs/beegfs-mgmtd.conf」にて

sysAllowNewServers = true
sysAllowNewTargets = true

としたが、これを無効にします。

sysAllowNewServers = false
sysAllowNewTargets = false

その後に、beegfs-mgmtd.serviceを再起動させる

systemctl restart beegfs-mgmtd.service

接続済みのストレージノードにターゲットを追加する

*管理ノードの「/etc/beegfs/beegfs-mgmtd.conf」にて「sysAllowNewTargets = true」が有効であることが必要

ss4に追加ストレージ(402)を設置してみる。

[root@ss4 ~]# gdisk /dev/sdc
  :
  :
[root@ss4 ~]#
[root@ss4 ~]# mkfs.xfs -L beegfs402 /dev/sdc1
[root@ss4 ~]# mkdir /beegfs402
[root@ss4 ~]# echo "LABEL=beegfs402 /beegfs402 xfs defaults 0 0" >> /etc/fstab
[root@ss4 ~]# mount -a
 
[root@ss4 ~]# /opt/beegfs/sbin/beegfs-setup-storage -p /beegfs402 -s 40 -i 402
Preparing storage target directory: /beegfs402
 * Creating format.conf file...
 * Creating chunks directory...
 * Creating buddymir directory...
 * Creating target numeric ID file: /beegfs402/targetNumID
 * Creating server numeric ID file: /beegfs402/nodeNumID
Updating config file: /etc/beegfs/beegfs-storage.conf
 * Appending to target directory list in config file...
 * Disabling usage of uninitialized storage targets in config file...
All done.
[root@ss4 ~]# systemctl restart beegfs-storage

*追加の際は「-m ms」と管理ノードの指定は不要みたい

クライアントから

[root@client ~]# df -Th -t beegfs
ファイルシス   タイプ サイズ  使用  残り 使用% マウント位置
beegfs_nodev   beegfs   136G   11G  126G    8% /mnt/beegfs
[root@client ~]# beegfs-ctl --listtargets --longnodes --state --spaceinfo
TargetID     Reachability  Consistency        Total         Free    %      ITotal       IFree    %   NodeID
========     ============  ===========        =====         ====    =      ======       =====    =   ======
     101           Online         Good      32.0GiB      28.4GiB  89%       16.0M       16.0M 100%   beegfs-storage ss1.sybyl.local [ID: 10]
     201           Online         Good      32.0GiB      28.4GiB  89%       16.0M       16.0M 100%   beegfs-storage ss2.sybyl.local [ID: 20]
     301           Online         Good      32.0GiB      28.4GiB  89%       16.0M       16.0M 100%   beegfs-storage ss3.sybyl.local [ID: 30]
     401           Online         Good      24.0GiB      24.0GiB 100%       12.0M       12.0M 100%   beegfs-storage ss4.sybyl.local [ID: 40]
     402           Online         Good      16.0GiB      16.0GiB 100%        8.0M        8.0M 100%   beegfs-storage ss4.sybyl.local [ID: 40]
[root@client ~]#

トップ   編集 添付 複製 名前変更     ヘルプ   最終更新のRSS
Last-modified: 2019-02-09 (土) 04:07:30 (11d)