Centos 7.5安装部署redis 5.0.0集群

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos 7.5安装部署redis 5.0.0集群相关的知识,希望对你有一定的参考价值。

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。和Memcached类似,但它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set -有序集合)和hash(哈希类型)。与Memcached相同的是,为了保证访问效率,数据都是缓存在内存中;与Memcached不同的是,redis会周期性的把更新的数据写入磁盘或者写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
Redis的数据可以从master(主)服务器向任意数量的slave(从)服务器上同步,从服务器也可以是关联其他从服务器的主服务器,执行单层树复制,是Redis集群的一个重要特性。Redis集群最少要求6个节点,共需要6台机器,由于资源有限,我这边准备了3台机器,每台机器上配置两个节点。
系统环境

主机名 IP地址 操作系统 节点
Redis1 192.168.2.206 Centos 7.5 64位 Master port 7001、slave port 7002
Redis2 192.168.2.209 Centos 7.5 64位 Master port 7001、slave port 7002
Redis3 192.168.2.210 Centos 7.5 64位 Master port 7001、slave port 7002

一、安装redis

1、安装编译相关软件包

[[email protected] ~]# yum -y install make gcc gcc-c++ wget

2、下载redis并解压

[[email protected] tmp]# wget http://download.redis.io/releases/redis-5.0.0.tar.gz
[[email protected] tmp]# scp redis-5.0.0.tar.gz [email protected]:/tmp/
[[email protected] tmp]# scp redis-5.0.0.tar.gz [email protected]:/tmp/
[[email protected] tmp]# tar zxvf redis-5.0.0.tar.gz

3、安装redis

[[email protected] tmp]# cd redis-5.0.0/
[[email protected] redis-5.0.0]# make
[[email protected] redis-5.0.0]# make install PREFIX=/data/redis

技术分享图片
出现上图画面表示安装成功

二、配置集群环境

1、复制配置文件
注:每台机器两个实例,故需要复制两份对应的配置文件

[[email protected] redis-5.0.0]# mkdir /data/redis/conf
[[email protected] redis-5.0.0]# cp redis.conf /data/redis/conf/redis-7001.conf
[[email protected] redis-5.0.0]# cp redis.conf /data/redis/conf/redis-7002.conf

2、修改配置文件
修改以下地方

bind 192.168.2.206   #redis监听的本地IP地址
port 7001   #监听端口,另一个节点改为7002
daemonize yes   #开启后台运行,no表示运行在前台
pidfile /var/run/redis_7001.pid   #pid文件,另一个节点改为7002
appendonly yes   #开启aof日志,每次写操作都会记录一条日志
cluster-enabled yes   #开启集群,把注释#去掉
cluster-config-file nodes-7001.conf   #集群的配置文件,首次启动会自动创建,另一个节点改为7002
cluster-node-timeout 15000   #集群节点连接超时时间,15秒

3、添加firewalld防火墙允许端口

[[email protected] redis-5.0.0]# firewall-cmd --permanent --add-port=7001-7002/tcp
[[email protected] redis-5.0.0]# firewall-cmd --permanent --add-port=17001-17002/tcp
[[email protected] redis-5.0.0]# firewall-cmd --reload

4、启动redis服务
创建启动脚本,redis-all.sh

#!/bin/bash
/data/redis/bin/redis-server /data/redis/conf/redis-7001.conf
/data/redis/bin/redis-server /data/redis/conf/redis-7002.conf

将脚本分发到另外两台主机上

[[email protected] ~]# scp redis-all.sh [email protected]:/root/
[[email protected] ~]# scp redis-all.sh [email protected]:/root/

运行脚本,启动redis,每个节点都要启动

[[email protected] ~]# sh redis-all.sh

5、启动集群
创建启动集群脚本,redis-cluster.sh

#!/bin/bash
/data/redis/bin/redis-cli --cluster create 192.168.2.206:7001  192.168.2.209:7001 192.168.2.210:7001 192.168.2.206:7002 192.168.2.209:7002 192.168.2.210:7002 --cluster-replicas 1
参数说明
--cluster create:表示创建redis集群
--cluster-replicas 1:表示为集群中的每一个主节点指定一个从节点,即一比一的复制。

将脚本分发到另外两台主机上

[[email protected] ~]# scp redis-cluster.sh [email protected]:/root/
[[email protected] ~]# scp redis-cluster.sh [email protected]:/root/

运行脚本,启动集群,只需要在其中一个节点启动即可

[[email protected] ~]# sh redis-cluster.sh

注:中途需要输入yes来确认
技术分享图片

三、测试

1、设置redis集群密码
注:所有节点都需要设置密码,且密码必须一致。

[[email protected] ~]# /data/redis/bin/redis-cli -h 192.168.2.206 -p 7001 -c
192.168.2.206:7001> config set masterauth xuad123456
192.168.2.206:7001> config set requirepass xuad123456
192.168.2.206:7001> exit

2、将密码写入配置文件
注:所有节点都需要将密码写入配置文件

[[email protected] ~]# /data/redis/bin/redis-cli -h 192.168.2.206 -p 7001 -c -a xuad123456
192.168.2.206:7001> config rewrite
192.168.2.206:7001> exit

技术分享图片
3、查看密码

[[email protected] ~]# /data/redis/bin/redis-cli -h 192.168.2.206 -p 7001 -c -a xuad123456
192.168.2.209:7001> config get masterauth
192.168.2.209:7001> config get requirepass

技术分享图片

以上是关于Centos 7.5安装部署redis 5.0.0集群的主要内容,如果未能解决你的问题,请参考以下文章

CentOS 7.5 部署安装 Zabbix

CentOS6.10安装redis5.0

CENTOS 7.5部署安装ORACLE.11G数据库

Centos 7.5私有域名服务器部署(coredns+etcd)

CentOS 7.5上部署Zabbix 3.4

centos7部署pyenv安装python多版本