Redis5.0.7群集搭建(最新版实战!!!)
发表于:2024-11-22 作者:千家信息网编辑
千家信息网最后更新 2024年11月22日,实验环境两台Centos 7虚拟机,均添加三块网卡用以模拟六台服务器实景服务器角色IP地址主节点M1192.168.142.130主节点M2192.168.142.145主节点M3192.168.14
千家信息网最后更新 2024年11月22日Redis5.0.7群集搭建(最新版实战!!!)
实验环境
两台Centos 7虚拟机,均添加三块网卡用以模拟六台服务器实景 | 服务器角色 | IP地址 |
---|---|---|
主节点M1 | 192.168.142.130 | |
主节点M2 | 192.168.142.145 | |
主节点M3 | 192.168.142.146 | |
从节点S1 | 192.168.142.143 | |
从节点S2 | 192.168.142.147 | |
从节点S3 | 192.168.142.148 |
实验步骤
第一步:安装Redis
#安装编译环境[root@localhost ~]# yum install gcc gcc-c++ make -y#远程挂载源码包[root@localhost ~]# mount.cifs //192.168.142.1/redis /mntPassword for root@//192.168.142.1/redis: #解压源码包[root@localhost ~]# cd /mnt[root@localhost mnt]# tar zxvf redis-5.0.7.tar.gz -C /opt#编译与安装[root@localhost mnt]# cd /opt/redis-5.0.7/[root@localhost redis-5.0.7]# make[root@localhost redis-5.0.7]# make PREFIX=/usr/local/redis/ install#建立服务命令软链接到系统[root@localhost redis-5.0.7]# ln -s /usr/redis/bin/* /usr/local/bin/#切入utils目录[root@localhost redis-5.0.7]# cd /opt/redis-5.0.7/utils/#执行启动脚本[root@localhost utils]# ./install_server.sh#以下内容,默认回车即可Welcome to the redis service installerThis script will help you easily set up a running redis serverPlease select the redis port for this instance: [6379] Selecting default: 6379Please select the redis config file name [/etc/redis/6379.conf] Selected default - /etc/redis/6379.confPlease select the redis log file name [/var/log/redis_6379.log] Selected default - /var/log/redis_6379.logPlease select the data directory for this instance [/var/lib/redis/6379] Selected default - /var/lib/redis/6379Please select the redis executable path [] /usr/local/redis/bin/redis-server#此处需手动指定扩展目录路径/usr/local/redis/bin/redis-server#使用进程控制启动服务[root@localhost utils]# /etc/init.d/redis_6379 startStarting Redis server...#配置redis的6379.conf文件,追加监听地址[root@localhost utils]# vim /etc/redis/6379.conf #注释第70行的监听127地址,已监听所有地址#bind 127.0.0.1 #去掉第89行注释关闭安全保护protected-mode no#去掉第93行注释,开启端口6379port 6379#去掉第137行注释,以独立进程启动daemonize yes#去掉第833行注释,开启群集功能cluster-enabled yes#去掉第841行注释,群集名称文件设置cluster-config-file nodes-6379.conf#去掉第847行注释,群集超时时间设置cluster-node-timeout 15000#去掉第700行注释,开启aof持久化appendonly yes#重启服务[root@localhost utils]# /etc/init.d/redis_6379 restartStopping ...Redis stoppedStarting Redis server...
第二步:主服务器安装rvm组件
#导入key文件[root@localhost utils]# gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3#安装rvm[root@localhost utils]# curl -sSL https://get.rvm.io | bash -s stable#执行环境变量[root@localhost utils]# source /etc/profile.d/rvm.sh#列出ruby可以安装的版本[root@localhost utils]# rvm list known#安装2.4.1 版本[root@localhost utils]# rvm install 2.4.1#使用rubyruby2.4.1 版本[root@localhost utils]# rvm use 2.4.1Using /usr/local/rvm/gems/ruby-2.4.1#查看当前ruby2.4.1 版本[root@localhost utils]# ruby -vruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]#再次安装Redis[root@localhost utils]# gem install redis
第三步:创建Redis集群
#加入所有节点地址,并加6379端口号[root@localhost utils]# redis-cli --cluster create 192.168.142.130:6379 192.168.142.145:6379 192.168.142.146:6379 192.168.142.143:6379 192.168.142.147:6379 192.168.142.148:6379 --cluster-replicas 1 >>> Performing hash slots allocation on 6 nodes...Master[0] -> Slots 0 - 5460Master[1] -> Slots 5461 - 10922Master[2] -> Slots 10923 - 16383Adding replica 192.168.142.147:6379 to 192.168.142.130:6379Adding replica 192.168.142.148:6379 to 192.168.142.145:6379Adding replica 192.168.142.143:6379 to 192.168.142.146:6379M: a27b43ec695099b36a5c79beae70cb0364f27338 192.168.142.130:6379 slots:[0-5460] (5461 slots) masterM: a27b43ec695099b36a5c79beae70cb0364f27338 192.168.142.145:6379 slots:[5461-10922] (5462 slots) masterM: a27b43ec695099b36a5c79beae70cb0364f27338 192.168.142.146:6379 slots:[10923-16383] (5461 slots) masterS: b6d317c5f192bf84e8f464ffbf6481529cd0708a 192.168.142.143:6379 replicates a27b43ec695099b36a5c79beae70cb0364f27338S: b6d317c5f192bf84e8f464ffbf6481529cd0708a 192.168.142.147:6379 replicates a27b43ec695099b36a5c79beae70cb0364f27338S: b6d317c5f192bf84e8f464ffbf6481529cd0708a 192.168.142.148:6379 replicates a27b43ec695099b36a5c79beae70cb0364f27338Can I set the above configuration? (type 'yes' to accept): yes>>> Nodes configuration updated>>> Assign a different config epoch to each node>>> Sending CLUSTER MEET messages to join the clusterWaiting for the cluster to join>>> Performing Cluster Check (using node 192.168.142.130:6379)M: a27b43ec695099b36a5c79beae70cb0364f27338 192.168.142.130:6379 slots:[0-16383] (16384 slots) master 1 additional replica(s)S: b6d317c5f192bf84e8f464ffbf6481529cd0708a 192.168.142.148:6379 slots: (0 slots) slave replicates a27b43ec695099b36a5c79beae70cb0364f27338[OK] All nodes agree about slots configuration.>>> Check for open slots...>>> Check slots coverage...[OK] All 16384 slots covered.
第四步:验证群集读写
#从主节点计入数据库写数据[root@localhost ~]# redis-cli -h 192.168.142.130 -p 6379192.168.142.130:6379> set name yangjiaOK192.168.142.130:6379> get name"yangjia"#从另一节点查看数据信息[root@localhost ~]# redis-cli -h 192.168.142.146 -p 6379192.168.142.146:6379> keys *1) "name"192.168.142.146:6379> get name"yangjia"#在从节点无法查看数据,提示切换主节点服务器地址[root@localhost ~]# redis-cli -h 192.168.142.143 -p 6379192.168.142.143:6379> keys *1) "name"192.168.142.143:6379> get name(error) MOVED 5798 192.168.142.146:6379
在Redis集群中,主节点服务器负责写入数据,从节点服务器负责备份主节点服务器的实时数据
节点
服务
注释
服务器
地址
数据
版本
文件
环境
监听
源码
目录
进程
集群
实验
编译
安全
信息
内容
再次
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
163vip邮箱的收件服务器
新建数据库用户架构修改
药品配送的数据库
数据库平台分布式
服众网络安全
服务器pe工具
河北达梦数据库
高考志愿大数据库电子表格
课程表类软件开发目的
德国6g网络技术研究
世博互联网科技中心20
在网站上如何显示数据库
青岛零线互动网络技术公司
cas 服务器端
防黑客的网络安全员要学习什么
lol服务器安全证书
h2数据库 安全性
网络安全宣传周移动办公篇
金蝶的数据库怎么设置
mysql数据库怎么创建
服务器可以开多少虚拟主机
安卓软件开发做音乐播放器
360网络安全武器
网络安全题目2017
双十一实时数据库
教育系统软件开发公司
杰冠网络技术苏州有限公司
服务器电源改sfx
如何关掉数据库实例orcl
数据库的安装包