Codis的官网推荐的安装部署方式是通过git获取master分支的代码然后进行编译部署,但是在实际的生产环境中很可能部署机是无法连接到外网到,也就不能使用git。本文将介绍如果将所需要到软件包事先下载好,然后通过非root用户进行安装部署。
前期准备
1.所需到安装包
Name | Version |
---|---|
go1.6.linux-amd64.tar.gz | 1.6 |
godep_linux_amd64 | V74 |
codis-master.zip | - |
2.创建一个非root用户,例如新建用户user1
安装Go
1.使用user1用户登录,并创建路径/home/user1/Applications
2.解压go1.6.linux-amd64.tar.gz到/home/user1/Applications
3.将如下内容加入到/home/user1/.bash_profile
中bashexport GOROOT=/home/user1/Applications/goexport PATH=$PATH:$GOROOT/binexport GOPATH=/home/user1/Applications/workspace
4.并执行source /home/user1/.bash_profile
使之生效
5.将godep_linux_amd64复制到/home/user1/Applications/go/bin
并重命名为godep,修改权限为755
编译Codis
1.执行
mkdir -p /home/user1/Applications/workspace/src/github.com/CodisLabs
2.将codis-master.zip解压到/home/user1/Applications/workspace/src/github.com/CodisLabs
并重命名为codis
3.进入/home/user1/Applications/workspace/src/github.com/CodisLabs/codis
执行make
4.执行成功之后会在/home/user1/Applications/workspace/src/github.com/CodisLabs/codis/bin
下面生成codis-config、codis-proxy、codis-server三个可执行文件
部署Codis(可选)
如果要将codis应用和源码分离,可以参考此部分
mkdir -p /home/user1/Applications/codis/{log,conf,data,bin}
cd /home/user1/Applications/workspace/src/github.com/CodisLabs/codis
cp -rf bin/* /home/user1/Applications/codis/bincp config.ini /home/user1/Applications/codis/conf
cp -rf /home/user1/Applications/workspace/src/github.com/CodisLabs/codis/bin/* /home/user1/Applications/codis/bin
cd /home/user1/Applications/workspace/src/github.com/CodisLabs/codis/extern/redis-2.8.21/src
cp redis-cli /home/user1/Applications/codis/bin/
修改相关配置
- 修改config.ini中zk的ip和端口号
- 修改codis服务的配置,默认可以使用系统提供的,例如
cp /home/user1/Applications/workspace/src/github.com/CodisLabs/codis/extern/redis-test/conf/6379.conf /home/user1/Applications/codis/conf
启动相关服务
进入/home/user1/Applications/codis
路径
1.启动dashboardbashnohup bin/codis-config dashboard > /dev/null &
2.启动codes-serverbashnohup bin/codis-server ./conf/6379.conf > /dev/null &
3.添加group和master(此步骤也可通过dashboard完成)bashbin/codis-config server add 1 hostname:6379 master
4.设置分片(此步骤也可通过dashboard完成)bashbin/codis-config slot initbin/codis-config slot range-set 0 1023 1 online
5.启动proxybashnohup bin/codis-proxy -c config.ini -L ./log/proxy.log --cpu=1 --addr="hostname:19000" --http-addr="hostname:11000" > /dev/null &
总结
至此Codis部署安装完成,正常的生产环境是要添加多个group,master和slave的,都是可以通过dashboard完成。