問題タブ [statefulset]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes - Kubernetes: StatefulSet を使用した NFS
StateFulSets で既存の NFS を使用しようとしています。
の作成は、PresistentVolumeClaim
を使用して自動的に行われるようvolumeClaimTemplates
です。
問題:
しかし、PresistentVolumeClaim
全体を主張しているのでPresistentVolume
。PresistentVolume
すべてのレプリカを手動で作成する必要があります。Kubernetes で NFS 永続ボリュームを動的にプロビジョニングする方法はありますか?
注: NFS サーバー自体は静的です。NFS サーバー自体ではなく、K8s でボリュームを動的に作成する必要があるだけです。
私はmongoステートフルセットの例を使用しています:
3 が必要なPresistentVolumeClaim
ので、使用するには 3 を作成する必要がありPV
ます。aws-ebs などの他の動的プロビジョナーと同様に、これを NFS に動的に追加できますか
これは NFS Persistent Volume で StatefulSet を取得する適切な方法ですか?
kubernetes - Openshift/Kubernetes でステートフル セットの特定のレプリカにルーティングする
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 を明示的に確認する必要があります。
このような場合、リクエストの負荷を分散させたくありません。