1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Planning for a Riak System

Posted at

下記 URL の大雑把な意訳メモ
http://docs.basho.com/riak/latest/tutorials/System-Planning/

Backend

Riak で利用できるバックエンドストレージはそれぞれ長所と短所があります
どのバックエンドストレージが最適かは Choosing a Backend を参照してください

Capacity

Cuslter の Capacity を求めるには Cluster Capacity Planning を参照してください
Bitcask の Capacity を求めるには Bitcask Capacity Calculator を参照してください

Operating Systems

主流の Unix-like な OS を推奨します
Basho では、下記のディストリビューション用の Riak バイナリパッケージを提供します

  • RedHat based: RHEL, CentOS, Fedora
  • Debiab based: Debian, Ubuntu
  • Solaris based: Sun Solaris, OpenSolaris

Software

Basho's Riak Packages を使用すれば、追加で必要となるソフトウェアはほとんどありません
もし Riak をソースからビルドする場合は、Erlang をインストールする必要があります
Erlang をインストールするには Installing Erlang を参照してください

Hardware

Riak はスケールアウトするように設計されています
より高いスペックのハードウェアを利用し、ノードを追加することでパフォーマンスが改善されます
推奨するハードウェア構成を下記に記載します

  • Multi-core 64-bit CPU
  • Minimum 4 GB RAM
  • Multiple Fast Hard Disks (RAID and/or SSD)
  • Fast Network (Gigabit +)

Riak は Erlang で実装されているため、マルチコアを利用した並列化によってパフォーマンスが改善します
Riak は 64-bit アーキテクチャ環境において、より効率的に処理されます

不十分な RAM はスワップを増加させ、パフォーマンスを劣化させます
メモリーとディスクの使い方に関する詳細な情報は Cluster Capacity Planning を参照してください

Riak の多くのオペレーションは I/O がボトルネックになるため、高速なディスクが重要となります
ディスクの構成を RAID0 にすることよって read/write のパフォーマンスを改善するでしょう

Riak はオペレーションやアルゴリズム (ring-state goosip, handoff ..etc) で大量のトラフィックが発生します
各ノード同士の接続と、Cluster とクライアントの接続の高速化によってパフォーマンスが改善します

Virtualization

ほとんどのデータストアのように、Riak も仮想サーバ上で動作させると遅くなります
仮想サーバは、環境によって I/O やネットワークの影響を強く受け、パフォーマンス劣化を引き起こします
クラウドや VPS 上で Riak を動作させる推奨環境を下記に記載します

  • 最も大きい VM を選ぶ
  • 同じ DC または同じリビジョンを選ぶ

よりよりハードウェアはよりよりパフォーマンスを発揮します
最も大きい VM であれば、他の VM とリソースを共有する可能性が低くなります

いくつかのホスティング業者は、VM の拠点を選択できます
同じ DC または同じリビジョンにすることで、ネットワーク遅延を減らし、パフォーマンスを高めます

Network Configuration / Load Balancing

Riak Cluster への負荷を分散するための、主要な方法を下記に記載します

  • virtual IPs
  • reverse-proxy

VIP (実装はどれでも良い) を使用することを推奨します
Riak Cluster の全てのノードがクライアントからのリクエストを処理できるメリットを失うため、VIP のように振る舞う VRRP の使用は推奨しません

下記に挙げるような HTTP インターフェースを持った reverse-proxy は問題なく使用できます

  • haproxy
  • squid
  • vernish
  • nginx
  • lighttp
  • Apache
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?