kumofsあれこれ

必要なものインストール

公式ドキュメントから必要なものをインストール
まずは言語系

  • g++ >= 4.1
% aptitude install g++
    以下の新規パッケージがインストールされます:
    g++ g++-4.3{a} libstdc++6-4.3-dev{a} 
% aptitude install ruby
    以下の新規パッケージがインストールされます:
    libruby1.8{a} ruby ruby1.8{a} 
  • libcrypto (openssl)

※libcryto++-devはlibcryptoを含むパッケージ

% aptitude install libcrypto++-dev 
    以下の新規パッケージがインストールされます:
    libcrypto++-dev libcrypto++7{a} 
  • zlib

※zlib は Zip や gzip に使われている圧縮アルゴリズムをライブラリ化したもの

% aptitude install zlib1g-dev
    以下の新規パッケージがインストールされます:
    zlib1g-dev 
  • build-essential
% aptitude install build-essential
    以下の新規パッケージがインストールされます:
    build-essential bzip2{a} dpkg-dev{a} libtimedate-perl{a} 

tokyocabinetインストール

  • libbz2-devインストール

※bzlib(bzip2のライブラリ)を含むパッケージ。tokyocabinetに必要

aptitude install libbz2-dev
% wget "http://1978th.net/tokyocabinet/tokyocabinet-1.4.45.tar.gz"
% tar zxvf tokyocabinet-1.4.45.tar.gz
% cd tokyocabinet-1.4.45
% ./configure
% make
% vim /etc/ld.so.conf.d/local.conf
  →追記:/usr/local/lib
% sudo ldconfig

MessagePack for C++

% wget "http://sourceforge.net/projects/msgpack/files/msgpack/cpp/msgpack-0.5.0.tar.gz/download?use_mirror=jaist"
% tar zxvf msgpack-0.5.0.tar.gz
% cd msgpack-0.5.0
% ./configure
% make
% make install

MessagePack for Ruby

※gemコマンドを使ってMessagePackをインストールする為に必要

% aptitude install rubygems
    以下の新規パッケージがインストールされます:
    irb1.8{a} libreadline-ruby1.8{a} rdoc1.8{a} rubygems rubygems1.8{a}
  • ruby1.8-dev,ruby-dev

rubyのmessagePackに必要な拡張ライブラリ

aptitude install ruby1.8-dev
aptitude install ruby-dev
  • MessagePack
gem install msgpack

kumofsインストール

  • libssl-dev

※opensslのヘッダー。kumofsには必要

aptitude install libssl-dev
  • kumofs
% wget "http://github.com/downloads/etolabo/kumofs/kumofs-0.4.7.tar.gz"
% tar zxvf kumofs-0.4.7.tar.gz
% cd kumofs-0.4.7
% ./configure
% make
% make install
% /sbin/ldconfig

すべてのプロセスをlocalhostで動かす

詳しいコマンドにつていは日本語ドキュメント参照

  • kumofs-manager
kumo-manager -v -l localhost -d /tmp/kumofsmanager.pid -o /tmp/kumofsmanager.log
※manaegerはdefaultで19700 portを利用する
  • kumofs-server
kumo-server  -v -m localhost -l localhost:19801 -L 19901 -s /tmp/kumofs.tch -d /tmp/kumofsserver.pid -o /tmp/kumofsserver.log
※serverはdefaultで19800、19900 portを利用する
  • 現在の稼働状況を確認

※下記は127.0.0.1:19801はkumofs-serverとmanagerから認識されているが追加されていないことを意味する

% kumoctl localhost status  # 第一引数:kumo-managerのホスト名
  hash space timestamp:
    Thu Jan 01 09:00:00 +0900 1970 clock 0
  attached node:
  not attached node:
    127.0.0.1:19801
  • kumofs-serverを追加する
    • 追加コマンド
% kumoctl localhost attach
    • 確認
% kumoctl localhost status
  hash space timestamp:
    Fri Jun 04 19:21:58 +0900 2010 clock 910
  attached node:
    127.0.0.1:19801  (active)
  not attached node:
kumo-gateway -v -m localhost  -t 11211 -d /tmp/kumofsgateway.pid -o /tmp/kumofsgateway.log