Skip to content

Commit 5cd780a

Browse files
00ktaocp
authored andcommitted
issue=#1244 tera_main split to tera_master and tabletserver (#1245)
1 parent 9ce8466 commit 5cd780a

File tree

17 files changed

+112
-54
lines changed

17 files changed

+112
-54
lines changed

Makefile

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ OTHER_SRC := $(wildcard src/zk/*.cc) $(wildcard src/utils/*.cc) $(VERSION_SRC) \
3636
src/tera_flags.cc
3737
COMMON_SRC := $(wildcard src/common/base/*.cc) $(wildcard src/common/net/*.cc) \
3838
$(wildcard src/common/file/*.cc) $(wildcard src/common/file/recordio/*.cc) \
39-
$(wildcard src/common/console/*.cc)
39+
$(wildcard src/common/console/*.cc)
40+
SERVER_WRAPPER_SRC := src/tera_main_wrapper.cc
4041
SERVER_SRC := src/tera_main.cc src/tera_entry.cc
4142
CLIENT_SRC := src/teracli_main.cc
4243
TEST_CLIENT_SRC := src/tera_test_main.cc
@@ -45,7 +46,7 @@ MONITOR_SRC := src/monitor/teramo_main.cc
4546
MARK_SRC := src/benchmark/mark.cc src/benchmark/mark_main.cc
4647
TEST_SRC := src/utils/test/prop_tree_test.cc src/utils/test/tprinter_test.cc \
4748
src/io/test/tablet_io_test.cc src/io/test/tablet_scanner_test.cc \
48-
src/master/test/master_impl_test.cc src/io/test/load_test.cc
49+
src/master/test/master_impl_test.cc src/io/test/load_test.cc
4950

5051
TEST_OUTPUT := test_output
5152
UNITTEST_OUTPUT := $(TEST_OUTPUT)/unittest
@@ -58,6 +59,7 @@ PROTO_OBJ := $(PROTO_SRC:.cc=.o)
5859
JNI_TERA_OBJ := $(JNI_TERA_SRC:.cc=.o)
5960
OTHER_OBJ := $(OTHER_SRC:.cc=.o)
6061
COMMON_OBJ := $(COMMON_SRC:.cc=.o)
62+
SERVER_WRAPPER_OBJ := $(SERVER_WRAPPER_SRC:.cc=.o)
6163
SERVER_OBJ := $(SERVER_SRC:.cc=.o)
6264
CLIENT_OBJ := $(CLIENT_SRC:.cc=.o)
6365
TEST_CLIENT_OBJ := $(TEST_CLIENT_SRC:.cc=.o)
@@ -68,11 +70,12 @@ HTTP_OBJ := $(HTTP_SRC:.cc=.o)
6870
TEST_OBJ := $(TEST_SRC:.cc=.o)
6971
ALL_OBJ := $(MASTER_OBJ) $(TABLETNODE_OBJ) $(IO_OBJ) $(SDK_OBJ) $(PROTO_OBJ) \
7072
$(JNI_TERA_OBJ) $(OTHER_OBJ) $(COMMON_OBJ) $(SERVER_OBJ) $(CLIENT_OBJ) \
71-
$(TEST_CLIENT_OBJ) $(TERA_C_OBJ) $(MONITOR_OBJ) $(MARK_OBJ) $(TEST_OBJ)
73+
$(TEST_CLIENT_OBJ) $(TERA_C_OBJ) $(MONITOR_OBJ) $(MARK_OBJ) $(TEST_OBJ) \
74+
$(SERVER_WRAPPER_OBJ)
7275
LEVELDB_LIB := src/leveldb/libleveldb.a
7376
LEVELDB_UTIL := src/leveldb/util/histogram.o src/leveldb/port/port_posix.o
7477

75-
PROGRAM = tera_main teracli teramo tera_test
78+
PROGRAM = tera_main tera_master tabletserver teracli teramo tera_test
7679
LIBRARY = libtera.a
7780
SOLIBRARY = libtera.so
7881
TERA_C_SO = libtera_c.so
@@ -114,8 +117,15 @@ cleanall:
114117
$(MAKE) clean
115118
rm -rf build
116119

117-
tera_main: $(SERVER_OBJ) $(MASTER_OBJ) $(TABLETNODE_OBJ) $(IO_OBJ) $(SDK_OBJ) \
118-
$(PROTO_OBJ) $(OTHER_OBJ) $(COMMON_OBJ) $(LEVELDB_LIB)
120+
tera_main: src/tera_main_wrapper.o src/version.o src/tera_flags.o
121+
$(CXX) -o $@ $^ $(LDFLAGS)
122+
123+
tera_master: $(SERVER_OBJ) $(MASTER_OBJ) $(IO_OBJ) $(SDK_OBJ) \
124+
$(PROTO_OBJ) $(OTHER_OBJ) $(COMMON_OBJ) $(LEVELDB_LIB)
125+
$(CXX) -o $@ $^ $(LDFLAGS)
126+
127+
tabletserver: $(SERVER_OBJ) $(TABLETNODE_OBJ) $(IO_OBJ) $(SDK_OBJ) \
128+
$(PROTO_OBJ) $(OTHER_OBJ) $(COMMON_OBJ) $(LEVELDB_LIB)
119129
$(CXX) -o $@ $^ $(LDFLAGS)
120130

121131
libtera.a: $(SDK_OBJ) $(PROTO_OBJ) $(OTHER_OBJ) $(COMMON_OBJ) $(LEVELDB_UTIL)
@@ -178,8 +188,8 @@ tablet_scanner_test: src/io/test/tablet_scanner_test.o src/tabletnode/tabletnode
178188
$(IO_OBJ) $(PROTO_OBJ) $(OTHER_OBJ) $(COMMON_OBJ) $(LEVELDB_LIB)
179189
$(CXX) -o $@ $^ $(LDFLAGS)
180190

181-
master_impl_test: src/master/test/master_impl_test.o src/tera_entry.o $(MASTER_OBJ) $(TABLETNODE_OBJ) $(IO_OBJ) $(SDK_OBJ) \
182-
$(PROTO_OBJ) $(OTHER_OBJ) $(COMMON_OBJ) $(LEVELDB_LIB)
191+
master_impl_test: src/master/test/master_impl_test.o src/tera_entry.cc $(MASTER_OBJ) $(IO_OBJ) $(SDK_OBJ) \
192+
$(PROTO_OBJ) $(OTHER_OBJ) $(COMMON_OBJ) $(LEVELDB_LIB)
183193
$(CXX) -o $@ $^ $(LDFLAGS)
184194

185195
$(ALL_OBJ): %.o: %.cc $(PROTO_OUT_H)

doc/cn/cluster_setup.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,12 @@ Tera集群搭建
4747
* 在master节点上,执行以下命令
4848
```
4949
cd ${tera_prefix}/bin
50-
nohup ./tera_main --flagfile=../conf/tera.flag --tera_role=master &> ../log/master.stderr &
50+
nohup ./tera_master --flagfile=../conf/tera.flag &> ../log/master.stderr &
5151
```
5252
* 在TabletServer节点上,执行以下命令
5353
```
5454
cd ${tera_prefix}/bin
55-
nohup ./tera_main --flagfile=../conf/tera.flag --tera_role=tabletnode &> ../log/tabletserver.stderr &
55+
nohup ./tabletserver --flagfile=../conf/tera.flag &> ../log/tabletserver.stderr &
5656
```
5757
5. 停止tera
58-
* 用kill命令杀掉tera_main对应的进程即可
58+
* 用kill命令杀掉tera_master和tabletserver对应的进程即可

doc/cn/onebox.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
## 准备工作
1010
1. 完成Tera的编译,请参考:https://github.com/baidu/tera/wiki/Build-Manual
11-
2. 将编译生成的tera_main, teracli两个二进制文件放入example/onebox/bin
11+
2. 将编译生成的tera_master, tabletserver, teracli三个二进制文件放入example/onebox/bin
1212
3. 如有需要,通过修改example/onebox/bin/config中的选项配置tabletnode个数
1313
4. 进入example/onebox/bin/目录
1414

doc/en/onebox.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Your can run Tera in pseudo-distributed mode which means that Tera runs on a sin
99
1. git clone https://github.com/baidu/tera.git
1010
1. cd tera
1111
1. ./build.sh
12-
1. cp {tera_main,teracli} example/onebox/bin
12+
1. cp {tera_master,tabletserver,teracli} example/onebox/bin
1313
1. cd example/onebox/bin
1414

1515

doc/ubuntu_install_onebox_and_cluster.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ ubuntu安装tera(单机和集群)
4949

5050
3. 等待编译结束 & 单机体验
5151

52-
将编译生成的tera_main和teracli文件copy到example/onebox/bin目录下,进入目录执行:sh launch_tera.sh。然后执行./teracli进终端交互。Have fun!
52+
将编译生成的tera_master,tabletserver和teracli文件copy到example/onebox/bin目录下,进入目录执行:sh launch_tera.sh。然后执行./teracli进终端交互。Have fun!
5353
详见:https://github.com/baidu/tera/blob/master/doc/onebox-cn.md
5454

5555

@@ -262,10 +262,10 @@ ubuntu安装tera(单机和集群)
262262
> 在zookeeper目录中执行:./bin/zkServer.sh status,找到leader那台机器,即master
263263
> 进入tera_root的bin目录,
264264
在master上执行:
265-
nohup ./tera_main --flagfile=../conf/tera.flag --tera_role=master &> ../log/master.stderr &
265+
nohup ./tera_master --flagfile=../conf/tera.flag &> ../log/master.stderr &
266266
267267
在其他两台slave机器上执行:
268-
nohup ./tera_main --flagfile=../conf/tera.flag --tera_role=tabletnode &> ../log/tabletserver.stderr &
268+
nohup ./tabletserver --flagfile=../conf/tera.flag &> ../log/tabletserver.stderr &
269269
270270
> 在任意一台机器上的tera_root/bin目录中执行:./teracli
271271
Have Fun!

example/docker/master

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@
33
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/jre/lib/amd64/:/home/ubuntu/leiliyuan/hadoop-1.2.1/lib:$(hadoop classpath)
44
cd /opt/tera/bin
55

6-
nohup ./tera_main --flagfile=../conf/tera.flag --tera_local_addr $1 --tera_role=master &> ../../share/log/master.stderr &
6+
nohup ./tera_master --flagfile=../conf/tera.flag --tera_local_addr $1 &> ../../share/log/master.stderr &

example/docker/tabletnode

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22

33
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/jre/lib/amd64/:/home/ubuntu/leiliyuan/hadoop-1.2.1/lib:$(hadoop classpath)
44
cd /opt/tera/bin
5-
nohup ./tera_main --flagfile=../conf/tera.flag --tera_local_addr $1 --tera_role=tabletnode &> ../../share/log/tabletserver.stderr &
5+
nohup ./tabletserver --flagfile=../conf/tera.flag --tera_local_addr $1 &> ../../share/log/tabletserver.stderr &

example/onebox/bin/kill_tera.sh

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,13 @@
11
#!/bin/bash
22
source ./config
33

4-
for ((i=0; i<=${TABLETNODE_NUM}; i++)); do
5-
PID=`ps x | grep tera_main | grep $((PORT+i)) | awk '{print $1}'`;
4+
PID=`ps x | grep tera_master | grep $PORT | awk '{print $1}'`;
5+
if [ ${PID}"x" != "x" ]; then
6+
kill -9 $PID;
7+
fi
8+
9+
for ((i=1; i<=${TABLETNODE_NUM}; i++)); do
10+
PID=`ps x | grep tabletserver | grep $((PORT+i)) | awk '{print $1}'`;
611
if [ ${PID}"x" != "x" ]; then
712
kill -9 $PID;
813
fi

example/onebox/bin/launch_tera.sh

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,8 @@ for ((i=1; i<=$TABLETNODE_NUM; i++)); do
3333
if [ ! -x $CACHE_PATH ];then
3434
mkdir -p $CACHE_PATH
3535
fi
36-
${CURRENT_DIR}/tera_main \
36+
${CURRENT_DIR}/tabletserver \
3737
--flagfile=${CURRENT_DIR}/../conf/tera.flag \
38-
--tera_role=tabletnode \
3938
--tera_tabletnode_port=$((PORT+i)) \
4039
--tera_leveldb_log_path=${LEVELDB_LOG_FILE} \
4140
--tera_tabletnode_cache_paths=${CACHE_PATH} \
@@ -53,9 +52,8 @@ MASTER_LOG_FILE=${CURRENT_DIR}/../log/master.stderr
5352
if [ -f ${MASTER_LOG_FILE} ];then
5453
mv ${MASTER_LOG_FILE} ${MASTER_LOG_FILE}.${TIME}
5554
fi
56-
${CURRENT_DIR}/tera_main \
55+
${CURRENT_DIR}/tera_master \
5756
--flagfile=${CURRENT_DIR}/../conf/tera.flag \
58-
--tera_role=master \
5957
--tera_master_port=${PORT} \
6058
--tera_fake_zk_path_prefix=${FAKE_ZK_PATH_PREFIX} \
6159
--tera_log_prefix=master &> ${MASTER_LOG_FILE} </dev/null &

ft_test.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,8 @@ if ! $run_without_fetch; then
5151
cp example/onebox/conf/tera.flag $test_dir/conf
5252

5353
cp build/bin/teracli $test_dir/bin
54-
cp build/bin/tera_main $test_dir/bin
54+
cp build/bin/tera_master $test_dir/bin
55+
cp build/bin/tabletserver $test_dir/bin
5556
cp build/bin/tera_test $test_dir/bin
5657
cp build/benchmark/tera_bench $test_dir/bin
5758
cp build/benchmark/tera_mark $test_dir/bin

0 commit comments

Comments
 (0)