非关系数据库——redis群集
admin
2023-03-27 15:41:37
0

redis群集,实验环境两台服务器,六个节点,每台服务器三个网卡

6个节点三个主,三个副本

主服务器安装redis

[root@localhost ~]# yum install gcc gcc-c++ make -y  #安装环境包
[root@localhost ~]# mkdir /abc
[root@localhost ~]# mount.cifs //192.168.100.25/redis /abc/ 挂载
Password for root@//192.168.100.25/redis:  
[root@localhost ~]# cd /abc/
[root@localhost abc]# ls
redis-5.0.7.tar.gz
[root@localhost abc]# tar zxvf redis-5.0.7.tar.gz -C /opt/ #解压到opt底下
[root@localhost abc]# cd /opt/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/local/redis/bin/* /usr/local/bin/ #做软连接
[root@localhost redis-5.0.7]# cd /opt/redis-5.0.7/utils/
[root@localhost utils]# ./install_server.sh 
Welcome to the redis service installer
This script will help you easily set up a running redis server

Please select the redis port for this instance: [6379] 
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf] 
Selected default - /etc/redis/6379.conf
Please select the redis log file name [/var/log/redis_6379.log] 
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379] 
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server] /usr/local/redis/bin/redis-server

从服务器(一样的操作不重复了)

主服务器配置redis

带“#”的原本配置文件的内容方便写shell脚本

[root@localhost utils]# vim /etc/redis/6379.conf 
  #70 bind 127.0.0.1
  70 #bind 127.0.0.1
  #89 protected-mode yes
  89 protected-mode no #关闭保护功能
#833 # cluster-enabled yes
833  cluster-enabled yes  #开启群集功能
#841 # cluster-config-file nodes-6379.conf
841  cluster-config-file nodes-6379.conf #开启群集功能配置文件
#847 # cluster-node-timeout 15000
847  cluster-node-timeout 15000 #设置群集超时时间为15000秒
 #700 appendonly no
 700 appendonly yes #开启AOF支持
[root@localhost redis]# /etc/init.d/redis_6379 restart #开起redis
Stopping ...
Waiting for Redis to shutdown ...
Redis stopped
Starting Redis server...
[root@localhost utils]# cd /var/lib/redis/
[root@localhost redis]# cd 6379/
[root@localhost 6379]# ls
appendonly.aof  dump.rdb  nodes-6379.conf
#aof配置文件,rdb快照文件,节点配置文件

从服务器一样的操作

主服务器安装rvm,ruby控制群集

gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 #导入密钥
[root@localhost 6379]# curl -sSL https://get.rvm.io | bash -s stable #寻找这个地址安装RVM

[root@localhost 6379]# cd /opt/
[root@localhost opt]# ls
redis-5.0.7  rh
[root@localhost opt]# vim abc.sh #rvm的脚本很长
[root@localhost opt]# ls
abc.sh  redis-5.0.7  rh
[root@localhost opt]# chmod +x abc.sh 
[root@localhost opt]# ls
abc.sh  redis-5.0.7  rh
[root@localhost opt]# source /etc/profile.d/rvm.sh 
[root@localhost opt]# rvm list known #查看rvm安装的版本

[root@localhost opt]# rvm install 2.4.1 #安装rvm2.4.1版本

[root@localhost opt]# rvm use 2.4.1 #使用rvm
Using /usr/local/rvm/gems/ruby-2.4.1
[root@localhost opt]# ruby -v #查看ruby的版本
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
[root@localhost opt]# gem install redis #安装redis

主服务器安装三块网卡
192.168.136.229
192.168.136.232
192.168.136.231
从服务器安装三块网卡
192.168.136.185
192.168.136.233
192.168.136.234

非关系数据库——redis群集

两台服务器都重启网路服务

[root@localhost opt]# systemctl restart network

两台服务器关闭防火墙和增强功能

[root@localhost opt]# systemctl stop firewalld.service
[root@localhost opt]# setenforce 0

主服务器,重启redis,创建群集

