WindowsでRedis分散クラスターを構築する方法
Redisの分散クラスタを作成するには、次の手順に従ってください。
- Redisの安定版をダウンロードして、redis1、redis2、redis3などの異なるディレクトリに展開します。
- 順番に redis1、redis2、redis3 ディレクトリを参照し、redis.conf ファイルを編集する。次のパラメータを変更する。
- ポート番号を異なった値にする。例:redis1のポート番号は6379、redis2のポート番号は6380、redis3のポート番号は6381とする。
- バインドパラメーターを 0.0.0.0 に設定して他のノードからの接続を許可する
- cluster-enabledパラメータをyesに設定して、クラスタモードを有効にします。
- クラスタノード情報を保存するnodes.confに、cluster-config-fileパラメータを設定する。
- ノードタイムアウト時間を指定するために、cluster-node-timeoutパラメーターを5000に設定します。
- データの永続性を保証するために、appendonly パラメータを yes にの設定します。
- コマンドプロンプトを開き、redis1、redis2、redis3 の各ディレクトリで以下のコマンドを実行して、Redis インスタンスを起動します。
redis-server redis.conf
- 再びコマンドプロンプトを開き、任意のRedisインスタンスがあるディレクトリに入って、次のコマンドを実行してRedisクラスターを作成します。
redis-cli --cluster create 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381
ここでのパラメータは、RedisインスタンスのIPアドレスとポート番号を指定するもので、実際の状況に応じて変更できます。
- クラスタ生成時にyesを入力しクラスタ生成を承認すると、Redisは自動でノードアサインとデータマイグレーションを実施します。
- 作成完了以降、任意のRedisインスタンスのIPとポート番号を使用して接続をして、Redis命令を実行してデータ操作を行えます。
Windows環境でRedis分散型クラスターを構築する際、Windowsがfork操作をサポートしていないためRedis標準搭載のredis-trib.rbツールを使用してクラスターを作成することはできません。Redis公式提供のWindows版redis-tribツールまたはサードパーティ製のツールを使用してクラスターを作成する必要があります。