|
|
| (同じ利用者による、間の19版が非表示) |
| 行1: |
行1: |
| − | ==KyotoCabinetが必要なのでインストール==
| + | [[Linux/KyotoTycoonインストール/rocky10]] |
| − | yum install gcc-c++
| + | |
| − | yum install zlib-devel
| + | |
| − | yum install lzo-devel.x86_64 lzma-devel.x86_64 xz-devel.x86_64
| + | |
| − | cd /usr/local/src
| + | |
| − | wget http://fallabs.com/kyotocabinet/pkg/kyotocabinet-1.2.76.tar.gz
| + | |
| − | tar zxfv kyotocabinet-1.2.76.tar.gz
| + | |
| − | cd kyotocabinet-1.2.76
| + | |
| − | ./configure
| + | |
| − | make
| + | |
| − | make install
| + | |
| | | | |
| − | ==KyotoTycoonインストール(64bit==
| + | [[Linux/KyotoTycoonインストール/centos7]] |
| − | yum install lua-devel.x86_64
| + | |
| − | cd /usr/local/src
| + | |
| − | wget http://fallabs.com/kyototycoon/pkg/kyototycoon-0.9.56.tar.gz
| + | |
| − | tar zxfv kyototycoon-0.9.56.tar.gz
| + | |
| − | cd kyototycoon-0.9.56
| + | |
| − | ./configure
| + | |
| − | make
| + | |
| − | make install
| + | |
| − | | + | |
| − | ==起動・停止スクリプトを/usr/local/sbinと/etc/init.dにコピー==
| + | |
| − | cp /usr/local/src/kyototycoon-0.9.56/lab/ktservctl /usr/local/sbin/
| + | |
| − | cp /usr/local/src/kyototycoon-0.9.56/lab/ktservctl /etc/rc.d/init.d/ktserver
| + | |
| − | | + | |
| − | ==KyotoTycoon起動==
| + | |
| − | /etc/rc.d/init.d/ktserver start
| + | |
| − | >Executing: ktserver -port 1978 -tout 30 -th 8 -dmn -pid /var/ktserver/pid -log /var/ktserver/log -ls /var/ktserver/casket.kch#bnum=2000000#msiz=128m#dfunit=8
| + | |
| − | Done
| + | |
| − | | + | |
| − | ===起動エラー修正===
| + | |
| − | /etc/rc.d/init.d/ktserver: line 68: ktserver: command not found
| + | |
| − | $ vi /etc/rc.d/init.d/ktserver
| + | |
| − | - cmd="ktserver"
| + | |
| − | + cmd="/usr/local/bin/ktserver"
| + | |
| − | | + | |
| − | もしくはシンボリックを追加
| + | |
| − | ln -s /usr/local/bin/ktremotemgr /usr/bin/ktremotemgr
| + | |
| − | | + | |
| − | ==KyotoTycoon停止==
| + | |
| − | /etc/rc.d/init.d/ktserver stop
| + | |
| − | | + | |
| − | ==KyotoTycoon自動起動設定==
| + | |
| − | 以下コードを/etc/rc.d/init.d/ktserverの4行目に追加する
| + | |
| − | 4 # Startup script for the server of Kyoto Tycoon
| + | |
| − | 5 + # chkconfig: - 80 20
| + | |
| − | 6 + # description: Kyoto Tycoon - KVS Database
| + | |
| − | | + | |
| − | /sbin/chkconfig --add ktserver
| + | |
| − | /sbin/chkconfig ktserver on
| + | |
| − | /sbin/chkconfig --list | grep ktserver
| + | |
| − | > ktserver 0:off 1:off 2:on 3:on 4:on 5:on 6:off
| + | |
| − | | + | |
| − | ==起動確認==
| + | |
| − | /usr/local/bin/ktremotemgr set k1 v1
| + | |
| − | /usr/local/bin/ktremotemgr get k1
| + | |
| − | >v1
| + | |
| − | | + | |
| − | ==起動確認エラー(part1==
| + | |
| − | ktserver: error while loading shared libraries: libkyototycoon.so.2: cannot open shared object file: No such file or directory
| + | |
| − | # vi /etc/ld.so.conf.d/kyoto.conf
| + | |
| − | /usr/local/lib #追加
| + | |
| − | # ldconfig #conf反映
| + | |
| − | | + | |
| − | | + | |
| − | ==起動確認エラー(part2==
| + | |
| − | /usr/local/bin/ktremotemgr: DB::open failed: : 6: network error: connection failed
| + | |
| − | | + | |
| − | KyotoCabinet-1.2.75から1.2.76、
| + | |
| − | kyototycoon-0.9.55から0.9.56に変更(2014/7時点で最新に)したらなおった。
| + | |
| − | | + | |
| − | 適切にktserverがstartしているか確認
| + | |
| − | | + | |
| − | memcache互換で使用している場合は、plex port=が設定されているか。
| + | |
| − | | + | |
| − | ==デフォルトポート==
| + | |
| − | 1978
| + | |
| − | TokyoTyrantと同じなので注意
| + | |
| − | | + | |
| − | ==手動で起動(一時確認に使用)==
| + | |
| − | /usr/local/bin/ktserver \
| + | |
| − | -port 1978 \
| + | |
| − | -tout 10 \
| + | |
| − | -th 16 \
| + | |
| − | -log /var/ktserver/log -ls \
| + | |
| − | -ulog /var/ktserver/ulog -ulim 256m \
| + | |
| − | -sid 1 \
| + | |
| − | -bgs /var/ktserver/snapshot -bgsi 180 -bgsc lzo \
| + | |
| − | -pid /var/ktserver/kt.pid \
| + | |
| − | -plsv /usr/local/kyototycoon/libexec/ktplugservmemc.so \
| + | |
| − | -plex "port=11401#opts=f#tout=10" \
| + | |
| − | "/var/ktserver/db_casket.kch#opts=l#bnum=20000000#msiz=12g#dfunit=8"
| + | |
| − | | + | |
| − | memcachedプロトコルを使う場合のポートは11401とした
| + | |
| − | | + | |
| − | ==起動オプション==
| + | |
| − | th=8 処理スレッド数
| + | |
| − | bnum=2000000 バケット数は100万レコードの2倍値
| + | |
| − | opts=ls データベースオプションは、4バイトアドレッシング、線形リスト
| + | |
| − | ktopts=p データは永続化
| + | |
| − | msiz=12g DBファイルの先頭2GB分をmmapでマップしてIOを効率化することを意味する(搭載メモリが16Gぐらいだと12Gで設定
| + | |
| − | dfunit 8個のフラグメンテーションを検出した際に解消
| + | |
| − | kcapsiz=10g 最大メモリ使用量。
| + | |
| − | | + | |
| − | 参考:http://blog.kazupon.jp/post/20476065695/kt-msgpack-fork
| + | |
| − | | + | |
| − | 参考:http://seesaawiki.jp/w/kurt0027/d/kyototycoon
| + | |
| − | | + | |
| − | ==オプション設定例==
| + | |
| − | 普通のキャッシュサーバ
| + | |
| − | #bnum=20000000#ktcapsiz=10g
| + | |
| − | 永続的キャッシュサーバ
| + | |
| − | ktserver ... casket.kch#opts=l#bnum=2000000#msiz=1g#dfunit=8
| + | |
| − | | + | |
| − | 参考:http://www.slideshare.net/estraier/kyoto-tycoon-guide-in-japanese
| + | |
| − | | + | |
| − | 参考:http://fallabs.com/blog-ja/promenade.cgi?id=98
| + | |
| − | | + | |
| − | ==メモリ最適化==
| + | |
| − | $ vi /etc/rc.d/init.d/ktserver
| + | |
| − | | + | |
| − | 26 dbname="$basedir/casket.kch#bnum=2000000#msiz=12g#dfunit=8"
| + | |
| − | | + | |
| − | サーバが16GB搭載してれば12GBぐらいとする(msiz=12g
| + | |
| − | | + | |
| − | サーバが6GB搭載してれば4GBぐらいとする(msiz=4g
| + | |
| − | | + | |
| − | ==ログの場所==
| + | |
| − | tail -f /var/ktserver/log
| + | |
| − | | + | |
| − | ==ファイルハッシュデータベースの場所==
| + | |
| − | /var/ktserver/casket.kch
| + | |
| − | | + | |
| − | ==起動バッチにmemcache互換を入れる==
| + | |
| − | デフォルトでは互換ではない
| + | |
| − | | + | |
| − | $ vi /etc/rc.d/init.d/ktserverに以下を入れる
| + | |
| − | | + | |
| − | 67 fi
| + | |
| − | 68 + cmd="$cmd -plsv /usr/local/src/kyototycoon-0.9.56/ktplugservmemc.so"
| + | |
| − | 69 + cmd="$cmd -plex port=11401#opts=f#tout=10"
| + | |
| − | 70 cmd="$cmd $dbname"
| + | |
| − | | + | |
| − | /usr/local/src/kyototycoon-0.9.56/ktplugservmemc.soは適宜locateで確認して存在するktplugservmemc.soを入れる
| + | |
| − | | + | |
| − | ==php連携==
| + | |
| − | memcacheプロトコルがまんま使えるのでmemcache接続コードのportを変更するだけ
| + | |
| − | | + | |
| − | | + | |
| − | ==参考==
| + | |
| − | http://cloud-berry.jp/wordpress/?p=161
| + | |