redis之sentinel集群部署

节点IP信息

主节点1:192.168.125.148

主节点2:192.168.125.149

从节点1:192.168.125.150

安装必要的软件包

yum -y install  gcc wget lrzsz net-tools

下载redis源码包4.0.8

cd /usr/local/src/

wgethttp://download.redis.io/releases/redis-4.0.8.tar.gz

编译安装

# tar -zxvfredis-4.0.8.tar.gz && cd redis-4.0.8

# mkdir -p/app/redis/conf;mkdir -p /app/logs/redis/;mkdir -p /data/redis

# make && makePREFIX=/app/redis install

# vim/app/redis/conf/redis.conf  #主节点1

bind 192.168.125.148127.0.0.1

protected-mode no

port 6379

tcp-backlog 1024

timeout 0

tcp-keepalive 300

daemonize no

supervised systemd

pidfile"/var/run/redis.pid"

loglevel notice

logfile"/app/logs/redis/redis.log"

dir"/data/redis"

databases 16

always-show-logo yes

########关闭rdb持久化################

save ""

#save 900 1

#save 300 10

#save 60 10000

stop-writes-on-bgsave-erroryes

rdbcompression yes

rdbchecksum yes

dbfilename"dump.rdb"

######################################

masterauth"redis123456"

requirepass"redis123456"

slave-serve-stale-datayes

slave-read-only yes

repl-diskless-sync no

repl-diskless-sync-delay5

repl-disable-tcp-nodelayno

slave-priority 100

min-slaves-to-write 0

min-slaves-max-lag 10

maxclients 10000


lazyfree-lazy-evictionno

lazyfree-lazy-expireno

lazyfree-lazy-server-delno

slave-lazy-flush no

##############aof持久化##############

appendonly yes

appendfilename"appendonly.aof"

#appendfsync everysec

appendfsync no

no-appendfsync-on-rewriteno

auto-aof-rewrite-percentage100

auto-aof-rewrite-min-size64mb

aof-load-truncated yes

aof-use-rdb-preamble no

######################################

lua-time-limit 5000

slowlog-log-slower-than10000

slowlog-max-len 128

latency-monitor-threshold100

notify-keyspace-events""

hash-max-ziplist-entries512

hash-max-ziplist-value64

list-max-ziplist-size-2

list-compress-depth 0

set-max-intset-entries512

zset-max-ziplist-entries128

zset-max-ziplist-value64

hll-sparse-max-bytes3000

activerehashing yes

client-output-buffer-limitnormal 0 0 0

client-output-buffer-limitslave 2gb 2gb 60

client-output-buffer-limitpubsub 32mb 8mb 60

hz 10

aof-rewrite-incremental-fsyncyes

##Enabled activedefragmentation######

activedefrag yes

active-defrag-ignore-bytes100mb

active-defrag-threshold-lower10

active-defrag-threshold-upper100

active-defrag-cycle-min25

active-defrag-cycle-max55

##############renamecommand##########

#rename-commandKEYS     "NYKJKEYS"

rename-commandFLUSHALL "NYKJFLUSHALL"

rename-commandFLUSHDB  "NYKJFLUSHDB"

#rename-commandCONFIG   "NYKJCONFIG"

##############masterinfo############


# Generated by CONFIGREWRITE

# vim/app/redis/conf/redis.conf  #主节点2

bind 192.168.125.149127.0.0.1

protected-mode no

port 6379

tcp-backlog 1024

timeout 0

tcp-keepalive 300

daemonize no

supervised systemd

pidfile"/var/run/redis.pid"

loglevel notice

logfile"/app/logs/redis/redis.log"

dir"/data/redis"

databases 16

always-show-logo yes

########关闭rdb持久化################


#save 900 1

#save 300 10

#save 60 10000

stop-writes-on-bgsave-erroryes

rdbcompression yes

rdbchecksum yes

dbfilename"dump.rdb"

######################################

masterauth"redis123456"

requirepass"redis123456"

slave-serve-stale-datayes

slave-read-only yes

repl-diskless-sync no

repl-diskless-sync-delay5

repl-disable-tcp-nodelayno

slave-priority 100

min-slaves-to-write 0

min-slaves-max-lag 10

maxclients 10000


lazyfree-lazy-evictionno

lazyfree-lazy-expireno

lazyfree-lazy-server-delno

slave-lazy-flush no

##############aof持久化##############

appendonly yes

appendfilename"appendonly.aof"

#appendfsync everysec

appendfsync no

no-appendfsync-on-rewriteno

auto-aof-rewrite-percentage100

auto-aof-rewrite-min-size64mb

aof-load-truncated yes

aof-use-rdb-preambleno

######################################

lua-time-limit 5000

slowlog-log-slower-than10000

slowlog-max-len 128

latency-monitor-threshold100

notify-keyspace-events""

hash-max-ziplist-entries512

hash-max-ziplist-value64

list-max-ziplist-size-2

list-compress-depth 0

set-max-intset-entries512

zset-max-ziplist-entries128

zset-max-ziplist-value64

hll-sparse-max-bytes3000

activerehashing yes

client-output-buffer-limitnormal 0 0 0

client-output-buffer-limitslave 2gb 2gb 60

client-output-buffer-limitpubsub 32mb 8mb 60

hz 10

aof-rewrite-incremental-fsyncyes

##Enabled activedefragmentation######

activedefrag yes

active-defrag-ignore-bytes100mb

active-defrag-threshold-lower10

active-defrag-threshold-upper100

active-defrag-cycle-min25

active-defrag-cycle-max55

##############renamecommand##########

#rename-command KEYS    "NYKJKEYS"

rename-commandFLUSHALL "NYKJFLUSHALL"

