ストレージ · 1 min read · Jan 19, 2026

Ubuntu 18.04 LTSでのGlusterFSによる高可用性ストレージ

Glusterfsは、数ペタバイトにスケールし、数千のクライアントを処理できるスケーラブルなネットワークファイルシステムです。これはオープンソースで分散型のファイルシステムであり、複数のサーバーからのディスクストレージリソースを単一の名前空間に設定します。クラウドストレージやデータメディアストリーミングなどのデータ集約型タスクに適しています。

このチュートリアルでは、Ubuntu 18.04 LTS(Bionic Beaver)上でGlusterFSを使用して高可用性ストレージサーバーを設定する方法を示します。3台のUbuntuサーバーを使用し、1台をクライアント、他の2台をストレージとして使用します。各ストレージサーバーは他のサーバーのミラーとなり、ファイルは両方のストレージサーバーに複製されます。

前提条件

  • 3台のUbuntu 18.04サーバー - 10.0.15.10 - gfs01
  • 10.0.15.11 - gfs02
  • 10.0.15.12 - client01
  • ルート権限

何をするか?

  1. GlusterFSの事前インストール
  2. GlusterFSサーバーのインストール
  3. GlusterFSサーバーの設定
  4. GlusterFSクライアントの設定
  5. 複製/ミラーリングのテスト

ステップ1 - GlusterFSの事前インストール

すべてのサーバーにglusterfsをインストールする前に行う必要がある最初のステップは、ホストファイルを構成し、各サーバーにGlusterFSリポジトリを追加することです。

ホストファイルの構成

各サーバーにログインし、’sudo su’コマンドでルートアクセスを取得し、’/etc/hosts’ファイルを編集します。

vim /etc/hosts

以下のホスト構成を貼り付けます。

10.0.15.10 gfs01
10.0.15.11 gfs02
10.0.15.12 client01

保存して終了します。

次に、以下のようにホスト名を使用して各サーバーにpingを送信します。

ping -c 3 gfs01  
ping -c 3 gfs02  
ping -c 3 client01

各ホスト名は各サーバーのIPアドレスに解決されます。

ホストファイルの構成

GlusterFSリポジトリの追加

ソフトウェアプロパティコモンパッケージをシステムにインストールします。

sudo apt install software-properties-common -y

以下のコマンドを実行して、glusterfsキーとリポジトリを追加します。

wget -O- https://download.gluster.org/pub/gluster/glusterfs/3.12/rsa.pub | apt-key add -  
sudo add-apt-repository ppa:gluster/glusterfs-3.12

このコマンドはすべてのリポジトリを更新します。そして、すでにすべてのシステムにglusterfsリポジトリを追加しました。

GlusterFSリポジトリの追加

ステップ2 - GlusterFSサーバーのインストール

このステップでは、’gfs01’および’gfs02’サーバーにglusterfsサーバーをインストールします。

aptコマンドを使用してglusterfs-serverをインストールします。

sudo apt install glusterfs-server -y

次に、glusterdサービスを開始し、システム起動時に毎回起動するように有効にします。

sudo systemctl start glusterd  
sudo systemctl enable glusterd

Glusterfsサーバーは現在’gfs01’および’gfs02’サーバーで稼働しています。

サービスとインストールされたソフトウェアのバージョンを確認します。

systemctl status glusterd  
glusterfsd --version

GlusterFSサーバーのインストール

ステップ3 - GlusterFSサーバーの設定

Glusterdサービスは現在稼働中で、次のステップは信頼されたストレージプールを作成し、分散glusterfsボリュームを作成することです。

信頼されたストレージプールの作成

‘gfs01’サーバーから、’gfs02’サーバーをglusterfsストレージプールに追加する必要があります。

以下のコマンドを実行します。

gluster peer probe gfs02

これで、’peer probe: success’という結果が表示され、’gfs02’サーバーがストレージの信頼されたプールに追加されました。

以下のコマンドを使用してストレージプールの状態とリストを確認します。

gluster peer status  
gluster pool list

そして、’gfs02’サーバーがピアクラスターに接続されており、プールリストにあることがわかります。

信頼されたストレージプールの作成

分散GlusterFSボリュームの設定

信頼されたストレージプールを作成した後、新しい分散glusterfsボリュームを作成します。システムディレクトリに基づいて新しいglusterfsボリュームを作成します。

注意:

  • サーバーの本番環境では、システムディレクトリを使用せずに異なるパーティションを使用してglusterfsボリュームを作成することをお勧めします。

‘gfs01’および’gfs02’サーバーの両方に’/glusterfs/distributed’という新しいディレクトリを作成します。

mkdir -p /glusterfs/distributed

そして、’gfs01’サーバーから、2つのレプリカ’gfs01’と’gfs02’を持つ’vol01’という名前の分散glusterfsボリュームを作成します。

gluster volume create vol01 replica 2 transport tcp \  
gfs01:/glusterfs/distributed \  
gfs02:/glusterfs/distributed \  
force

これで、分散ボリューム’vol01’が作成されました - ‘vol01’を開始し、ボリューム情報を確認します。

gluster volume start vol01  
gluster volume info vol01

以下がその結果です。

分散GlusterFSボリュームの設定

この段階で、’gfs01’および’gfs02’サーバーに2つのブリックを持つ’Replicate’タイプの’vol01’ボリュームを作成しました。すべてのデータは自動的に各レプリカサーバーに分配され、ボリュームをマウントする準備が整いました。

‘gfs02’サーバーからの’vol01’ボリューム情報は以下の通りです。

ボリューム情報

ステップ4 - GlusterFSクライアントの設定

このステップでは、glusterfsボリューム’vol01’をUbuntuクライアントにマウントし、クライアントサーバーにglusterfs-clientをインストールする必要があります。

aptコマンドを使用してUbuntuシステムにglusterfs-clientをインストールします。

sudo apt install glusterfs-client -y

glusterfs-clientのインストールが完了したら、新しいディレクトリ’/mnt/glusterfs’を作成します。

mkdir -p /mnt/glusterfs

そして、分散glusterfsボリューム’vol01’を’/mnt/glusterfs’ディレクトリにマウントします。

sudo mount -t glusterfs gfs01:/vol01 /mnt/glusterfs

システム上の利用可能なボリュームを確認します。

df -h /mnt/glusterfs

これで、’/mnt/glusterfs’ディレクトリにglusterfsボリュームがマウントされます。

GlusterFSクライアントの設定

追加:

Ubuntuクライアントシステムにglusterfsを永続的にマウントするには、ボリュームを’/etc/fstab’に追加できます。

‘/etc/fstab’設定ファイルを編集します。

vim /etc/fstab

以下の構成を貼り付けます。

gfs01:/vol01 /mnt/glusterfs glusterfs defaults,_netdev 0 0

保存して終了します。

サーバーを再起動すると、オンラインになったときに、fstabを通じてglusterfsボリューム’vol01’が自動的にマウントされます。

ステップ5 - 複製/ミラーリングのテスト

このステップでは、各サーバーノードでデータミラーリングをテストします。

glusterfsボリューム’vol01’を各glusterfsサーバーにマウントします。

‘gfs01’サーバーで。

mount -t glusterfs gfs01:/vol01 /mnt

‘gfs02’サーバーで。

mount -t glusterfs gfs02:/vol01 /mnt

次に、Ubuntuクライアントに戻り、’/mnt/glusterfs’ディレクトリに移動します。

cd /mnt/glusterfs

touchコマンドを使用していくつかのファイルを作成します。

touch file01 file02 file03

テスト複製

次に、各’gfs01’および’gfs02’サーバーで確認すると、クライアントマシンから作成したすべてのファイルが表示されます。

cd /mnt/  
ls -lah

以下は’gfs01’サーバーからの結果です。

サーバー1からの結果

そして、以下は’gfs02’サーバーからの結果です。

サーバー2からの結果

クライアントマシンから作成したすべてのファイルは、すべてのglusterfsボリュームノードサーバーに分配されます。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。