目录
4.编写哨兵文件 (每台redis服务器上都要进行以下的配置)
5.编写浮动vip脚本 (每台redis服务器上都要进行以下的配置)
1.在后台启动哨兵(每台redis服务器上都要进行以下的配置)
3.从数据库服务的效果 (只展示一台redis数据库服务器的效果)
2.用vip可以看到此时主数据库以及变化,相应的从库信息也变化了
3.可以看到此时主数据库服务器是192.168.4.23上了
4.原来的主数据库192.168.4.21修复好后重新加入集群后,将自动编程当前集群的从库
生产环境:
使用三台装有redis的服务器实现一台做主数据库服务器两台做从数据库服务器,在使用哨兵监控三台服务器。使得当主数据库服务器发生故障的时候,从数据库服务器可以在一定的时间内切换成主数据库服务器,在使用浮动vip的技术实现读写分离。
搭建步骤:
1.三台服务器配置ip地址分别是192.168.4.21 192.168.4.22 192.168.4.23
2.在三台服务器上配置redis服务器 redis-3.2.11
3.更改redis的配置文件,指定主从。
4.编写哨兵文件
5.编写浮动vip脚本
搭建的整体过程:
1.配置IP (只举例一台配置过程)
[root@redis21 ~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.4.21/24 connection.autoconnect yes
[root@redis21 ~]# nmcli connection up eth0
2.配置redis服务器(只举例一台配置过程)
[root@redis21 ~]# tar -xaf redis-3.2.11.tar.gz
[root@redis21 ~]# yum install -y gcc gcc-c++
[root@redis21 ~]# cd redis-3.2.11/
[root@redis21 redis-3.2.11]# make
[root@redis21 redis-3.2.11]# make install
[root@redis21 redis-3.2.11]# cd utils/
[root@redis21 utils]# ls
build-static-symbols.tcl corrupt_rdb.c generate-command-help.rb hyperloglog lru redis_init_script redis-sha1.rb speed-regression.tcl
cluster_fail_time.tcl create-cluster hashtable install_server.sh redis-copy.rb redis_init_script.tpl releasetools whatisdoing.sh
[root@redis21 utils]# ./install_server.sh
Welcome to the redis service installer
This script will help you easily set up a running redis server
Please select the redis port for this instance: [6379]
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf]
Selected default - /etc/redis/6379.conf
Please select the redis log file name [/var/log/redis_6379.log]
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379]
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server]
Selected config:
Port : 6379
Config file : /etc/redis/6379.conf
Log file : /var/log/redis_6379.log
Data dir : /var/lib/redis/6379
Executable : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort.
Copied /tmp/6379.conf => /etc/init.d/redis_6379
Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
Starting Redis server...
Installation successful!
[root@redis21 utils]# ss -untlp | grep redis
tcp LISTEN 0 128 127.0.0.1:6379 *:* users:(("redis-server",pid=5016,fd=4))
3.更改redis的配置文件,指定主从
主库的配置 (使用192.168.4.21做主机)
[root@redis21 ~]# vim /etc/redis/6379.conf
62 bind 0.0.0.0
85 port 6379
129 daemonize yes
[root@redis21 ~]# vim /etc/init.d/redis_6379 +43
$CLIEXEC -h 192.168.4.21 -p $REDISPORT shutdown
从库的配置(192.168.4.22,192.168.4.23) 在这两台机器上做以下相同的配置
[root@redis22 ~]# vim /etc/redis/6379.conf
62 bind 192.168.4.22
85 port 6379
129 daemonize yes
266 slaveof 192.168.4.21 6379
[root@redis22 ~]# vim /etc/init.d/redis_6379 +43
$C