Redis一主二从环境搭建
一主二从
准备工作
-
安装VMWare
-
下载镜像
-
创建下面的目录
- Redis-Cluster
- master
- master
- vmdk
- slave00
- slave00
- vmdk
- slave01
- slave00
- vmdk
- master
- Redis-Cluster
VMWare中安装CentOS7
- 自定义(高级)
-
默认
-
安装程序光盘映像文件
-
命名虚拟机,选择我们刚才创建的文件夹
-
处理器配置
-
配置内存
-
选择NAT网络
-
下面的选项都是默认
-
创建虚拟磁盘
-
分配内存大小
-
选择刚才创建的文件夹
-
完成
-
自动启动,选择第一项后,回车
-
选择中文
-
带有黄色感叹号的点进去后直接点击左上角的完成即可,无需更改任何配置
-
创建用户,设置root密码,等待安装完成就可以了
按照上述的操作步骤在安装两台系统
上述的第 4、11选之前创建的slave00、slave01文件夹下的对应文件夹
修改配置
为了方便下面会称
CentOS-Redis-Master 为 m
CentOS-Redis-Slave00为 s0
CentOS-Redis-Slave01 为 s1
分别将三台主机的localhost修改为:master、slave00、slave01
-
进入root
su # 输入密码
-
修改hostname文件
vi /etc/hostname # 删除 localhost.localdomain # m写入 master # s0写入 slave00 # s1写入 slave01
-
重启
配置网络
-
进入root
su
-
修改配置文件
vi /etc/sysconfig/network-scripts/ifcfg-ens33 # 修改 BOOTPROTO 为 static BOOTPROTO=static # 修改 ONBOOT 为 yes ONBOOT=yes # 在末尾添加下面的配置项 # 下面的 X.Y.Z需要修改成自己的地址的前三位,111为0~255之间的随机数 # 三台 linux 的 IPADDR 的最后一位不能重复 IPADDR=X.Y.Z.111 NATEMASK=255.255.255.0 GATEWAY=X.Y.Z.2 DNS1=8.8.8.8 DNS2=61.139.2.69
如何查看自己IP的前三位?
VMWare左上角 编辑 ——> 虚拟网络编辑器 ——> Vmnet8
-
重启
-
ping
ping www.baidu.com
如果能够ping通,则网络成功。
三台主机互通(互 ping),如果三台主机能够相互ping通,则成功
关闭防火
三台主机防火墙都需要关闭
systemctl disable firewalld
systemctl stop firewalld
安装redis单机
参考文章:CentOS下安装Redis7教程
只需要做到 拷贝配置文件 之前就可以了,redis一主二从拷贝配置文件使用下面的步骤。
拷贝配置文件
master
cd /opt/redis-7.0.9
mkdir /myredis
cp redis.conf /myredis/redis6379.conf
slave00
cd /opt/redis-7.0.9
mkdir /myredis
cp redis.conf /myredis/redis6380.conf
slave01
cd /opt/redis-7.0.9
mkdir /myredis
cp redis.conf /myredis/redis6381.conf
配置文件
master
# 修改 daemonize no 为 daemonize yes
daemonize yes
# 注释 bind 127.0.0.1 -::1
# bind 127.0.0.1 -::1
# 修改 protected-mode yes 为 protected-mode no
protected-mode no
# 指定端口
port 6379
# 指定当前的工作目录(修改 dir ./ 为 dir /myredis)
dir /myredis
# pid文件名字,pidfile
pidfile /var/run/redis_6379.pid
# log文件名字,logfile(修改 logfile "" 为 logfile "/myredis/6379.log")
logfile "/myredis/6379.log"
# requirepass foobared 取消注释,设置密码
requirepass 1234
# 修改 dbfilename dump.rdb 为 dbfilename dump6379.rdb
dbfilename dump6379.rdb
# 可选配置
# 修改 appendonly no 为 appendonly yes
appendonly yes
slave00
# 修改 daemonize no 为 daemonize yes
daemonize yes
# 注释 bind 127.0.0.1 -::1
# bind 127.0.0.1 -::1
# 修改 protected-mode yes 为 protected-mode no
protected-mode no
# 指定端口
port 6380
# 指定当前的工作目录(修改 dir ./ 为 dir /myredis)
dir /myredis
# pid文件名字,pidfile
pidfile /var/run/redis_6380.pid
# log文件名字,logfile(修改 logfile "" 为 logfile "/myredis/6380.log")
logfile "/myredis/6380.log"
# requirepass foobared 取消注释,设置密码
requirepass 1234
# 修改 dbfilename dump.rdb 为 dbfilename dump6380.rdb
dbfilename dump6380.rdb
# 可选配置
# 修改 appendonly no 为 appendonly yes
appendonly yes
# 在 # replicaof <masterip> <masterport> 下添加
# replicaof 主机ip 主机端口
replicaof 192.168.157.115 6379
# 在 # masterauth <master-password> 下添加
# masterauth 主机中配置的密码
masterauth "1234"
slave01
# 修改 daemonize no 为 daemonize yes
daemonize yes
# 注释 bind 127.0.0.1 -::1
# bind 127.0.0.1 -::1
# 修改 protected-mode yes 为 protected-mode no
protected-mode no
# 指定端口
port 6381
# 指定当前的工作目录(修改 dir ./ 为 dir /myredis)
dir /myredis
# pid文件名字,pidfile
pidfile /var/run/redis_6381.pid
# log文件名字,logfile(修改 logfile "" 为 logfile "/myredis/6381.log")
logfile "/myredis/6381.log"
# requirepass foobared 取消注释,设置密码
requirepass 1234
# 修改 dbfilename dump.rdb 为 dbfilename dump6381.rdb
dbfilename dump6381.rdb
# 可选配置
# 修改 appendonly no 为 appendonly yes
appendonly yes
# 在 # replicaof <masterip> <masterport> 下添加
# replicaof 主机ip 主机端口
replicaof 192.168.157.115 6379
# 在 # masterauth <master-password> 下添加
# masterauth 主机中配置的密码
masterauth "1234"
测试是否成功
分别启动三台主机
默认是 6379 端口,需要指定端口号启动
redis-server /myredis/redis6379.conf
redis-cli -a 1234
redis-server /myredis/redis6380.conf
redis-cli -a 1234 -p 6380
redis-server /myredis/redis6381.conf
redis-cli -a 1234 -p 6381
查看主机 master 的日志
cd /myredis
cat 6379.log
同理查看从机的日志。