黑马程序员技术交流社区
标题: [成都校区]手把手系列5-redis集群安装 [打印本页]
作者: 小蜀哥哥 时间: 2018-1-4 13:22
标题: [成都校区]手把手系列5-redis集群安装
本帖最后由 小蜀哥哥 于 2018-1-4 13:22 编辑
redis集群安装
v 集群的所需环境
1. redis : 至少三个节点,为保证每个节点高可用,每个节点要有备份机,故至少六台redis服务器,搭建redis伪分布式,在一台虚拟机上运行6个redis实例,需要修改redis端口号。
复制/usr/local/redis/bin下的所有文件到集群目录下
(1) 在/usr/local/下创建集群目录redis-cluster
(2) 将我们上次安装的单机redis(参照手把手系统4)的bin目录(usr/local/redis/bin)下的所有文件到集群目录下,一共复制6个,分别是redis01、redis02、redis03、redis04、redis05、redis06
(3) 删除复制6个的redis01~redis06下的dump.rdb文件。这个文件是redis的数据库文件,如果不删除无法进行集群。
(4) 修改每份redis的配置文件,redis.conf,改端口号,打开集群配置cluster-enabled。
分别将redis01~redis06配置文件redis.conf的端口修改为7001~7006。并将每个配置文件的cluster-enabled的注释去掉;
注意:由于redis.conf中的cluster-enabled所在文件比较偏后。所以可以在vim命令里面使用ctrl+f向后翻页 ctrl+b向前翻页;这两个命令要在查看状态下操作,如果在编辑状态(也就是按过 a i 等等键),这个时候先退出编辑状态,按esc,再进行向后或者向前翻页。
(5) 启动redis01~redis06。我们可以一个一个的去启动,但是为了效率我们建立一个批处理文件来一次启动redis01~redis06。批处理文件如下
1). 创建一个批处理文件
vim startall_redis.sh
2). 复制批处理文件内容
cd /usr/local/redis-cluster/redis01 ./redis-server redis.conf cd /usr/local/redis-cluster/redis02 ./redis-server redis.conf cd /usr/local/redis-cluster/redis03 ./redis-server redis.conf cd /usr/local/redis-cluster/redis04 ./redis-server redis.conf cd /usr/local/redis-cluster/redis05 ./redis-server redis.conf cd /usr/local/redis-cluster/redis06 ./redis-server redis.conf |
3). 修改startall_redis.sh的执行权限
4). 执行startall_redis.sh文件,启动redis01~redis06
以上我们的redis环境已经准备好,但是还不是集群环境,每个redis都还没有相互关联,接下来我们使用ruby来搭建集群
2. ruby脚本搭建集群
(1) 使用ruby脚本搭建集群。需要ruby的运行环境和运行ruby的gem命令
# 在线安装 ruby
yum install ruby
# ruby运行脚本包的执行gem命令
yum install rubygems
(2) 将ruby脚本运行使用的包redis-3.0.0.gem上传到/usr/local/redis-cluster/目录下
1).redis-3.0.0.gem所在目录淘淘商城资料\参考资料\redis\ruby和redis接口
2). 安装ruby脚本运行使用的包。在/usr/local/redis-cluster/目录下执行gem install redis-3.0.0.gem
3). 搭建redis集群还需要redis源码包中的ruby脚本,该脚本在redis解压目录的src目录下, 进入/usr/local/taotao_shop/redis/redis-3.0.0/src目录中
4). 将该目录下的redis-trib.rb拷贝到/usr/local/redis-cluster/目录中
5). 使用ruby脚本搭建集群,在/usr/local/redis-cluster/目录下执行如下命令:
先开启所有的集群redis,使用我们写好的批处理startall_redis.sh
执行如下命令开启集群(一定要保证先将所有的redis都启动)
./redis-trib.rb create --replicas 1 192.168.25.128:7001 192.168.25.128:7002 192.168.25.128:7003 192.168.25.128:7004 192.168.25.128:7005 192.168.25.128:7006 |
注意:IP地址(192.168.25.128)和端口(7001~7006)
运行后问询问操作人员配置是否可行,输入yes即可
所有槽都覆盖了,表示集群搭建完毕
6). 集群搭建完毕,接下来我们使用Redis-cli连接集群。客户端不需要连接集群所有节点,连接集群中任何一个可用节点即可。
7). 集群环境ok了,接下来我们创建关闭集群的脚本。在/usr/local/redis-cluster/目录下创建一个shutdownall_redis.sh。复制以下内容 /usr/local/redis-cluster/redis01/redis-cli -p 7001 shutdown /usr/local/redis-cluster/redis01/redis-cli -p 7002 shutdown /usr/local/redis-cluster/redis01/redis-cli -p 7003 shutdown /usr/local/redis-cluster/redis01/redis-cli -p 7004 shutdown /usr/local/redis-cluster/redis01/redis-cli -p 7005 shutdown /usr/local/redis-cluster/redis01/redis-cli -p 7006 shutdown |
修改shutdownall_redis.sh的执行权限
关闭集群
[attach]207578[/attach]
到此redis集群搞定
Get 没?
-
18.png
(5.15 KB, 下载次数: 48)
-
16.png
(30.14 KB, 下载次数: 53)
作者: 钟佩桓 时间: 2018-1-4 13:30
哇,第五个系列了!楼主厉害!再接再厉,期待继续更新
作者: 成都校区 时间: 2018-1-4 13:33
哇,第五个系列了!楼主厉害!再接再厉,期待继续更新
作者: 盖碗茶 时间: 2018-1-4 13:33
作者: liqingqinger 时间: 2018-1-4 13:36
小蜀哥哥是真的厉害~ 膜拜大佬
作者: Java程序员_风雨 时间: 2018-1-4 13:45
小蜀哥哥是真的6666666666
作者: 酸辣粉 时间: 2018-1-4 13:46
66666 6得不行
作者: i19920412 时间: 2018-1-4 14:08
可以的,666666666
作者: 仙女界扛把子 时间: 2018-1-4 14:10
666666666666666666666666
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |