Tokyo Tyrantのインストールと構成
Tokyo Tyrantのインストールと構成
Tokyo Cabinetは日本人が開発したDBMデータベースで、読み書きが非常に速い.Tokyo Tyrantも同じ著者が開発したTokyo Cabinetネットワークインタフェースでmemcachedプロトコルと互換性があり、httpプロトコルによるデータ交換も可能である.
Tokyo TyrantにTokyo Cabinetを加えて、高同時性をサポートする分散型永続ストレージシステムを構成し、任意のmemcachedクライアントにとって、Tokyo Tyrantをmemcachedサービスと見なすことができるが、ttsereverデータは永続的に格納される.同時にttserverは互いにプライマリ・セカンダリ・モードをサポートし、フェイルオーバを実現します.
インストール
1.zlibをインストールhとbzlib.h依存
インストールしないと、次のエラーが発生する可能性があります.
2.Tokyo Cabinetのインストール
注意:32ビットオペレーティングシステムでは、Tokyo Tyrantバックエンドとして格納されているTokyo Cabinetデータベースの単一ファイルは2 Gを超えてはいけませんが、64ビットオペレーティングシステムはこの制限を受けません.
したがって、Tokyo Tyrantを使用する場合は、64ビットCPU、オペレーティングシステムへのインストール運転を推奨します.
Tokyo cabinetをコンパイルするときは、次のコンパイルオプションを使用して2 G制限を突破できます.--enable-off 64
3.Tokyo Tyrantのインストール
--with-tcを指定しないと、次のエラーが発生する可能性があります.
4.パラメータの表示
ttserverパラメータコメント:
コンフィギュレーション
1.データファイル格納ディレクトリの作成
2.ファイル記述子サイズの設定
* soft nofile 204800
* hard nofile 204800
または
または/etc/profileに書き込むと、ユーザーがログインするたびにこのファイルが実行されます.
3.グローバルパラメータの構成
に加わる
export PATH="$PATH:/usr/local/ttserver/tokyotyrant/bin:/usr/local/ttserver/tokyotyrant/sbin"
4.ttserverの起動
データベースタイプは接尾辞で決まります.key-valueの機能しか必要ないので、機能が簡単で、速度の速いhash databaseを採用します.
Hash Database :.tch
B+ tree database :.tcb
fixed-length database :.tcf
table database :.tct
メモリHashデータベース:*
メモリB+tree database:+
1)スタンドアロンモード
2)相互主従
192.168.11.51で実行します.
192.168.11.52で実行します.
3)スクリプトまたはサービス方式
スクリプトまたはサービス方式が起動し、シングルマシンに構成したり、プライマリ・セカンダリに構成したりできます.
起動スクリプトの編集:/usr/local/ttserver/tokyotyrant/sbin/ttservctl、関連パラメータの設定:
(スタンドアロンモード構成を例に)
ttserverサーバの起動:ttservctl start
ttserverサーバを閉じる:ttservctl stop
ttserverサーバの再起動:ttservctl restart
ttserverサーバログローテーション:ttservctl hup
または/etc/initにスクリプトを配置します.d/ディレクトリ、サービスとして起動します.
5.検証起動成功
Tokyo Cabinetは日本人が開発したDBMデータベースで、読み書きが非常に速い.Tokyo Tyrantも同じ著者が開発したTokyo Cabinetネットワークインタフェースでmemcachedプロトコルと互換性があり、httpプロトコルによるデータ交換も可能である.
Tokyo TyrantにTokyo Cabinetを加えて、高同時性をサポートする分散型永続ストレージシステムを構成し、任意のmemcachedクライアントにとって、Tokyo Tyrantをmemcachedサービスと見なすことができるが、ttsereverデータは永続的に格納される.同時にttserverは互いにプライマリ・セカンダリ・モードをサポートし、フェイルオーバを実現します.
インストール
1.zlibをインストールhとbzlib.h依存
yum install -y zlib-devel bzip2-devel
インストールしないと、次のエラーが発生する可能性があります.
configure: error: bzlib.h is required
2.Tokyo Cabinetのインストール
cd /tmp
wget http://fallabs.com/tokyocabinet/tokyocabinet-1.4.48.tar.gz
tar zxvf tokyocabinet-1.4.48.tar.gz
cd tokyocabinet-1.4.48
./configure --prefix=/usr/local/ttserver/tokyocabinet
make
make install
注意:32ビットオペレーティングシステムでは、Tokyo Tyrantバックエンドとして格納されているTokyo Cabinetデータベースの単一ファイルは2 Gを超えてはいけませんが、64ビットオペレーティングシステムはこの制限を受けません.
したがって、Tokyo Tyrantを使用する場合は、64ビットCPU、オペレーティングシステムへのインストール運転を推奨します.
Tokyo cabinetをコンパイルするときは、次のコンパイルオプションを使用して2 G制限を突破できます.--enable-off 64
3.Tokyo Tyrantのインストール
cd /tmp
wget http://fallabs.com/tokyotyrant/tokyotyrant-1.1.41.tar.gz
tar zxvf tokyotyrant-1.1.41.tar.gz
cd tokyotyrant-1.1.41
./configure --prefix=/usr/local/ttserver/tokyotyrant --with-tc=/usr/local/ttserver/tokyocabinet
--with-tcを指定しないと、次のエラーが発生する可能性があります.
configure: error: tcutil.h is required
make
make install
4.パラメータの表示
cd /usr/local/ttserver/
./tokyotyrant/bin/ttserver -h
./tokyotyrant/bin/ttserver: the server of Tokyo Tyrant
usage:
./tokyotyrant/bin/ttserver [-host name] [-port num] [-thnum num] [-tout num] [-dmn] [-pid path] [-kl] [-log path] [-ld|-le] [-ulog path] [-ulim num] [-uas] [-sid num] [-mhost name] [-mport num] [-rts path] [-rcc] [-skel name] [-mul num] [-ext path] [-extpc name period] [-mask expr] [-unmask expr] [dbname]
ttserverパラメータコメント:
-host name : IP 。 IP 。
-port num : 。 1978
-thnum num : 。 8 .
-tout num : ( )。 。
-dmn : 。
-pid path : ID ( )。
-log path : ( )。
-ld : DEBUG 。
-le : 。
-ulog path : ( )。
-ulim num : ( 128m)。
-uas : IO ( IO , , , ttserver kill , 。 )。
-sid num : ID ( , ttserver ID )
-mhost name : , IP 。
-mport num : , 。
-rts path : 。
-rcc : 。
-skel name : skeleton 。
-mul num : 。
-ext path : 。
-extpc name period : 。
-mask expr : 。
-unmask expr : 。
コンフィギュレーション
1.データファイル格納ディレクトリの作成
mkdir -p /ttserver/data #
mkdir -p /ttserver/ulog #
mkdir -p /ttserver/log #
2.ファイル記述子サイズの設定
vim /etc/security/limits.conf
* soft nofile 204800
* hard nofile 204800
または
ulimit -u 204800 -HSn 204800
または/etc/profileに書き込むと、ユーザーがログインするたびにこのファイルが実行されます.
3.グローバルパラメータの構成
vi /etc/profile
に加わる
export PATH="$PATH:/usr/local/ttserver/tokyotyrant/bin:/usr/local/ttserver/tokyotyrant/sbin"
. /etc/profile
echo $PATH
4.ttserverの起動
データベースタイプは接尾辞で決まります.key-valueの機能しか必要ないので、機能が簡単で、速度の速いhash databaseを採用します.
Hash Database :.tch
B+ tree database :.tcb
fixed-length database :.tcf
table database :.tct
メモリHashデータベース:*
メモリB+tree database:+
1)スタンドアロンモード
ttserver -host 192.168.11.51 -port 11211 -thnum 8 -dmn -pid /ttserver/ttserver.pid -log /ttserver/log/ttserver.log -le -ulog /ttserver/ulog -ulim 128m -sid 1 -rts /ttserver/ttserver.rts /ttserver/data/database.tch
2)相互主従
192.168.11.51で実行します.
ttserver -host 192.168.11.51 -port 11211 -thnum 8 -dmn -pid /ttserver/ttserver.pid -log /ttserver/log/ttserver.log -le -ulog /ttserver/ulog/ -ulim 128m -sid 110 -mhost 192.168.11.52 -mport 11211 -rts /ttserver/ttserver.rts /ttserver/data/casket.tch
192.168.11.52で実行します.
ttserver -host 192.168.11.52 -port 11211 -thnum 8 -dmn -pid /ttserver/ttserver.pid -log /ttserver/log/ttserver.log -le -ulog /ttserver/ulog/ -ulim 128m -sid 111 -mhost 192.168.11.51 -mport 11211 -rts /ttserver/ttserver.rts /ttserver/data/casket.tch
3)スクリプトまたはサービス方式
スクリプトまたはサービス方式が起動し、シングルマシンに構成したり、プライマリ・セカンダリに構成したりできます.
起動スクリプトの編集:/usr/local/ttserver/tokyotyrant/sbin/ttservctl、関連パラメータの設定:
(スタンドアロンモード構成を例に)
#! /bin/sh
#---------------------------------------------------------------- # Startup script for the server of Tokyo Tyrant
#----------------------------------------------------------------
# configuration variables
prog="ttservctl"
cmd="ttserver"
basedir="/ttserver/" #
port="1978" #ttserver
pidfile="$basedir/pid" # ID /ttserver/pid
logfile="$basedir/log/ttserver.log" # /ttserver/log/ttserver.log
ulogdir="$basedir/ulog/" #
ulimsiz="256m" # ulog ,
sid=110 #server id mysql,
#mhost="192.168.11.52" # , IP 。#mport="11211" # , 。
rtsfile="$basedir/rts" #replication
dbname="$basedir/data/casket.tch#bnum=1000000" #xmsiz= ”
maxcon="65535"
retval=0
ttserverサーバの起動:ttservctl start
ttserverサーバを閉じる:ttservctl stop
ttserverサーバの再起動:ttservctl restart
ttserverサーバログローテーション:ttservctl hup
または/etc/initにスクリプトを配置します.d/ディレクトリ、サービスとして起動します.
5.検証起動成功
ps aux | grep ttserver
telnet 192.168.11.51 1978
Trying 192.168.11.51...
Connected to 192.168.11.51.
Escape character is '^]'.
stats
STAT pid 20553
STAT uptime 67
STAT time 1430991715
STAT version 1.1.41
STAT pointer_size 64
STAT rusage_user 0.011998
STAT rusage_system 0.018997
STAT cmd_set 0
STAT cmd_set_hits 0
STAT cmd_set_misses 0
STAT cmd_delete 0
STAT cmd_delete_hits 0
STAT cmd_delete_misses 0
STAT cmd_get 0
STAT cmd_get_hits 0
STAT cmd_get_misses 0
STAT cmd_flush 0
STAT curr_items 0
STAT total_items 0
STAT bytes 4198720
STAT threads 8
END
quit
Connection closed by foreign host.