1.下载codis
下载地址:https://github.com/CodisLabs/codis.git
2.下载 go 环境库
下载地址:https://golang.org/
3. 添加 go 环境变量 PATH 及配置 GOHOME 环境变量
export GOPATH=/opt/software/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
4. 安装 zookeeper (下载安装即可)
5.编译 codis 项目 ,进入 上面 git 到的codis 代码中,执行 make 进行编译。编译完成后,在bin 目录下,应该可以看到:
说明编译成功;
6.编辑 当前目录下的 cofig.ini 文件。主要是需要配置 zookeeper 地址和 dashboard 地址,还有其他zk 的 session 信息;(我这里配置地址为 192.168.1.107:18087, 启动 dashboard 后,可以通过浏览器访问)
7.启动 codis
(1) .启动dashboard
nohup bin/codis-config dashboard > /dev/null &
(2).启动codes-server ( 这一步,你也可以理解为在单机上启动多个 redis 实例)
nohup bin/codis-server --port 6379 > /dev/null &
nohup bin/codis-server --port 6380 > /dev/null &
nohup bin/codis-server --port 6381 > /dev/null &
nohup bin/codis-server --port 6382 > /dev/null &
(3).添加group 和 master /slave(这一步,也可以在这界面上操作)
通过Web界面来添加,默认第一个为 master ,, 第二个为 slave 。
也可以通过命令的方式来添加。
bin/codis-config server add 1 127.0.0.1:6379 master
bin/codis-config server add 1 127.0.0.1:6380 slave
bin/codis-config server add 2 127.0.0.1:6381 master
bin/codis-config server add 2 127.0.0.1:6382 slave
添加完成后,可在zk中看到节点的数据:
(4)设置分片
执行这一步后,系统会在后台自动创建分片,这个时候,创建的进度可以在 zookeeper 中的 /zk/codis/db_liu-test/slots/slots_*** 下看到,最多有1024个。
bin/codis-config slot init
#设置分片范围
bin/codis-config slot range-set 0 511 1 online
bin/codis-config slot range-set 512 1024 2 online
(5)启动proxy
nohup bin/codis-proxy -c config.ini -L ./log/proxy.log --cpu=1 --addr=127.0.0.1:19000 --http-addr=127.0.0.1:11000 > /dev/null &
执行完成后,会看到如下界面。
slots 信息如下: