环境:
codis-release3.2.zip
go1.8.linux-amd64.tar.gz
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIn5GcuQzN2EjN1IjM0EDOwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
1.安装go环境
[[email protected] ~]# tar zxf go1.8.linux-amd64.tar.gz
[[email protected] ~]# ls
codis-release3.2.zip go go1.8.linux-amd64.tar.gz
[[email protected] ~]#mv go/ /usr/local/
[[email protected] ~]# vim /etc/profile ##在最后添加:
export GOROOT=/usr/local/go
export PATH=$GOROOT/bin:$PATH
export GOPATH=/home/user/go
[[email protected] ~]# source /etc/profile ##刷新
[[email protected] ~]# go version ##测试环境是否安装成功:
go version go1.8 linux/amd64 //ok!
2.安装codis
(1)创建codis安装目录,解压源码包并将其移入指定位置
[[email protected] ~]# mkdir -p $GOPATH/src/github.com/CodisLabs
[[email protected] ~]# unzip codis-release3.2.zip
[[email protected] ~]# mv codis-release3.2 $GOPATH/src/github.com/CodisLabs/codis
(2)安装必要软件,解决codis编译依赖性
yum install -y gcc git autoconf
(3)编译安装:make && make install
[[email protected] ~]# cd /home/user/go/src/github.com/CodisLabs/codis
[[email protected] codis]# make & make install
(4)启动codis
[[email protected] codis]# cd admin/
[[email protected] admin]# ls
codis-dashboard-admin.sh codis-fe-admin.sh codis-proxy-admin.sh codis-server-admin.sh
[[email protected] admin]# ./codis-dashboard-admin.sh start
[[email protected] admin]# ./codis-fe-admin.sh start
[[email protected] admin]# ./codis-proxy-admin.sh start
[[email protected] admin]# ./codis-server-admin.sh start
(5)查看进程:
3.网页访问
浏览器输入:172.25.60.1:9090
4.创建集群
(1)新建组并添加节点: 先创建ID号为1的组,再将172.0.0.1:6379加入1
(2)通过fe初始化slot
新增的集群 slot 状态是 offline,因此我们需要对它进行初始化(将 1024 个 slot 分配到各个group),而初始化最快的方法可通过 fe 提供的 rebalance all slots按钮来做,如下图所示,点击此按钮,我们即快速完成了一个集群的搭建。
(3)为本机添加新节点:通过创建配置文件来添加服务节点
[[email protected] codis]# cd config/
[[email protected] config]# ls
dashboard.toml proxy.toml redis.conf sentinel.conf
[[email protected] config]# grep -v ^# redis.conf > redis1.conf
[[email protected] config]# grep -v ^# redis.conf > redis2.conf
[[email protected] config]# grep -v ^# redis.conf > redis3.conf
[[email protected] config]# vim redis1.conf //修改端口号
[[email protected] config]# vim redis2.conf
[[email protected] config]# vim redis3.conf
[ [email protected] config]# ls
dashboard.toml proxy.toml redis2.conf redis.conf
dump.rdb redis1.conf redis3.conf sentinel.conf
(4)启动服务,查看状态
[[email protected] config]# ../bin/codis-server redis1.conf
[[email protected] config]# ../bin/codis-server redis2.conf
[[email protected] config]# ../bin/codis-server redis3.conf
[[email protected] config]# ps -ax | grep codis-server
(5)添加组和节点
为组1添加节点
创建ID为2的组,并添加节点
注: 上图所示中存在问题,两个server端没有识别master。点击下图中我用椭圆标记的位置即可
此时就ok了!!!
(6)查看节点状态(一主一从)
[[email protected] codis]# ./bin/redis-cli -p 6379
127.0.0.1:6379> info
*********** 省略 ************
# Replication
role:master ##master端
connected_slaves:1 ##有一个slave,slave节点信息如下
slave0:ip=127.0.0.1,port=6381,state=online,offset=43,lag=0
master_repl_offset:43
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:42
[[email protected] codis]# ./bin/redis-cli -p 6382
127.0.0.1:6382> info
*********** 省略 ************
# Replication
role:master ##master端
connected_slaves:1 ##有一个slave,slave节点信息如下
slave0:ip=127.0.0.1,port=6383,state=online,offset=5905,lag=0
master_repl_offset:5905
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:5904
(7)将hash池均分给两个服务组
到此单机codis集群搭建完成!!!