Redisポリクラスター(アイデアノート)

画像 Redisの管理を継続して掘り下げていくと、タスクが発生しました。既存のクラスターを備えたマシンに2番目のクラスターをデプロイするためです。 たとえば、相互レプリケーションの場合、一方の物理サーバーにmaster1とslave2があり、もう一方にmaster2とslave1がある場合。

または、複数のクラスターにまたがる1台のマシン上の情報の論理的な分散のために。

表面にはロシア語の情報はなく、Linuxについてのみ英語が見つかりました。



したがって、FreeBSDでのRedisポリクラスターの作成に関する小さなアシスタントノートを紹介したいと思います。



システムは、FreeBSD 8.4、Radishバージョン2.8.4です(ただし、これはそれほど重要ではありません)。



まず、パスを持つ大根が1つあるとします。



/usr/local/etc/rc.d/redis - - /usr/local/etc/ -   /data/redis/ -  dump.rdb /logs/redis/ -   
      
      







動作します。2つ目が必要な場合でも、停止する必要はありません。

そして、これが私たちのやり方です:



まず、新しい設定が必要です。

やる

 cp /usr/local/etc/redis.conf /usr/local/etc/redis_new.conf
      
      





新しい設定で、次を変更します。

ポート (1つのポートに2つのクラスターを掛けることはできません)

/var/run/redis/redis_new.pidの pidファイル

unixsocketが必要です

/logs/redis/redis_new.logのログファイル

そしてもちろん、 / data / redis_new /のdatadir

興味のある他の設定と同様に。



データディレクトリを作成し、フォルダに権限を付与することを忘れないでください

 mkdir /data/redis_new chown -R redis:redis /data/redis_new
      
      





次に、リンクを介して同じintスクリプトから両方のクラスターを実行しようとしましたが、何らかの問題が発生しました。

したがって、initスクリプトをコピーします

 cp /usr/local/etc/rc.d/redis /usr/local/etc/rc.d/redis_new
      
      





そして、最初の新しい編集では、パラメータ「name = "

 name="redis_new"
      
      





残りは触れません。



ですから、設定、ログ、および書き込む日付はintスクリプトです。 以下を開始します。

 /usr/local/etc/rc.d/redis_new start
      
      





および参照:

 @free-bsd:~# ps ax | grep redis 22489 ?? Is 0:02,88 /usr/local/bin/redis-server /usr/local/etc/redis.conf 27218 ?? Ss 0:00,01 /usr/local/bin/redis-server /usr/local/etc/redis_new.conf 27233 0 RL+ 0:00,00 grep redis
      
      





すべてが機能し、すべてが正常です。 キーは交差せず、すべてが本来のとおりです。 Redis-cliを呼び出すときは、ポートの指定を忘れないでください。



また、3番目のインスタンスを追加できます。さらに、サーバーコアの半分に等しい数まで追加できます。



誰かが役に立つといいな。



All Articles