redis cluster集群部署

redis cluster集群部署,第1张

一.服务器设置准备

1. 将6379端口在防火墙看开启

[root@redis1 ~]#vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT

注:必须加在 REJECT 前面。

2.修改Selinux参数

[root@redis1 ~]#vi /etc/selinux/config

SELINUX=disabled

注:分别在其它几个节点上同样配置防火墙和 SELINUX。

二.安装Redis

1.安装系统组件

安装gcc、tcl

yum install –y gcc-c++

yum install –y tcl

2.安装redis

2.1.解压 Redis 到/usr/local目录下

[root@redis1 ~]# tar -zxvf /root/software/redis-3.2.6.tar.gz -C /usr/local/

2.2.在解压后的目录中进行 make 和 make test

[root@redis1 ~]# cd /usr/local/redis-3.2.6

[root@redis1 redis-3.2.6]# make

[root@redis1 redis-3.2.6]# make test

注:要检查 make 和 make test 的结果是否都正确,如果报错,针对性检查并安装系统缺少的组件。

2.3. 复制 redis-server 和 redis-cli 到/usr/local/bin 目录下:

[root@redis1 redis-3.2.6]# cd src

[root@redis1 src]# cp redis-server /usr/local/bin/

[root@redis1 src]# cp redis-cli /usr/local/bin/

2.4验证 Redis 安装是否成功:

[root@redis1 ~]# redis-server

[root@redis1 ~]# redis-cli

注:安装其它 5 台服务器

三.配置集群模式

1.配置 redis.conf

1.1 配置 redis.conf

[root@redis1 ~]# mkdir /etc/redis

[root@redis1 ~]# cd /etc/redis

[root@redis ~]# vi redis.conf

port 6379

daemonize yes

cluster-enabled yes

cluster-config-file /etc/redis/nodes.conf

cluster-node-timeout 5000

appendonly yes

requirepass Ab123456

注 1:cluster-node-timeout 是集群中各节点相互通讯时,允许“失联”的最大毫秒数,本演示

中配置的为 5 秒,如果超过 5 秒某个节点没有向其它节点汇报成功,认为该节点挂了。

注 2:requirepass 是 Redis 访问密码,为了安全起见,该参数建议必须配置,从但客户端

Jedis 版本必须使用 2.8.x 以上的版本,否则需要通过扩展 JedisCluster 来实现对密码访问的

支持。此外几个 Redis 节点的密码应该设置为相同的。

注 3:分别在其它几个节点上创建与上面相同的 redis.conf 文件,内容也相同。

注 4:重启/重建 Redis 集群时,必须删除去/etc/redis/nodes.conf 文件。

1.2以次启动所有节点

[root@redis1 ~]# redis-server /etc/redis/redis.conf

[root@redis2 ~]# redis-server /etc/redis/redis.conf

[root@redis3 ~]# redis-server /etc/redis/redis.conf

[root@redis4 ~]# redis-server /etc/redis/redis.conf

[root@redis5 ~]# redis-server /etc/redis/redis.conf

[root@redis6 ~]# redis-server /etc/redis/redis.conf

2.安装 Redis 集群所需的 Ruby 工具

2.1安装 Ruby 工具:

Redis 集群需要借助其它工具将相关节点加入到 Cluster 中,而这个工具是由 Redis 提供

一个名为 redis-trib.rb 的 ruby 脚本,否则接下来创建 cluster 会失败。

[root@redis1 ~]# cd /usr/local/redis-3.2.6/src

[root@redis1 src]# yum install –y ruby

[root@redis1 src]# yum install -y rubygems

[root@redis1 src]# gem install redis --version 3.0.0

[root@redis1 src]# gem list

2.2 设置 Ruby 连接 Redis 的密码:

[root@redis1 ~]# vi /usr/lib/ruby/gems/1.8/gems/redis-3.0.0/lib/redis/client.rb

:password =>"Ab123456"

注:分别在其它几个节点上用同样的方式安装好 Ruby 工具

3 利用redis-trib.rb 创建 Redis集群

3. 1. 在 src 目录下运行以下脚本:

[root@redis1 ~]# cd /usr/local/redis-3.2.6/src

[root@redis1 src]# ./redis-trib.rb create --replicas 1 10.50.130.101:6379 10.50.130.102:6379

10.50.130.103:6379 10.50.130.104:6379 10.50.130.105:6379 10.50.130.106:6379

注 1:只需在其中某个个节点执行以上脚本(本例在第一个节点执行)。

注 2:利用 redis-trib 创建 Cluster,只需要操作一次即可,假设系统关机、重启,把所有的

节点全部关闭之后,下次重启后,即自动进入 Cluster 模式,不用现次执行 redis-trib.rb cteate

命令。

3.2查看 Cluster 进程:

[root@redis1 ~]# ps -ef|grep redis

[root@redis2 ~]# ps -ef|grep redis

[root@redis3 ~]# ps -ef|grep redis

[root@redis4 ~]# ps -ef|grep redis

[root@redis5 ~]# ps -ef|grep redis

[root@redis6 ~]# ps -ef|grep redis

3.3 查看节点属性(Master/Slave)

[root@redis1 ~]# cd /usr/local/redis-3.2.6/src

[root@redis1 src]# ./redis-trib.rb check 10.50.130.101:6379

[root@redis1 src]# ./redis-trib.rb check 10.50.130.102:6379

[root@redis1 src]# ./redis-trib.rb check 10.50.130.103:6379

[root@redis1 src]# ./redis-trib.rb check 10.50.130.104:6379

[root@redis1 src]# ./redis-trib.rb check 10.50.130.105:6379

[root@redis1 src]# ./redis-trib.rb check 10.50.130.106:6379

3.4查看节点/集群信息

redis-cli 客户端登录到任一个节点,查看:

4.Jedis 测试 Redis 集群

单台服务器创建集群,多台也是一样操作,使用集群端口6380,6381,6382,6383,6384,6385

1、宝塔安装redis,路径一般是 /www/server/redis ,使用命令 ln -s /www/server/redis/src/redis-server /usr/bin/redis-server 将redis-server加入环境变量

2、创建集群文件目录,如 /home/redis/cluster,从redis安装路径复制redis.conf到/home/redis/cluster下,并修改名称为redis_6380.conf,重复操作添加redis_6381.conf,redis_6382.conf,redis_6383.conf,redis_6384.conf,redis_6385.conf

3、修改配置文件,打开redis_6380.conf文件并编辑一下内容,另外几个文件的端口分别改成和文件端口的一致

port 6380

pidfile /www/server/redis/redis_6380.pid

logfile "/home/redis/log/redis_6380.log"

dbfilename dump_6380.rdb

cluster-enabled yes

cluster-config-file nodes-6380.conf

cluster-node-timeout 15000

4、开启端口,将上面的6个端口分别开启,包括宝塔的和服务器的端口

5、分别启动redis redis-server cluster/redis_6380.conf

6、创建集群

redis-cli --cluster create 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 127.0.0.1:6385 --cluster-replicas 1如果不加–cluster-replicas 1则会创建6个主节点

7、通过端口连接redis

redis-cli -p 6384

使用命令 cluster info 查看集群信息

8、设置测试

连接6382端口redis获取test

获取成功


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/493312.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-06-14
下一篇2023-06-14

发表评论

登录后才能评论

评论列表(0条)

    保存