GNU/Linux >> Linux の 問題 >  >> Debian

DebianWheezyでGlusterFS3.2.xを使用してNFSのようなスタンドアロンストレージサーバーを作成する

このチュートリアルでは、DebianWheezyでスタンドアロンストレージサーバーをセットアップする方法を示します。ここでは、NFSの代わりにGlusterFSを使用します。クライアントシステムは、ローカルファイルシステムであるかのようにストレージにアクセスできます。GlusterFSは、数ペタバイトに拡張できるクラスター化されたファイルシステムです。 InfinibandRDMAまたはTCP/IP相互接続を介してさまざまなストレージブリックを1つの大規模な並列ネットワークファイルシステムに集約します。ストレージブリックは、SATA-IIRAIDおよびInfinibandHBAを備えたx86_64サーバーなどの任意のコモディティハードウェアで作成できます。

これがあなたのために働くという保証はありません!

1予備メモ

このチュートリアルでは、サーバーとクライアントの2つのシステムを使用します。

  • server1.example.com:IPアドレス192.168.0.100(サーバー)
  • client1.example.com:IPアドレス192.168.0.101(クライアント)

両方のシステムが、もう一方のシステムのホスト名を解決できる必要があります。 DNSを介してこれを実行できない場合は、両方のシステムで次のようになるように/ etc/hostsファイルを編集する必要があります。

vi /etc/hosts
127.0.0.1       localhost.localdomain   localhost
192.168.0.100   server1.example.com     server1
192.168.0.101   client1.example.com     client1

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

(次の設定では、ホスト名の代わりにIPアドレスを使用することもできます。IPアドレスを使用する場合は、ホスト名を解決できるかどうかを気にする必要はありません。)

2GlusterFSサーバーのセットアップ

server1.example.com:

GlusterFSはDebianWheezyのパッケージとして利用できるため、次のようにインストールできます。

apt-get install glusterfs-server

コマンド

glusterfsd --version

インストールしたばかりのGlusterFSバージョン(この場合は3.2.7)が表示されます:

[メール保護]:〜#glusterfsd --version
glusterfs3.2.7ビルド日2012年11月12日19:30:08
リポジトリリビジョン:git://git.gluster.com/glusterfs.git
Copyright(c)2006-2011 Gluster Inc.
GlusterFSには一切の保証がありません。
GlusterFSのコピーは、 GNU General PublicLicense。
[メール保護]:〜#

ファイアウォールを使用する場合は、TCPポート111、24007、24008、24009-(24009 +すべてのボリュームにわたるブリックの数)がserver1.example.comで開いていることを確認してください。

次に、ローカルホスト(=server1)の/ dataディレクトリにtestvolという名前の共有を作成します(これは、存在しない場合に作成されます):

gluster volume create testvol server1.example.com:/data

[メールで保護]:〜#gluster volume create testvol server1.example.com:/data
ボリュームtestvolの作成に成功しました。ボリュームを起動してデータにアクセスしてください。
[メールで保護]:〜#

ボリュームを開始します:

gluster volume start testvol

上記のコマンドは、アクションが成功しなかったことを示している可能性があります:

[メール保護]:〜#gluster volume start testvol
ボリュームtestvolの開始に失敗しました
[メール保護]:〜#

コマンド

を使用して、ボリュームのステータスを確認できます。
gluster volume info
[email protected]:~# gluster volume info

ボリューム名:testvol
タイプ:配布
ステータス:開始済み
ブリックの数:1
トランスポートタイプ:tcp
ブリック:
ブリック1:server1。 example.com:/data
[メール保護]:〜#

ボリュームが開始されたことが示されている場合は、すべて問題ありません。それ以外の場合は、ボリュームを再開してください。

デフォルトでは、すべてのクライアントがボリュームに接続できます。 client1.example.com(=192.168.0.101)のみへのアクセスを許可する場合は、次を実行します。

gluster volume set testvol auth.allow 192.168.0.101

IPアドレスにワイルドカードを使用することが可能であり(192.168. *など)、コンマで区切って複数のIPアドレスを指定できることに注意してください(例:192.168.0.101,192.168.0.102)。

ボリューム情報に更新されたステータスが表示されます:

gluster volume info
[email protected]:~# gluster volume info

ボリューム名:testvol
タイプ:配布
ステータス:開始済み
ブリックの数:1
トランスポートタイプ:tcp
ブリック:
ブリック1:server1。 example.com:/ data
再構成されたオプション:
auth.allow:192.168.0.101
[メール保護]:〜#

