- 追加された行はこの色です。
- 削除された行はこの色です。
*Swift/Rings [#l11fa9c0]
Ringは、Swiftで使用するデバイスのリストで、他のサーバのアドレスなどを参照するのに使用します。~
例えばプロクシサーバが、オブジェクトサーバのアドレスを調べるの使用します。
*swift-ring-builderの使い方 [#fd55f5e0]
Ringはファイルとして置かれ、swift-ring-builderコマンドを介して作成・変更が行なえます。
-Ringの作成
作成は以下のように実行します。~
# swift-ring-builder <builder_file> create <part_power> <replicas> <min_part_hours>
builder_fileは、これから作成するファイルの名前が入ります。~
part_powerはパーティションの数を決めるのに使用され、2の<part_power>乗の数のパーティション数になります。~
※パーティションについては調査中です。パーティションの数を超えるデバイスは追加できないようです。
replicasは、ここで指定した数だけデータが冗長化されます。~
例えば3が指定されていた場合は、オブジェクトを保存する際に、3つのデバイスに保存されるようになります。~
min_part_hoursは特定のパーティションを連続して移動させられる時間らしいです。(調査中)
-Ringへのデバイスの追加
作成したbuilder_fileにデバイスを追加します。~
# swift-ring-builder <builder_file> add z<zone>-<ip>:<port>/<device_name>_<meta> <weight>
-Ringの内容の表示
builder_fileだけを指定して実行すると、そのbuilder_fileの情報が表示されます。
# swift-ring-builder <builder_file>
test.ring, build version 3
2 partitions, 1 replicas, 3 zones, 3 devices, 100.00 balance
The minimum number of hours before a partition can be reassigned is 1
Devices: id zone ip address port name weight partitions balance meta
0 1 127.0.0.1 6010 sdb1 1.00 1 50.00
1 2 127.0.0.1 6020 sdb2 1.00 1 50.00
-ヘルプの表示
引数なしで実行すると、ヘルプが表示されます。
# swift-ring-builder
*リンク [#y1eb52ea]
-[[The Rings>http://swift.openstack.org/overview_ring.html]]
-[[Deployment Guide>http://swift.openstack.org/deployment_guide.html]]