はじめに
他のRedis構築に関するページは以下をご参考ください。
Redis構築のまとめ
sentinel.conf内の設定がわからなくなることがあったのでまとめました。
編集・設定した項目だけ記載しております。他の項目まとめているところがあれば教えてください。
環境
CentOS 6.8
Redis 3.2.5(当時の安定バージョン)
設定
※今回の設定では${REDISPORT}は26379
sentinel形式の時のみ使用
元ファイルはredis-3.2.5/sentinel.conf
構築についてはRedis Sentinel構築を参照
項目 | 設定例 | 内容 | 備考 |
---|---|---|---|
bind | bindするネットワークのインターフェースを限定できる | コメントアウト | |
protected-mode | no | yesで他端末からの接続を制限する 設定しないとデフォルトで有効になる 自動フェールオーバーしたい場合、noを設定 |
|
daemonize | yes | デーモン化するときはyes | |
port | 26379 | クライアント向けの開放ポート redis-sentinelのデフォルトポード番号 |
|
pidfile | sentinel_26379.pid | デーモン化した時のPID | |
dir | /var/run/redis | dbfilenameのファイルや、redisが使う一時ファイルなどを保存する領域 | ファイル名でなくディレクトリ名 |
logfile | /var/log/redis/26379.log | ログファイル名 | |
sentinel monitor | mymaster 192.168.56.111 6379 2 | [mastername] [IPアドレス] [ポート番号] [sentinel定足数] を表す。masternameは適当でOK(他の設定でも統一すること) IPアドレスはフェールオーバーする度に書き換えられる sentinel定足数は何台がマスターのダウンを検知したらフェールオーバーするかを設定している (左だと2台検知したらフェールオーバーを行う) |
|
sentinel down-after-milliseconds | mymaster 5000 | [mastername] [時間(ms)] Master/Slaveのダウン検知後、状態がSDOWN(subjectively down)に移行するまでの時間 |
短すぎるとうまく検知できない 可能性がある |
sentinel failover-timeout | mymaster 900000 | フェールオーバー処理のタイムアウト(ms) | |
sentinel parallel-syncs | mymaster 1 | SlaveをMasterに昇格させた後、いくつのSlaveと同期させるか |
| sentinel側で自動設定してくれる項目 |
|:--|:--|:--|--:|
| sentinel myid |
| sentinel leader-epoch | | | |
| sentinel known-slave | | | |
| sentinel known-sentinel | | | |
| sentinel current-epoch | | | |
| sentinel config-epoch | | | |