ホームページ  >  記事  >  データベース  >  Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します

Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します

coldplay.xixi
coldplay.xixi転載
2021-01-26 09:45:332113ブラウズ

Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します

推奨事項 (無料): redis

##記事ディレクトリ

    マスター/スレーブ レプリケーション
    • コマンド
    • 構成
  • コピー原理
    • フル コピー
    • 増分コピー
    • テスト
  • ネストされたマスター/スレーブ
  • センチネル モード
    • Configuration Sentinel
    • テスト
##マスター/スレーブ レプリケーション

#マスター/スレーブ レプリケーション
とは、1 つの Redis サーバーのデータを他の Redis サーバーにコピーすることを指します。前者はマスター ノード Master と呼ばれ、後者はスレーブ ノード Slave と呼ばれます。コピーできるのは 1 台のみです。マスターからスレーブへの経路では、一般にマスターは主に書き込み動作を実行し、スレーブは主に読み出し動作を実行し、読み出しと書き込みの分離を実現します。

機能

データ冗長化:マスタースレーブレプリケーションにより、永続化以外のデータ冗長化であるデータのホットバックアップを実現します。
    障害回復: マスター ノードで問題が発生した場合、スレーブ ノードは迅速な障害回復を実現するためのサービスを提供できます。これは実際には一種のサービス冗長です。
  1. ロード バランシング: マスター/スレーブ レプリケーションに基づいて、読み取り/書き込み分離と組み合わせることで、マスター ノードが書き込みサービスを提供し、スレーブ ノードが読み取りサービスを提供できます (つまり、Redis データの書き込み時にアプリケーションが接続します)アプリケーションがスレーブ ノードに接続すると、サーバーの負荷が共有されます。特に、書き込みが少なく読み取りが多いシナリオでは、複数のスレーブ ノードを通じて読み取り負荷を共有することで、同時実行性が大幅に向上します。 Redisサーバー。
  2. 高可用性の基礎: 上記の機能に加えて、マスター/スレーブ レプリケーションはセンチネルとクラスターの実装の基礎でもあるため、マスター/スレーブ レプリケーションは Redis の高可用性の基礎となります。
  3. #コマンド

##コマンド

##関数 host port現在のサーバーを指定されたサーバーのスレーブ サーバーに変換します。すでにスレーブである場合は、古いマスター サーバーとの同期を停止し、古いデータ セットを破棄し、新しいマスター サーバーとの同期を開始します。 SLAVEOF NO ONE を実行すると、スレーブ サーバーはレプリケーション機能をオフにし、スレーブ サーバーからマスター サーバーに戻ります。元の同期データ セットは破棄されません。 ]INFO コマンドは、Redis サーバーに関する情報を簡単な形式で返します。さまざまな情報や統計値を理解して読みます。オプションのパラメータ

構成

複数のサービスを備えた単一のマシンを例に挙げます (通常は複数のサービスを備えた複数のマシンですが、私はサーバーを 1 つしか持っていません)

まず第一に、 、各 Redis クライアント デフォルトはホストで、info replication コマンドを通じて表示できます。
Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します

次に、1 つのマスターと 2 つのスレーブをシミュレートするために 3 つのクライアントを同時に開く必要があるため、構成を変更する必要があります。ポート番号

    pid名の変更
  1. #ログ名の変更
  2. #rdb名の変更
  3. #ホスト接続の設定(オプション、コマンドラインを使用)
  4. まず、2 つの設定ファイルをスレーブ設定としてコピーします。マスターはデフォルトを使用できます。
  5. redis80.conf を例として、上記の 5 つの構成ポイントを順番に変更します。81 の場合は、最初の 4 つのポイントのみが変更されます。


Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します

Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します 次に、それらを開始します (79、80、81)
Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
マスターとスレーブを設定します:
Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
#80 は構成ファイル (永続) に設定されており、それを直接表示します: Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
#81 がある場合は構成ではありません。現時点では、コマンド ライン


  1. Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明しますView 79 (master) を手動で設定できます:

  2. Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
  3. コピーの原則


Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します

フル コピー

スレーブがホストに接続するたびに、ホストからすべてのデータをコピーして完全にコピーします。奴隷に。


インクリメンタルコピー

スレーブマシンがマスターマシンに接続された後、マスターマシンによって後から更新されたデータは、この間だけスレーブマシンに同期して更新されます。データの一部。

テスト

スレーブはデフォルトでは読み取り専用で、同期ホストのデータを増分コピーします:


  1. ホストのダウンタイム: Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します

  2. Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    # 3 .スレーブ マシンのダウンタイム: Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します

    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    #embedded マスターとスレーブを設定しますRedis がマスター/スレーブ レプリケーションとセントリー モードについて説明します

    図に示すように、79 は 80 のホスト、80 は 81 のホストです。これは、ネストされたマスターとスレーブの関係です。
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します

    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します

    #Sentinel モード


    上記の 80 の上位位置とネストされたマスター/スレーブはすべて手動コマンド ラインから入力されます。

    目的は、ホストの後の書き込み操作を回避することです。ウィンドウ期間 の間は、手動による介入が必要です。
    Sentinel は、独立したプロセスとして独立して実行されます。原則として、Sentinel はコマンドを送信し、Redis サーバーの応答を待つことによって、実行中の複数の Redis サーバーを監視します。 Sentinel がホストがオフラインであることを検出すると、新しいホストとなるスレーブ マシンを「上位」(自動障害移行) に選択します。元のホストがオンラインになると、元のホストは新しいホストのスレーブになります。原則は、パブリッシュおよびサブスクライブ モデルを通じて他のサーバーに通知し、構成ファイルを変更して、ホストを切り替えることです。

    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します センチネルがダウンしたらどうなりますか?複数のセンチネルを使用して相互に監視できます。

    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    写真は https://www.jianshu.com/p/06ab9daf921d から取得、侵入と削除

    • 主観的offline(Subjectively Down、略して SDOWN) は、サーバー上の単一のセンチネル インスタンスによって行われるオフラインの判断を指します。
    • Objective Down(Objectively Down、ODOWN と呼ばれる) は、同じサーバー上で主観的なオフライン判断を行う複数のセンチネル インスタンスを指し、SENTINEL を通じて is-master-down- After the by- addr コマンドが相互に通信する場合、サーバーはオフラインと判断されます。
    ホストが客観的にオフラインになると、Sentinel は新しいホストに投票し (

    具体的なアルゴリズムは省略します)、自動フェイルオーバー (フェイルオーバー) を実行し、他のサーバーに切り替えるように通知します。パブリッシュとサブスクライブのホストを通じて。

    Sentinel の構成

    まず、インストール ディレクトリに詳細な注釈付き Sentinel 構成があります。


    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します 新しい Sentinel.conf を作成して、モニター 6379、残りはデフォルトでかまいません:

    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します# Sentinel の開始:

    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します

    ##Test

    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します
    Redis がマスター/スレーブ レプリケーションとセントリー モードについて説明します# マルチセンチネルモードでは、複数の Sentinel クライアントを開くために異なるポートの構成ファイルを構成し、同じパターンに従います (
    LazyRedis がマスター/スレーブ レプリケーションとセントリー モードについて説明します )

#slaveof
info [section
section を指定すると、コマンドが情報の特定の部分のみを返すようにできます:

以上がRedis がマスター/スレーブ レプリケーションとセントリー モードについて説明しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。