Redis では、Redis マスターと必要な数の Redis スレーブを指定する必要があります。クォーラムを作成するには、奇数の Redis Sentinel が必要です。
次の例で、ポート 6741 にマスターがあり、ポート 6742 に 1 つのスレーブがあり、ポート 6800、6801、および 6802 に 3 つのセンチネルがある Redis Sentinel を起動して構成する方法を示します。
Redis マスターを起動するには、コマンド プロンプトで次のように入力します。
redis-server.exe --port 6741 --protected-mode no --bind 0.0.0.0
Redis スレーブを起動するには、コマンド プロンプトで次のように入力します。
redis-server.exe redis_slave.conf
3 つの Redis センチネルを起動するには、コマンド プロンプトで次のように入力します。
redis-server.exe sentinel-1.conf –-sentinel redis-server.exe sentinel-2.conf –-sentinel redis-server.exe sentinel-3.conf –-sentinel
ここでは、Redis マスターはMY_MASTER と呼ばれ、これは大文字である必要があります。次の例で、redis_slave.conf ファイルの内容を示します。次の構成ファイルで、太字のテキストが要件を反映するように変更されていることを確認します。
bind 0.0.0.0 port 6742 ## The port used by the slave. tcp-backlog 511 timeout 0 tcp-keepalive 0 loglevel notice logfile "" databases 16 save 900 1 save 300 10 save 60 10000 stop-writes-on-bgsave-error yes rdbcompression yes rdbchecksum yes dbfilename "dump.rdb" slaveof 127.0.0.1 6741 ## The port and IP used by the master slave-serve-stale-data yes slave-read-only yes repl-diskless-sync no repl-diskless-sync-delay 5 repl-disable-tcp-nodelay no slave-priority 100 appendonly no appendfilename "appendonly.aof" appendfsync everysec no-appendfsync-on-rewrite no auto-aof-rewrite-percentage 100 auto-aof-rewrite-min-size 64mb aof-load-truncated yes lua-time-limit 5000 slowlog-log-slower-than 10000 slowlog-max-len 128 latency-monitor-threshold 0 notify-keyspace-events "" hash-max-ziplist-entries 512 hash-max-ziplist-value 64 set-max-intset-entries 512 zset-max-ziplist-entries 128 zset-max-ziplist-value 64 hll-sparse-max-bytes 3000 activerehashing yes client-output-buffer-limit normal 0 0 0 client-output-buffer-limit slave 256mb 64mb 60 client-output-buffer-limit pubsub 32mb 8mb 60 hz 10 aof-rewrite-incremental-fsync yes
sentinel-1.conf、sentinel-2.conf、および sentinel-3.conf の内容は、ポートを除いて同じです。該当するセンチネルによって使用されるポートに対応するようにポートを変更します。
port 6800 ## The port used by the sentinel sentinel monitor MY_MASTER 127.0.0.1 6741 ## The name, IP, and port used by the master. sentinel down-after-milliseconds MY_MASTER 5000 sentinel failover-timeout MY_MASTER 60000 sentinel parallel-syncs MY_MASTER 1
PAC 構成の場合 ESCWA では、SOR 名が Redis マスター名 MY_MASTER と一致しており、その後にすべてのセンチネルの IP およびポートが続いている必要があります。次に例を示します。
set ES_SCALE_OUT_REPOS_1=MY_MASTER=redis,127.0.0.1:6800,127.0.0.1:6801,127.0.0.1:6802##TMP