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

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容