rename-commandFLUSHDB  "NYKJFLUSHDB"

#rename-commandCONFIG   "NYKJCONFIG"

##############masterinfo############


# Generated by CONFIGREWRITE

slaveof 192.168.125.1486379

# vim/app/redis/conf/redis.conf  #从节点1

bind 192.168.125.150127.0.0.1

protected-mode no

port 6379

tcp-backlog 1024

timeout 0

tcp-keepalive 300

daemonize no

supervised systemd

pidfile"/var/run/redis.pid"

loglevel notice

logfile"/app/logs/redis/redis.log"

dir"/data/redis"

databases 16

always-show-logo yes

########关闭rdb持久化################


#save 900 1

#save 300 10

#save 60 10000

stop-writes-on-bgsave-erroryes

rdbcompression yes

rdbchecksum yes

dbfilename"dump.rdb"

######################################

masterauth"redis123456"

requirepass"redis123456"

slave-serve-stale-datayes

slave-read-only yes

repl-diskless-sync no

repl-diskless-sync-delay5

repl-disable-tcp-nodelayno

slave-priority 0

min-slaves-to-write 0

min-slaves-max-lag 10

maxclients 10000


lazyfree-lazy-evictionno

lazyfree-lazy-expireno

lazyfree-lazy-server-delno

slave-lazy-flush no

##############aof持久化##############

appendonly yes

appendfilename"appendonly.aof"

#appendfsync everysec

appendfsync no

no-appendfsync-on-rewriteno

auto-aof-rewrite-percentage100

auto-aof-rewrite-min-size64mb

aof-load-truncated yes

aof-use-rdb-preambleno

######################################

lua-time-limit 5000

slowlog-log-slower-than10000

slowlog-max-len 128

latency-monitor-threshold100

notify-keyspace-events""

hash-max-ziplist-entries512

hash-max-ziplist-value64

list-max-ziplist-size-2

list-compress-depth 0

set-max-intset-entries512

zset-max-ziplist-entries128

zset-max-ziplist-value64

hll-sparse-max-bytes3000

activerehashing yes

client-output-buffer-limitnormal 0 0 0

client-output-buffer-limitslave 2gb 2gb 60

client-output-buffer-limitpubsub 32mb 8mb 60

hz 10

aof-rewrite-incremental-fsyncyes

##Enabled activedefragmentation######

activedefrag yes

active-defrag-ignore-bytes100mb

active-defrag-threshold-lower10

active-defrag-threshold-upper100

active-defrag-cycle-min25

active-defrag-cycle-max55

##############renamecommand##########

#rename-commandKEYS     "NYKJKEYS"

rename-commandFLUSHALL "NYKJFLUSHALL"

rename-commandFLUSHDB  "NYKJFLUSHDB"

#rename-commandCONFIG   "NYKJCONFIG"

##############masterinfo############


# Generated by CONFIGREWRITE


slaveof 192.168.125.1486379

# vim/app/redis/conf/sentinel.conf   #主节点1

bind 192.168.125.148 127.0.0.1

port 26379

dir "/tmp"

daemonize yes

loglevel notice

logfile"/app/logs/redis/sentinel.log"


sentinel monitorSentinel4OL 192.168.125.148 6379 2

sentineldown-after-milliseconds Sentinel4OL 10000

sentinelfailover-timeout Sentinel4OL 30000

sentinel auth-passSentinel4OL redis123456

sentinel config-epochSentinel4OL 1

sentinel leader-epochSentinel4OL 6

# vim/app/redis/conf/sentinel.conf   #主节点2

bind 192.168.125.149 127.0.0.1

port 26379

dir "/tmp"

daemonize yes

loglevel notice

logfile"/app/logs/redis/sentinel.log"


sentinel monitorSentinel4OL 192.168.125.148 6379 2

sentineldown-after-milliseconds Sentinel4OL 10000

sentinelfailover-timeout Sentinel4OL 30000

sentinel auth-passSentinel4OL redis123456

sentinel config-epochSentinel4OL 1

sentinel leader-epochSentinel4OL 6

# vim/app/redis/conf/sentinel.conf   #从节点1

bind 192.168.125.150 127.0.0.1

port 26379

dir "/tmp"

daemonize yes

loglevel notice

logfile"/app/logs/redis/sentinel.log"


sentinel monitorSentinel4OL 192.168.125.148 6379 2

sentineldown-after-milliseconds Sentinel4OL 10000

sentinelfailover-timeout Sentinel4OL 30000

sentinel auth-passSentinel4OL redis123456

sentinel config-epochSentinel4OL 1

sentinel leader-epochSentinel4OL 6

#cd /etc/systemd/system/

#vim redis.service

[Unit]

Description=Redis4.0.x For Sentinel Servcie

After=network.target

[Service]

Type=simple

PIDFile=/var/run/redis.pid

LimitNOFILE=65535

ExecStart=/app/redis/bin/redis-server/app/redis/conf/redis.conf --daemonize no

ExecReload=/bin/kill-HUP $MAINPID

User=nobody

[Install]

WantedBy=multi-user.target

#vim sentinel.service

#sentinel systemd启动脚本

[Unit]

Description=Redis4.0.x Sentinel Servcie

After=network.target

[Service]

Type=forking

LimitNOFILE=65535

ExecStart=/app/redis/bin/redis-server/app/redis/conf/sentinel.conf --sentinel

ExecReload=/bin/kill-HUP $MAINPID

User=nobody

[Install]

WantedBy=multi-user.target

# chown -Rnobody.nobody /app/redis /app/logs/redis /data/redis

# systemctl enableredis.service;systemctl enable sentinel.service

# systemctl startredis; systemctl start sentinel

你可能感兴趣的:(redis之sentinel集群部署)