3GlusterFSクライアントのセットアップ

client1.example.com:

クライアントでは、次のようにGlusterFSクライアントをインストールできます。

apt-get install glusterfs-client

次に、次のディレクトリを作成します。

mkdir /mnt/glusterfs

それでおしまい!これで、次のコマンドを使用してGlusterFSファイルシステムを/ mnt/glusterfsにマウントできます。

mount.glusterfs server1.example.com:/testvol /mnt/glusterfs

これで、出力に新しいシェアが表示されるはずです...

mount

[メール保護]:〜#mount
sysfs on / sys type sysfs(rw、nosuid、nodev、noexec、relatime)
proc on / proc type proc(rw、nosuid、nodev、noexec、relatime)
udev on / dev type devtmpfs(rw、relatime、size =10240k、nr_inodes =126813、mode =755)
devpts on / dev / pts type devpts(rw、nosuid、noexec、relatime、gid =5、mode =620、ptmxmode =000)
tmpfs on / run type tmpfs(rw、nosuid、noexec、relatime、size =102704k、mode =755)
/ dev / mapper / server1-root on / type ext4(rw、relatime、errors =remount-ro、user_xattr、barrier =1、data =ordered)
tmpfs on / run / lock type tmpfs(rw、nosuid、nodev、noexec、relatime、size =5120k )
tmpfs on / run / shm type tmpfs(rw、nosuid、nodev、noexec、relatime、size =205400k)
/ dev / sda1 on / boot type ext2(rw、relatime、errors =continue)
rpc_pipefs on / var / lib / nfs / rpc_pipefs type rpc_pipefs(rw、relatime)
server1.example.com:/testvol on / mnt / glusterfs type Fuse.glusterfs(rw、relatime、user_id =0 、group_id =0、default_permissions、allow_other、max_read =131072)
fusectl on / sys / fs / fu se / connectionsタイプfusectl(rw、relatime)
[メール保護]:〜#

...そして...

df -h

[電子メールが保護された]:〜#DF -h
ファイルシステムサイズ使用さAVAIL使用%は上のマウント
rootfsの29G 1.2G 26G 5%/
udevの10M 0 10M 0%の/ dev
TMPFS 101M 240K 101M 1%/ラン
の/ dev /マッパ/ SERVER1ルート29G 1.2G 26G 5%/
TMPFS 5.0M 0 5.0M 0%/実行/ロック
TMPFS 201M 0 201M 0%/ run / shm
/ dev / sda1 228M 18M 199M 9%/ boot
server1.example.com:/testvol 29G 1.2G 26G / ster /保護されています]:〜#

GlusterFS共有をクライアントに手動でマウントする代わりに、/ etc / fstabを変更して、クライアントの起動時に共有が自動的にマウントされるようにすることができます。

/ etc / fstabを開き、次の行を追加します。

vi /etc/fstab  
[...]
server1.example.com:/testvol /mnt/glusterfs glusterfs defaults,_netdev 0 0

変更した/etc/ fstabが機能しているかどうかをテストするには、クライアントを再起動します。

reboot

再起動後、出力に共有が表示されます...

df -h

...そして...

mount

  • GlusterFS:http://www.gluster.org/
  • GlusterFS 3.2ドキュメント:http://download.gluster.com/pub/gluster/glusterfs/3.2/Documentation/AG/html/index.html
  • Debian:http://www.debian.org/

Debian
  1. Ubuntu12.10でGlusterFS3.2.xを使用してNFSのようなスタンドアロンストレージサーバーを作成する

  2. DebianLenny上のGlusterFSを使用した4つのストレージノードにまたがる分散ストレージ

  3. DebianLenny上のGlusterFSを使用した4つのストレージノードに分散されたレプリケートされたストレージ

  1. DebianLenny上のGlusterFSを使用した4つのストレージノード間のストライピング

  2. DebianLennyでGlusterFSを使用してNFSのようなスタンドアロンストレージサーバーを作成する

  3. Debian 4.0(Etch)Tdbsamバックエンドを備えたSambaスタンドアロンサーバー

  1. tdbsamバックエンドを備えたDebianSqueezeSambaスタンドアロンサーバー

  2. DebianSqueezeでGlusterFS3.0.xを使用してNFSのようなスタンドアロンストレージサーバーを作成する

  3. Fedora12でGlusterFSを使用してNFSのようなスタンドアロンストレージサーバーを作成する