[root@localhost 6379]# /etc/init.d/redis_6379 restart #重启redis
redis-cli --cluster create 192.168.136.229:6379 192.168.136.232:6379 192.168.136.231:6379 192.168.136.185:6379 192.168.136.233:6379 192.168.136.234:6379 --cluster-replicas 1

Can I set the above configuration? (type 'yes' to accept): yes #出现这行输入yes
三个节点master,三个副本节点,彼此对应关系是随机的,但是是一主带一从。

开始验证

[root@localhost opt]# redis-cli -h 192.168.136.229 -p 6379 #登录一台主服务器229
192.168.136.229:6379> set name zhangsan #创建键值对
OK
192.168.136.229:6379> keys * #查看所有键
1) "name"
192.168.136.229:6379> get name  #查看值
"zhangsan"
192.168.136.229:6379> quit
[root@localhost opt]# redis-cli -h 192.168.136.234 -p 6379 #登录一台从服务器234
192.168.136.234:6379> keys *
1) "name"
192.168.136.234:6379> get name #查看数据,查看不了,会提示你数据存放在231服务器中
(error) MOVED 5798 192.168.136.231:6379
[root@localhost opt]# redis-cli -h 192.168.136.231 -p 6379 #登录231服务器,就看到数据了
192.168.136.231:6379> keys *
1) "name"
192.168.136.231:6379> get name
"zhangsan"

用hash方式建立键值对,设置键的删除时间

[root@master opt]# redis-cli -h 192.168.136.229 -p 6379 
192.168.136.229:6379> hset person age 20   ##用hash方式建立键值对
(integer) 1
192.168.136.229:6379> hset person name lisi
(integer) 1
192.168.136.229:6379> keys *
1) "person"
192.168.136.229:6379> hget person age   ##获取键的值
"20"
192.168.136.229.128:6379> expire person 5     ##设置键的删除时间5s
(integer) 1
192.168.136.229:6379> keys *
1) "person"
192.168.136.229:6379> keys *
(empty list or set)

以上就是我们全部的内容了,谢谢收看

相关内容

热门资讯

特朗普下令不打了,美国的“余粮... 可以说戛然而止,快得让很多人都无法适应。前两周,每一天美国都要打击伊朗一通。就在7月24日白宫会议前...
穆杰塔巴最新表态:支持黎真主党 △伊朗最高领袖穆杰塔巴·哈梅内伊(资料图)当地时间7月26日晚,伊朗最高领袖穆杰塔巴·哈梅内伊对黎巴...
美军瘫痪一艘驶向伊朗的油轮,特... 美国总统特朗普虽下令暂停打击伊朗,但美军仍在执行对霍尔木兹海峡的封锁任务。针对美军瘫痪一艘驶向伊朗油...
“小牌大耍”的底气到底是哪里来... 澎湃首席评论员 李平这两天,“艺人李权哲乘高铁占座事件”在网上引发热议,该艺人参加的活动主办方曾发布...
越南籍船舶南海遇险沉没,中方已... 据凤凰卫视报道,一艘越南船舶7月24日夜间在越南庆和以东220海里附近遇险沉没,船上共62名越南籍人...
李权哲占座、蒙面、装死:娱乐圈... 你买了一张高铁一等座的票,找到自己的位置,18A。有人坐着。你拿出手机看了眼购票记录——没错,18A...
杭州景区咖啡店闯入1条幼蛇,仅... 夏天气温高、湿度大,蛇类活动进入高峰期,千万别被“小蛇无害”的刻板印象骗了!有些幼蛇看着迷你可爱,实...
AI开源公开信签署企业增至50... IT之家 7 月 26 日消息,英伟达、微软、IBM、Meta 等 25 家美国科技企业本周(7 月...
南阳快手短视频代运营企业的服务... 在短视频平台快速发展的背景下,企业通过快手等渠道进行内容运营已成为常见的市场动作。对于希望借助短视频...
普通人该如何跟上科技发展的步伐 这个被称作科技的词汇, 听起来既有宏大之感, 又颇为遥远, 好似仅仅归属于在实验室里专心致志钻研的科...