NoSQL之Redis——Redis群集
发表于:2024-10-04 作者:千家信息网编辑
千家信息网最后更新 2024年10月04日,实验环境用两台服务器模拟6台服务器(添加网卡)主服务器M1 192.168.13.128主服务器M2 192.168.13.135主服务器M3 192.168.13.136从服务器S1 19
千家信息网最后更新 2024年10月04日NoSQL之Redis——Redis群集
实验环境
用两台服务器模拟6台服务器(添加网卡)
主服务器M1 192.168.13.128主服务器M2 192.168.13.135主服务器M3 192.168.13.136从服务器S1 192.168.13.129从服务器S2 192.168.13.137从服务器S3 192.168.13.138
1,在两台服务器上都安装Redis
[root@localhost ~]# yum install gcc gcc-c++ make -y ##安装环境组件[root@localhost ~]# mount.cifs //192.168.100.3/LNMP-C7 /mnt/ ##挂载Password for root@//192.168.100.3/LNMP-C7: [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]# cd 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##可执行文件路径[root@localhost utils]# ln -s /usr/local/redis/bin/* /usr/local/bin/ ##便于系统识别[root@localhost utils]# netstat -ntap | grep 6379tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 44510/redis-server
2,在两台服务器上修改配置文件
[root@localhost utils]# vim /etc/redis/6379.conf #bind 127.0.0.1 ##注释第70行的监听127地址,已监听所有地址protected-mode no ##去掉第89行注释关闭安全保护port 6379 ##去掉第93行注释,开启端口6379daemonize yes ##去掉第137行注释,以独立进程启动cluster-enabled yes ##去掉第833行注释,开启群集功能cluster-config-file nodes-6379.conf ##去掉第841行注释,群集名称文件设置cluster-node-timeout 15000 ##去掉第847行注释,群集超时时间设置appendonly yes ##去掉第700行注释,开启aof持久化[root@localhost utils]# /etc/init.d/redis_6379 restart ##重启服务Stopping ...Redis stoppedStarting Redis server...[root@localhost utils]# cd /var/lib/redis/6379/[root@localhost 6379]# lsappendonly.aof dump.rdb nodes-6379.conf ##生成aof,rdb和节点文件
3,在主服务器上安装rvm,Ruby控制群集软件
[root@master 6379]# gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3##导入key文件[root@master 6379]# curl -sSL https://get.rvm.io | bash -s stable ##安装rvm[root@localhost utils]# source /etc/profile.d/rvm.sh ##执行环境变量[root@localhost utils]# rvm list known ##列出ruby可以安装的版本[root@localhost utils]# rvm install 2.4.1 ##安装2.4.1 版本[root@localhost utils]# rvm use 2.4.1 ##使用rubyruby2.4.1 版本Using /usr/local/rvm/gems/ruby-2.4.1[root@localhost utils]# ruby -v ##查看当前ruby2.4.1 版本ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux][root@localhost utils]# gem install redis #再次安装Redis
4,在主服务器上添加两块网卡
[root@master ruby-2.4.1]# service network restart ##重启网卡[root@master ruby-2.4.1]# systemctl stop firewalld.service ##关闭防火墙[root@master ruby-2.4.1]# setenforce 0
5,在从服务器上也添加两块网卡
[root@slave utils]# service network restart ##重启网卡[root@slave utils]# systemctl stop firewalld.service ##关闭防火墙[root@slave utils]# setenforce 0
6,在master服务器上创建集群
##6个实例分为三组,每组一主一从[root@master ruby-2.4.1]# redis-cli --cluster create 192.168.13.128:6379 192.168.13.129:6379 192.168.13.135:6379 192.168.13.136:6379 192.168.13.137:6379 192.168.13.138: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.13.137:6379 to 192.168.13.128:6379Adding replica 192.168.13.138:6379 to 192.168.13.129:6379Adding replica 192.168.13.136:6379 to 192.168.13.135:6379M: 6e0414dbd3045b2793b07be884d7335fd008a72d 192.168.13.128:6379 slots:[0-5460] (5461 slots) master ##128,129,135为主M: cdea81d9007892c55c637e3416993d30fe297ba3 192.168.13.129:6379 slots:[5461-10922] (5462 slots) masterM: 6e0414dbd3045b2793b07be884d7335fd008a72d 192.168.13.135:6379 slots:[10923-16383] (5461 slots) masterS: 6e0414dbd3045b2793b07be884d7335fd008a72d 192.168.13.136:6379 replicates 6e0414dbd3045b2793b07be884d7335fd008a72d ##136,137,138为副本S: cdea81d9007892c55c637e3416993d30fe297ba3 192.168.13.137:6379 replicates 6e0414dbd3045b2793b07be884d7335fd008a72dS: cdea81d9007892c55c637e3416993d30fe297ba3 192.168.13.138:6379 replicates cdea81d9007892c55c637e3416993d30fe297ba3...Can I set the above configuration? (type 'yes' to accept): yes ##选择yes
7,验证群集读写原理
[root@master opt]# redis-cli -h 192.168.13.129 -p 6379 ##主服务器192.168.13.129:6379> set name zhangsan ##创建键值对OK 192.168.13.129:6379> keys *1) "name"192.168.13.129:6379> get name"zhangsan"192.168.13.129:6379> exit[root@master opt]# redis-cli -h 192.168.13.137 -p 6379 ##从服务器192.168.13.137:6379> keys * ##查看从上也有1) "name"192.168.13.137:6379> get name"zhangsan"[root@master opt]# redis-cli -h 192.168.13.128 -p 6379 192.168.13.128:6379> hset person age 20 ##用hash方式建立键值对(integer) 1192.168.13.128:6379> hset person name lisi(integer) 1192.168.13.128:6379> keys *1) "person"192.168.13.128:6379> hget person age ##获取键的值"20"192.168.13.128:6379> expire person 5 ##设置键的删除时间5s(integer) 1192.168.13.128:6379> keys *1) "person"192.168.13.128:6379> keys *(empty list or set)
谢谢阅读!
服务
服务器
文件
注释
网卡
版本
环境
配置
地址
时间
端口
防火墙
监听
防火
安全
再次
功能
原理
变量
名称
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
天纵网络技术有限公司
手机软件开发的模式
深入理解网络技术内幕目录
dir数据库
长城用什么服务器
网络安全金融大数据行业
奥凯小商王数据库连接失败
2017网络安全网站攻击
北京碰碰简聘网络技术有限公司
多个web应用访问一个数据库
跨数据库之间建立视图
软件开发企业财务部经理薪资待遇
忻州网络技术操作
公安信息网络安全有哪些
西门子软件开发难度
数据库连接测试sql
产品软件开发管理国家标准
数据录入数据库
软件开发课程基础学习班
常用软件开发技术要求
保险和互联网科技
数据库sql新建实例名
广西辰景网络技术有限公司
数据库表更新最快
软件开发和商务哪个好
服务器免费监控安全软件下载
关于软件开发生命周期
中航证券服务器在哪
研究生专业网络安全怎么找
警察网络安全高手