You've already forked www.colben.cn
update
This commit is contained in:
121
content/post/redis-sentinel.md
Normal file
121
content/post/redis-sentinel.md
Normal file
@@ -0,0 +1,121 @@
|
||||
---
|
||||
title: "Redis Sentinel"
|
||||
date: 2019-10-30T11:37:36+08:00
|
||||
lastmod: 2019-10-30T11:37:36+08:00
|
||||
tags: ["redis", "sentinel", "哨兵"]
|
||||
categories: ["database"]
|
||||
---
|
||||
|
||||
# 环境
|
||||
主机名 | 地址 | 操作系统 | 初始状态
|
||||
---- | ---- | ---- | ----
|
||||
sentinel86 | 10.1.14.86 | CentOS7.4 | null
|
||||
redis87 | 10.1.14.87 | CentOS7.4 | master
|
||||
redis88 | 10.1.14.88 | CentOS7.4 | slave
|
||||
redis89 | 10.1.14.89 | CentOS7.4 | slave
|
||||
|
||||
# 安装 redis
|
||||
- 在全部服务器上安装 redis
|
||||
```bash
|
||||
yum install epel-release
|
||||
yum install redis
|
||||
```
|
||||
|
||||
# redis master 配置
|
||||
- 在 redis87 上修改 /etc/redis.conf
|
||||
```
|
||||
bind 0.0.0.0
|
||||
```
|
||||
|
||||
# redis slave 配置
|
||||
- 在 redis88 和 redis89 上修改 /etc/redis.conf
|
||||
```
|
||||
bind 0.0.0.0
|
||||
slaveof 10.1.14.87 6379
|
||||
```
|
||||
|
||||
# redis sentinel 配置
|
||||
- 在 sentinel86 上创建三个 sentinel 配置文件
|
||||
```bash
|
||||
cd /etc/
|
||||
cp redis-sentinel.conf redis-sentinel-16379.conf
|
||||
cp redis-sentinel.conf redis-sentinel-26379.conf
|
||||
mv redis-sentinel.conf redis-sentinel-36379.conf
|
||||
chown redis.root redis-sentinel-?6379.conf
|
||||
```
|
||||
- 修改 /etc/redis-sentinel-16379.conf
|
||||
```
|
||||
bind 0.0.0.0
|
||||
port 16379
|
||||
dir /var/log/redis/16379
|
||||
sentinel monitor mymaster 10.1.14.87 6379 2
|
||||
sentinel down-after-milliseconds mymaster 8000
|
||||
logfile /var/log/redis/16379/sentinel.log
|
||||
```
|
||||
- 修改 /etc/redis-sentinel-26379.conf
|
||||
```
|
||||
bind 0.0.0.0
|
||||
port 26379
|
||||
dir /var/log/redis/26379
|
||||
sentinel monitor mymaster 10.1.14.87 6379 2
|
||||
sentinel down-after-milliseconds mymaster 8000
|
||||
logfile /var/log/redis/26379/sentinel.log
|
||||
```
|
||||
- 修改 /etc/redis-sentinel-36379.conf
|
||||
```
|
||||
bind 0.0.0.0
|
||||
port 36379
|
||||
dir /var/log/redis/36379
|
||||
sentinel monitor mymaster 10.1.14.87 6379 2
|
||||
sentinel down-after-milliseconds mymaster 8000
|
||||
logfile /var/log/redis/36379/sentinel.log
|
||||
```
|
||||
- 创建日志目录
|
||||
```bash
|
||||
cd /var/log/redis/
|
||||
mkdir 16379 26379 36379
|
||||
chown redis.redis ?6379 -R
|
||||
```
|
||||
- 创建两个 sentinel service 文件
|
||||
```bash
|
||||
cd /usr/lib/systemd/system/
|
||||
cp redis-sentinel.service redis-sentinel-16379.service
|
||||
cp redis-sentinel.service redis-sentinel-26379.service
|
||||
mv redis-sentinel.service redis-sentinel-36379.service
|
||||
```
|
||||
- 修改 /usr/lib/systemd/system/redis-sentinel-16379.service
|
||||
```
|
||||
ExecStart=/usr/bin/redis-sentinel /etc/redis-sentinel-16379.conf --daemonize no
|
||||
ExecStop=/usr/libexec/redis-shutdown redis-sentinel-16379
|
||||
```
|
||||
- 修改 /usr/lib/systemd/system/redis-sentinel-26379.service
|
||||
```
|
||||
ExecStart=/usr/bin/redis-sentinel /etc/redis-sentinel-26379.conf --daemonize no
|
||||
ExecStop=/usr/libexec/redis-shutdown redis-sentinel-26379
|
||||
```
|
||||
- 修改 /usr/lib/systemd/system/redis-sentinel-36379.service
|
||||
```
|
||||
ExecStart=/usr/bin/redis-sentinel /etc/redis-sentinel-36379.conf --daemonize no
|
||||
ExecStop=/usr/libexec/redis-shutdown redis-sentinel-36379
|
||||
```
|
||||
- 更新服务
|
||||
```bash
|
||||
systemctl daemon-reload
|
||||
```
|
||||
|
||||
# 启动 redis 服务
|
||||
- 在 redis87、redis88 和 redis89 上启动 redis 服务
|
||||
```bash
|
||||
systemctl start redis
|
||||
# 查看当前节点主从信息
|
||||
redis-cli info replication
|
||||
```
|
||||
|
||||
# 启动 redis sentinel 监控
|
||||
- 在 sentinel86 上启动 sentinel 监管程序
|
||||
```bash
|
||||
systemctl start redis-sentinel-16379
|
||||
systemctl start redis-sentinel-26379
|
||||
systemctl start redis-sentinel-36379
|
||||
```
|
||||
|
Reference in New Issue
Block a user