CenOS7下redis集群搭建

深藏阁楼爱情的钟 2022-05-16 10:45 273阅读 0赞

redis→NoSQL数据库

一、简介

1.redis是什么?

  • 是一个高性能的key-value内存级数据库
  • 能满足对海量数据的读写
  • redis的键只能是字符串
  • redis的值支持多种数据类型:

  • 字符串:string

  • 哈希:hash
  • 字符串列表:list
  • 字符串集合:set
  • 有序集合:sorted set
  • HyperLogLog结构:redis2.8.9版本之后才有,用来做统计的算法

2.redis的优点?

  • 高性能(Redis读的速度是11W次/s,写的速度是8.1W次/s)
  • 原子性(保证数据的准确性)
  • 持久存储(两种方式RDB/快照,AOF/日志)
  • 主从结构,主机会自动将数据同步到从机,可以进行读写分离
  • 从3.0版本开始,支持集群

3.redis的缺点?

  • 由于是内存数据库,所以,单台机器存储的数据量,跟机器本身的内存大小有关。虽然redis本身有key过期策略,但是还是需要提前预估和节约内存。如果内存增长过快,需要定期删除数据。
  • 修改配置文件,进行重启,将硬盘中的数据加载进内存,时间比较久。在这个过程中,redis不能提供服务。

4.redis的应用场景?

  • 主要应用在高并发和实时请求的场景
  • 关注列表,粉丝列表
  • 微博数,粉丝数
  • 热门微博

5.redis版本下载

  • https://redis.io/
  • 下载最新稳定版,如下图所示。

70

二、redis安装

1.软件环境

  • CentOS7
  • JDK1.8
  • redis3.2.8
  • 关闭防火墙或者打开6379端口(6379为redis默认端口)

2.安装准备

所有机器上都需要安装

输入 yum -y install cpp

输入 yum -y install binutils

输入 yum -y install glibc

输入 yum -y install glibc-kernheaders

输入 yum -y install glibc-common

输入 yum -y install glibc-devel

输入 yum -y install gcc

输入 yum -y install make

输入 yum -y install tcl

或者直接输入:

yum -y install cpp binutils glibc glibc-kernheaders glibc-common glibc-devel gcc make gcc-c++ libstdc++-devel tcl

70 1

3.redis安装

  • 输入mkdir /usr/local/redis,建立redis文件夹.上传tar包到 /usr/local/redis ,输入tar -zxvf redis-3.0.6.tar.gz解压

70 2

  • 进入解压后的目录

进入/usr/local/redis/redis-3.0.6目录下,输入 make编译并安装

70 3

  • 配置环境变量 vi /etc/profile。所有节点都需要配redis环境变量

REDIS_HOME=/usr/local/redis/redis-3.0.7

:$REDIS_HOME/bin

70 4

按:wq!保存配置文件,输入source /etc/profile是配置文件生效

70 5

  • 配置redis.conf文件
  • 进入/usr/local/redis/redis-3.0.7目录下,输入 vi redis.conf 修改配置文件,找到daemonize no ,将这里修改为yes,这个属性表示是否是守护线程






daemonize yes  #是否守护线程

logfile “redis.log”  #日志路径,配置化会在redis根目录下产生日志

70 670 7

  • 将redis-3.0.7/src目录下的redis-server移动到redis-3.0.7目录下

进入/usr/local/redis/redis-3.0.7/src目录下,输入mv redis-server ../70 8

  • 将redis分发到其他节点上

scp -r /usr/local/redis/ root@node1:/usr/local/

scp -r /usr/local/redis/ root@node2:/usr/local/

70 9

  • 在node1和node2节点上,进入/usr/local/redis/redis-3.0.7目录下,输入vi redis.conf ,在redis.conf中设置slaveof

slaveof 192.168.163.139 6379 #192.168.163.139是master主机的ip,6379为主机的端口号,默认为该机器是master从服务器。Node2操作相同

70 10

4.redis的服务端启动

  • 进入 cd /usr/local/redis/redis-3.0.6 目录,输入 redis-server redis.conf 即可启动

70 11

  • 此时启动后,服务端占用当前窗口,可以按Ctrl+c停止
  • 进入/usr/local/redis/redis-3.0.6/目录下,输入 vi redis.conf 修改配置文件,找到daemonize no ,将这里修改为yes,这个属性表示是否是守护线程

70 12

  • 然后输入再进入安装后redis的src目录下,输入 ./redis-server /usr/local/redis/redis-3.0.6/redis.conf
  • 可以输入 ps -ef|grep redis 查看redis进程

70 13

5.redis的客户端启动

  • 进入 /usr/local/redis/redis-3.0.6/src 目录,node1,node2启动同上

输入 redis-server redis.conf 即可启动,

输入redis-cli启动客户端

70 14

在master上输入INFO replication,查看集群信息

70 15

6.redis测试

  • 输入 set key value
  • 在任意机器上输入 get key
  • 也可以 keys key*
  • 退出 exit

70 16

7.redis服务端停止

方法一:

  • 进入安装后的bin目录
  • 输入 ./redis-cli shutdown 即可停止

方法二:

  • 输入 ps aux|grep nginx 查看进程
  • 或者 kill -9 pid(redis的进程id) 强制杀死master进程

8.redis设置密码

  1. 两种密码设置,一种是在redis.conf文件上配置,密码永久有效,设置后需重启集群。另外一种直接是命令设置,是临时密码,设置好不需要重启集群。
  • 进入/usr/local/redis/redis-3.0.6/目录下,输入 vi redis.conf 81ky701@YH.com%EF%BC%8C%E8%AE%BE%E7%BD%AE%E5%A5%BD%E5%90%8E%E9%87%8D%E5%90%AF%E9%9B%86%E7%BE%A4"">修改配置文件,设置密码ky701@YH.com,设置好后重启集群

如果对集群设置密码,那么requirepass**和masterauth**都需要设置,否则发生主从切换时,就会遇到授权问题,可以模拟并观察日志。

各个节点的密码都必须一致,否则Redirected**就会失败**

auth ‘xx@YH.com

70 17

70 18

70 19

第二种:

127.0.0.1:6379> config set masterauth xx@YH.com

127.0.0.1:6379> config set requirepass xx@YH.com

127.0.0.1:6379> config rewrite

70 20

输入config get requirepass 查看密码设置

70 21

设置密码,两种登录方式

  • redis-cli -h 172.26.177.93 -p 6379 -a xx@YH.com
  • 70 22
  • ./redis-cli -h 172.26.177.93 - p 6379

172.26.177.93:6379> auth xx@YH.com

70 23

发表评论

表情:
评论列表 (有 0 条评论,273人围观)

还没有评论,来说两句吧...

相关阅读