centos安装tair

2021-07-20 14:27:05 浏览数 (1)

tair介绍:

tair.taobao.org

http://code.taobao.org/p/tair/wiki/index/

tair安装介绍:

http://code.taobao.org/p/tair/wiki/deploy/

一、安装

rpm包安装(不推荐用):

wget http://code.taobao.org/p/tair/file/27/tair-2.3-46.el5.x86_64.rpm

rpm -ivh tair-2.3-46.el5.x86_64.rpm

rpm -ql tair-2.3-46.el5

源码安装:

1】、查看是否含编译环境: automake --version (一般已安装,如果报错,请执行:yum -y install automake autoconf libtool)

2】、编译淘宝底层公共库tbsys和tbnet:

获取包:

svn checkout http://code.taobao.org/svn/tb-common-utils/trunk/ tb-common-utils --底层库tbsys,tbnet

底层公共库建议安装到: /usr/local/tb目录,即定义:export TBLIB_ROOT="/usr/local/tb"

并写入环境配置文件:echo 'export TBLIB_ROOT="/usr/local/tb"' >> /etc/profile

cd tb-common-utils/

chmod 750 build.sh

./build.sh

3】、查看是否含boost-devel库,执行:rpm -q boost-devel (一般已安装,如果报错,请执行:yum install boost-devel)

4】、编译安装tair:

获取包:

cd ../

svn checkout http://code.taobao.org/svn/tair/trunk/ tai

获取指定版本(如,获取525版本):svn checkout -r 525 http://code.taobao.org/svn/tair/trunk/ tai

查看包版本:svn info tai

cd ./tai

./bootstrap.sh

./configure --prefix=/usr/local/tai

make && make install

二、配置tai

配置configserver.conf

cd /usr/local/tair/etc

cp configserver.conf.default configserver.conf

vi configserver.conf

修改:

config_server=103.29.134.164:5198

config_server=103.29.134.163:5198

data_dir=/var/tair_cfsdata

dev_name=bond0 --做了双网卡绑定,网卡名改为:bond0,有些是需要改为eth0/1/2/3的。

生成目录:

mkdir /var/tair_cfsdata

配置group.conf

cp group.conf.default group.conf

vi group.conf

由于只有3台ds,根据实际情况修改如下:

[group_1]

_data_move=1

......

_min_data_server_count=2

_accept_strategy=1 --表示自动进行group.conf的同步分析

......

_copy_count=2

......

# data center A

_server_list=103.29.134.164:5191

_server_list=103.29.134.163:5191

_server_list=103.29.134.162:5191

注释掉data center B。

#quota info

_areaCapacity_list=0,32212254720;

注:设置每个应用的内存限额,主要用于mdb;同时,因为fdb使用mdb作为内部的缓存, 这个值的大小也决定了缓存的效率.

0代表逻辑area为0,每个area对应一个应用程序逻辑,比如微博的msg存储在0,如果多个应用需存储到tair,则可启用1、2、3...n等;32212254720这个值是这个逻辑area占用的总物理内存空间容量,共30G。在这个例子里,因为只有1个area,包含2份数据,3个ds,则,每个ds被划出的物理空间容量为:30G/3=10G;单个ds实际数据量为120G/(3*2)=5G;area总数据量为30G/2=15G。

配置dataserver.conf:

cp dataserver.conf.default dataserver.conf

vi dataserver.conf

修改:

config_server=103.29.134.164:5198

config_server=103.29.134.163:5198

......

storage_engine=mdb或fdb --mdb是内存型k/v库,fdb是持久化k/v库;(tair一般就设置为这两种存储引擎之一,不用kdb)

......

slab_mem_size=10240 --当使用mdb存储引擎时有效,设置每个dataserver可用的内存,默认1G,每台实际的物理内存可能不一样,确保所有ds累加后>=_areaCapacity_list值。这个例子有3个DS,这个值设置为10G。

......

dev_name=bond0 --做了双网卡绑定,网卡名改为:bond0,有些是需要改为eth0/1/2/3的。

......

data_dir=/var/tair_fdb --当使用fdb时有效,设置ds数据的存储路径,存储路径需要安排在一个容量比较大的分区。

生成目录:

mkdir /var/tair_fdb

运行前修改共享内存,dataserver上:

cd /usr/local/tai

vi set_shm.sh

size=36G --根据实际物理内存修改,一般物理内存/2,如:72G内存改为:36G;也可以适当调大;

chmod 750 set_shm.sh

./set_shm.sh

执行后,需要修改共享内存,则:

vi /etc/fstab

修改tmpfs对应的:size=36G

然后,mount -o remount /dev/shm

启动服务:顺序--先在dataserver(三台)启动DS(dataserver),然后是CS(configserver)两台。

chmod 750 /usr/local/tair/tair.sh

/usr/local/tair/tair.sh start_ds

/usr/local/tair/tair.sh start_cs

备注:默认group.conf配置下,当ds后启动或维护时重新接入cs时,需要手工在两个cs上touch group.conf;假如在group.conf设置_accept_strategy=1就没这个问题。

验证是否启动成功:

/usr/local/tair/sbin/tairclient -c 61.135.210.69:5198 -g group_1 -v

测试:

/usr/local/tair/sbin/tairclient -c 103.29.134.164:5198 -g group_1

FAQ:

dataserver里设置为kdb方式的话,DS启动有错误如下:

问题:[2011-11-29 21:06:25] ERROR main (tair_server.cpp:595) [47674159171392] profiler disabled by default, threshold has been set to 10000

暂时没找到解决方法。

另一个问题:http://code.taobao.org/p/tair/issue/513/

通常跟dataserver.conf或group.conf配置文件有关系,如dataserver.conf里devname(网卡)设置错误。

-------------------------------------------------------------------------------

附录:网上参考,tair 的服务器搭建配置

http://hi.baidu.com/tibelf/blog/item/04b6250394a6a1653912bb01.html

tair 是淘宝的一个开源分布式内存数据库,读写性能都很好,基本配置整理如下:

(1)服务器需要配置

/opt/csr/tair/etc/group.conf

/opt/csr/tair/etc/configserver.conf

在configserver.conf文件中注意设置group.conf 的路径

(2)数据服务器需要配置:

/opt/csr/tair/etc/dataserver.conf

(3)设置每个数据库的内存

_areaCapacity_list=0, 85899345920;

_areaCapacity_list=1, 85899345920;

_areaCapacity_list=2, 85899345920;

_areaCapacity_list=3, 85899345920;

_areaCapacity_list=4, 85899345920;

注意:这个地方需要设置每个area的空间大小,是一个集群上的tair数据空间的大小。

(4)设置每台机器可用的内存

slab_mem_size=14336

注意每台机器的内存可能是不一样的。

(5)设置数据服务器的网卡

dev_name=eth0

(6)启动顺序先启动数据服务器,再启动配置服务器

sudo /opt/csr/tair/sbin/tair_server -f /opt/csr/tair/etc/dataserver.conf

sudo /opt/csr/tair/sbin/tair_cfg_svr -f /opt/csr/tair/etc/configserver.conf

验证是否启动成功:

cd /opt/csr/tair/sbin/tairclient;

sudo /opt/csr/tair/sbin/tairclient -c xxxx:port -g group_1 -v

0 人点赞