2017-08-02 11 views
0

私は2つのWebアプリケーション(AとBと呼ぶ)を開発し、それらをk8に配備しました。以前の環境では、Bは固定IPとポートを持ち、Bでホストされている画像に非常に簡単にアクセスできます。KubernetesでサービスのNodePortをプログラムで取得する方法は?

K8S環境では、WebアプリケーションAはWebアプリケーションBによって生成された画像を参照します。サービスタイプ - NodePort。その場合、ポートは毎回展開時にランダムに生成されます。

質問は、AポッドからBサービスのノードポートをプログラムによって取得する方法があるかどうかです。または、1つのサービスのノードポートを修正することは可能ですか?

答えて

0

あなたの質問には3つの答えがあります。

最初はその背後にあるPod Sが再デプロイされているという理由だけで1がServiceを破壊してはならないということです。 Serviceは、サービスの配置(またはカウント)を抽象化する長期契約となるように設計されています

2番目は、web-app Aに知られているNodePort、あなたがServiceports:マッピングのnodePort:フィールドに値を入れて、それがまだ割り当てられていないと仮定することができ、kubernetesはあなたの判断に

を延期します第三の答えは、すべてのPod自動的にクラスタ内で実行されるということですkubernetes API(それは/run/secrets/kubernetes.ioまたはそれに似ています)と通信するためのAPIトークンを取得するので、A PIの現在の価値を提供するためにPodsからPIを取得します。

+0

非常に役に立ちました、ありがとうございました。 – ichbinblau

関連する問題