redis sentinel搭建

准备6个虚拟机(此处用户vagrant)

vagrant init envimation/ubuntu-xenial
修改Vagrantfile
配置网络模式和Ip(此处假设从30-35,配置30-32是redis,33-35是sentinel)
config.vm.network "public_network", ip:"192.168.1.30"

vagrant ssh

在所有虚拟机里执行

wget https://github.com/antirez/redis/archive/4.0.12.tar.gz
sudo apt-get update
sudo apt-get install -y libc6-dev
tar zxf 4.0.12.tar.gz
cd redis-4.0.12
make MALLOC=libc
sudo make install
cd utils
sudo ./install_server.sh(设置配置和可执行文件位置)
redis-server 你设置的配置文件路径(不指定会使用内置的默认设置)

修改30-32配置(如/etc/redis/redis.conf,改为你设置的路径)

3个都修改

bind 0.0.0.0

31修改优先级

slave-priority 50

启动30-32 redis

sudo redis-server /etc/redis/redis.conf

在31-32中执行

redis-cli
slaveof 192.168.1.30 6379
info(验证主从是否设置成功)

修改33-35配置(使用源码提供的sentinel配置, /home/vagrant/redis-4.0.12/sentinel.conf)

bind 0.0.0.0
sentinel monitor mymaster 192.168.1.30 6379 2

启动sentinel

redis-sentinel /home/vagrant/redis-4.0.12/sentinel.conf

在30中执行

sudo kill -s SIGTERM $(pgrep redis)

等sentinel中出现

827:X 18 Feb 08:20:28.205 # +switch-master mymaster 192.168.1.31 6379 192.168.1.32 6379

进入31执行

redis-cli
info (查看主从情况,验证是否切换为31,以为31priority 更低,也就是优先级更高)

你可能感兴趣的:(redis sentinel搭建)