1

センチナル:ドキュメントによると

Redis Sentinel は、Redis の高可用性を提供します。実際には、これは、Sentinel を使用して、人間の介入なしで特定の種類の障害に耐える Redis 展開を作成できることを意味します。

Sentinalデプロイせずに(K8sで)redisクラスターの機能を達成できると思いますSentinalか? 私はドキュメントからセンチメンタルな機能を取り入れ、K8s からいくつかのカウンター ポイントを投げています。

  • Monitoring- Sentinel は、マスター インスタンスとスレーブ インスタンスが期待どおりに動作しているかどうかを常にチェックします。
    • working as expectedポッドの上下を意味することを検討しています。これは、Deployment(レプリカセット) またはさらにはStatefulSets
  • Notification- Sentinel は、監視対象の Redis インスタンスの 1 つに問題があることを、システム管理者や別のコンピューター プログラムに API 経由で通知できます。
    • できませんOperatorsか? (redis クラスタの状態などの観点から)
  • Automatic failover- マスターが期待どおりに動作しない場合、Sentinel はフェイルオーバー プロセスを開始できます。このプロセスでは、スレーブがマスターに昇格し、他の追加のスレーブが新しい​​マスターを使用するように再構成され、Redis サーバーを使用するアプリケーションが使用する新しいアドレスについて通知されます。接続時。
    • not working as expectedredisポッドがダウンしていることを意味すると考えています。Operatorsこの場合、 / StatefulSet+を使用して redis をデプロイすると、Headless Service. ポッドが再起動しても、マスター/スレーブの安定したネットワーク ID があります。
  • Configuration provider- Sentinel は、クライアント サービス検出の権限のソースとして機能します。クライアントは、特定のサービスを担当する現在の Redis マスターのアドレスを要求するために、Sentinel に接続します。フェイルオーバーが発生すると、Sentinels は新しいアドレスを報告します。
    • 上記のポイントで述べたように、安定したネットワーク ID/名前/IP があります。クライアントは常にマスターを指すことができます。

私はredisが初めてです。何か間違っている場合は、私を導いてください。ありがとう。

アップデート1

私の目的は、センチメンタルを回避し、HA を持つことです。(主にmasterフェイルオーバー)

4

1 に答える 1