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番目のインスタンスを追加できます。さらに、サーバーコアの半分に等しい数まで追加できます。

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

Source: https://habr.com/ru/post/J211364/


All Articles