kubernetes/openshift のステートフルセット機能を使用してレプリカごとに 1 つのルートを作成する方法があるかどうか知っていますか (つまり、ステートフルセットの 1 つの特定のレプリカの外部からアクセスできるようにする 1 つのルート)。
文脈は以下。
私は現在、ステートフル セットを介して Openshift の HA モードで Spark マスターをデプロイしようとしています。
私のステートフルセット「spark」は、ヘッドレス サービス「spark」に「リンク」されています。
クラスタ間通信のサービス レベルを維持している場合、すべてが正常に機能しています。
つまり:
- 「spark-0」、「spark-1」、...、「spark-n」という名前の n 個のポッドがあります。
- これらすべての POD は、DNS 名「spark-0.spark」、「spar-1.spark」、....、「spark-n.spark」を介して、openshift クラスター内でアクセスできます。
私が抱えている問題は、ルートを作成して外部からアクセスできるようにするときです。
たとえば、ポート 8080 の「spark」サービスに「リンク」されるルート「spark-route」を簡単に作成できます。
そうすることで、「n」個のポッドに負荷分散する 1 つのルートができます。
しかし、私が望むのは、むしろ n 個のルート (spark-route-1、...、spark-route-n) を持ち、それらの各ルートがステートフル セット内の特定のレプリカにリダイレクトすることです。
実際、外部からは、spark-1、spark-2、...、spark-n の Web UI を明示的に確認する必要があります。
このような場合、リクエストの負荷を分散させたくありません。