GlusterFS 11 : 分散 + レプリカ構成2023/03/31 |
GlusterFS によるストレージクラスターの設定です。
例として、6 ノードを使用した 分散 + レプリカ 構成のボリュームを作成します。
スプリットブレインの対策として Arbiter Volume も設定します。
6 ノードが 3 ノードずつの 2組に分かれ、1 組 3 ノード中の 2 ノードでレプリカ構成をとりつつ、
残りの 1 ノードが Arbiter ノードとして、ファイルネームとメタデータのみを保持します。
それら 2 組のレプリカ構成のクラスターノード間で、ファイル単位でデータが分散保管されます。 | +----------------------+ | +----------------------+ | [GlusterFS Server#1] |10.0.0.51 | 10.0.0.54| [GlusterFS Server#4] | | node01.srv.world +----------+----------+ node04.srv.world | | | | | | +----------------------+ | +----------------------+ | +----------------------+ | +----------------------+ | [GlusterFS Server#2] |10.0.0.52 | 10.0.0.55| [GlusterFS Server#5] | | node02.srv.world +----------+----------+ node05.srv.world | | | | | | +----------------------+ | +----------------------+ | +----------------------+ | +----------------------+ | [GlusterFS Server#3] |10.0.0.53 | 10.0.0.56| [GlusterFS Server#6] | | node03.srv.world +----------+----------+ node06.srv.world | | | | | +----------------------+ +----------------------+ ⇑ ⇑ file1, file3 ... file2, file4 ... |
前提として、クラスターを構成するノード群では GlusterFS に割り当てる領域は / パーティションとは別であることが推奨です。
( / 配下の任意のディレクトリでも設定は可能だが、非推奨のため、設定の際に強制オプションの付加が必要 ) |
|
[1] | |
[2] | 全ノードで、ボリュームに割り当てるディレクトリを作成しておきます。 ( 当例では、全ノードで [sdb1] を [/glusterfs] にマウント済み ) |
[root@node01 ~]# mkdir -p /glusterfs/dist-replica |
[3] | いずれかのノードで以下のように設定します。 |
# 他のノードを探す [root@node01 ~]# gluster peer probe node02 peer probe: success. [root@node01 ~]# gluster peer probe node03 peer probe: success. [root@node01 ~]# gluster peer probe node04 peer probe: success. [root@node01 ~]# gluster peer probe node05 peer probe: success. [root@node01 ~]# gluster peer probe node06 peer probe: success. # 状態を表示 [root@node01 ~]# gluster peer status Number of Peers: 5 Hostname: node02 Uuid: 8fb2b993-eb76-4873-92fd-667876a892f0 State: Peer in Cluster (Connected) Hostname: node03 Uuid: 3919bdb7-b499-435b-872f-b1540d8339c0 State: Peer in Cluster (Connected) Hostname: node04 Uuid: 2beb280b-6ee4-4a1e-b6f4-745f4675d4e4 State: Peer in Cluster (Connected) Hostname: node05 Uuid: 3d67a508-ff0a-4867-a34c-e491885ff6c7 State: Peer in Cluster (Connected) Hostname: node06 Uuid: eaf685f2-763d-4e19-b712-605ef213f9bb State: Peer in Cluster (Connected) # ボリュームを作成 [root@node01 ~]# gluster volume create vol_dist-replica replica 3 arbiter 1 transport tcp \ node01:/glusterfs/dist-replica \ node02:/glusterfs/dist-replica \ node03:/glusterfs/dist-replica \ node04:/glusterfs/dist-replica \ node05:/glusterfs/dist-replica \ node06:/glusterfs/dist-replica volume create: vol_dist-replica: success: please start the volume to access data # 作成したボリュームを起動 [root@node01 ~]# gluster volume start vol_dist-replica volume start: vol_dist-replica: success # ボリューム情報確認 [root@node01 ~]# gluster volume info Volume Name: vol_dist-replica Type: Distributed-Replicate Volume ID: 40ba3b53-9a33-400a-b1d1-4bd4cb6f5e8d Status: Started Snapshot Count: 0 Number of Bricks: 2 x (2 + 1) = 6 Transport-type: tcp Bricks: Brick1: node01:/glusterfs/dist-replica Brick2: node02:/glusterfs/dist-replica Brick3: node03:/glusterfs/dist-replica (arbiter) Brick4: node04:/glusterfs/dist-replica Brick5: node05:/glusterfs/dist-replica Brick6: node06:/glusterfs/dist-replica (arbiter) Options Reconfigured: cluster.granular-entry-heal: on storage.fips-mode-rchecksum: on transport.address-family: inet nfs.disable: on performance.client-io-threads: off |
[4] |
GlusterFS ボリュームをマウントして利用するための
クライアント側の設定はこちらを参照ください。
|
Sponsored Link |