在centos7下安装redis

可以使用docker安装,但是我还是喜欢直接装在服务器上,就此记录一下。

	我安装的是Redis6.2.1,到官网下载源码包[官网地址](https://redis.io/download)

由于redis是群投票机制,要求至少6个节点才能组成redis集群,我们使用了三台物理机,每台起2个redis节点。

IP端口
192.168.11.20116379,36379
192.168.11.20216379,36379
192.168.11.20316379,36379

我发现两个建集群,我开16379端口,26329也会占用,不知为什么,所以这里端口中间隔开26379。

下载Redis6.2.1,上传到服务器/usr/local路径下
/user/local

所有节点服务器都需要进行以下操作, 编译安装时要求gcc版本未5.3以上版本
先执行gcc -v 查看当前gcc版本
在这里插入图片描述
我们的服务器没有gcc编译器,所以需要安装gcc
在这里插入图片描述
Centos版本默认安装的是4.8.5版本的gcc,版本过低,需要升级,升级依次输入以下指令

yum install -y centos-release-scl
yum install -y devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
yum install -y systemd-devel
echo "source /opt/rh/devtoolset-9/enable" >> /etc/profile
source /etc/profile

升级完成后查看gcc版本

在这里插入图片描述
安装redis
解压之前上传的redis-6.2.1.tar.gz文件

tar -zxvf redis-6.2.1.tar.gz
进入redis-6.2.1文件夹

在这里插入图片描述
创建16379和36379两个文件夹,并将redis.conf配置文件分别复制进这2个文件夹

mkdir {16379,36379}
cp redis.conf 16379/redis16379.conf
cp redis.conf 36379/redis36379.conf

进入redis源码文件夹进行安装

cd /usr/local/redis-6.2.1/src/
make BUILD_WITH_SYSTEMD=yes USE_SYSTEMD=yes
make install

修改redis配置文件

vim /usr/local/redis-6.2.1/16379/redis16379.conf

其中,修改的配置项如下

#bind 0.0.0.0
protected-mode no
port 16379
protected-mode no
daemonize no
supervised systemd
pidfile /var/run/redis_16379.pid
logfile ""#需要日志文件就填写,如"/usr/local/redis/7001/7001.log"
appendonly yes
appendfilename "appendonly16379.aof"
cluster-enabled yes
cluster-config-file nodes-16379.conf
cluster-node-timeout 5000

如果自己定义的路径需要自己创建文件夹,redis并不会创建文件夹。
同理修改redis36379.conf,也可以将redis16379,conf复制一份到36379文件夹中,并将16379改为36379。

使用Systemd管理Redis服务

vim /etc/systemd/system/redis@.service
[Unit]
Description=Redis persistent key-value database
After=network.target
[Service]
Type=notify
ExecStart=/usr/local/bin/redis-server /usr/local/redis-6.2.1/%i/redis%i.conf  --supervised systemd
ExecStop=/usr/local/bin/redis-cli -p %i shutdown
LimitNOFILE=10240
TimeoutStartSec=90s
TimeoutStopSec=90s
Restart=always
[Install]
WantedBy=multi-user.target

如果后期要修改.service文件,需要执行systemctl daemon-reload指令,刷新.service文件
完成后,启动服务

systemctl start redis@16379.service
systemctl start redis@36379.service
netstat -lnp|grep redis

在这里插入图片描述
查看启动状态
在这里插入图片描述

设置开机自启动

systemctl enable redis@16379.service
systemctl enable redis@36379.service

以上操作在三台服务器都执行一遍。实例全部启动后 ,在任意服务器上创建redis集群。
注意:若未关闭防火墙,需要将需要的端口加入白名单。

firewall-cmd --zone=public --add-port=16379/tcp --permanent
firewall-cmd --zone=public --add-port=36379/tcp --permanent
firewall-cmd --reload

创建redis集群

redis-cli --cluster create 192.168.11.201:16379 192.168.11.201:36379 192.168.11.202:16379 192.168.11.202:36379 192.168.11.203:16379 192.168.11.203:36379 --cluster-replicas 1

如果创建失败,检查配置文件和配置文件里配置的文件夹权限。
查看集群节点

redis-cli -c -h 192.168.11.201 -p 16379 cluster nodes

删除redis集群
全部删除可以把所有redis节点关闭.

systemctl stop redis@16379.service
systemctl stop redis@36379.service

然后删除所有redis节点的以下文件
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值