codis集群的搭建
一、源码下载安装
实验环境
主机serve11:172.25.254.21和宿主机:172.25.254.73
1.创建主机server11,保证实验环境
2.go环境安装部署
源码包下载
将压缩包解压到指定目录/usr/local下
添加到环境变量中
3.codis环境安装部署
下载安装源码包
将codis安装在go目录下,先新建目录,解压并重命名,然后make。
解压压缩包
安装软件,解决编译时的依赖性,也可以编译时根据报错安装
编译
二、配置集群
快速构建一个单机版测试 codis 集群,无任何外部组件依赖.
源码中 admin 文件夹提供了一系列脚本以便快速启动、停止各个组件,提高运维效率。
1.启动codis-dashboard
使用 codis-dashboard-admin.sh 脚本启动 dashboard,
并查看 dashboard 日志确认启动是否有异常。
[root@server11 codis]# ./admin/codis-dashboard-admin.sh start
[root@server11 log]# cat codis-dashboard.log.2022-01-20
2.启动codis-proxy
使用 codis-proxy-admin.sh 脚本启动 codis-proxy,
并查看 proxy 日志确认启动是否有异常。
[root@server11 codis]# ./admin/codis-proxy-admin.sh start
[root@server11 codis]# cd log/
[root@server11 log]# cat codis-proxy.log.2022-01-20
3.启动codis-server
使用 codis-server-admin.sh 脚本启动 codis-server,并查看 redis 日志确认启动是否有异常。
[root@server11 codis]# ./admin/codis-server-admin.sh start
[root@server11 codis]# ls log/
[root@server11 codis]# vim /tmp/redis_6379.log
4.启动codis-fe
使用 codis-fe-admin.sh 脚本启动 codis-fe,并查看 fe 日志确认启动是否有异常。
访问测试,通过浏览器访问9090端口,查看集群图形管理界面
可以看到刚搭建好的集群 codis-demo
三、通过fe添加group
在浏览器访问集群管理页面172.25.24.1:9090,选择刚搭建的集群 codis-demo,在 Proxy 栏可看到已经启动的 Proxy,Group 栏为空是因为启动的 codis-server 并未加入到集群中,添加 NEW GROUP,输入 1,再点击 NEW GROUP 即可 添加 Codis Server,Add Server 行输入codis-server 地址127.0.0.1:6379,添加到新建的 Group,点击 Add Server 。
四、通过fe初始化slot
新增的集群 slot 状态是 offline,因此我们需要对它进行初始化(将 1024 个 slot 分配到各个 group),而初始化最快的方法可通过 fe 提供的 rebalance all slots 按钮来做,如下图所示,点击此按钮,我们即快速完成了一个集群的搭建。
五、集群配置
1.添加两个Redis实例
分别添加6380、6381两个实例
Redis6380实例配置
[root@server11 codis]# cp config/redis.conf config/redis6380.conf
[root@server11 codis]# cp config/redis.conf config/redis6381.conf
[root@server11 codis]# vim config/redis6380.conf
84 port 6380
150 pidfile /tmp/redis_6380.pid
163 logfile "/tmp/redis_6380.log"
[root@server11 codis]# ./bin/codis-server ./config/redis6380.conf #启动新增的Redis实例
[root@server11 codis]# vim config/redis6381.conf
84 port 6381
150 pidfile /tmp/redis_6381.pid
163 logfile "/tmp/redis_6381.log"
[root@server11 codis]# ./bin/codis-server ./config/redis6381.conf
Redis6381实例配置与上面类似
2.在浏览器添加两个实例
添加两个实例,刚添加进来的默认状态是NO:ONE,点击小扳手即可
开启集群管理之后,只有6379可读可写,其余两个只有读权限