問題タブ [kubernetes-networking]

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.

0 投票する
2 に答える
123 参照

kubernetes - バージョン「compute.cnrm.cloud.google.com/v1beta1」の種類「ComputeAddress」に一致するものはありません

Google Kubernetes Engine ( v1.20.8-gke.900 ) 用の Google マネージド SSL 証明書を作成しようとしています。そのために、このドキュメントを参照しました。ここでは、 ComputeAddressリソースを作成するように指示されています。だから私は以下の設定ファイルを作成しました

今、実行して適用しているとき

エラーが発生します

エラー: 「compute-address.yaml」を認識できません: バージョン「compute.cnrm.cloud.google.com/v1beta1」の種類「ComputeAddress」に一致するものはありません

それで、誰が正しいべきか、または正しいべきかを言うことができますapiVersionkind

0 投票する
1 に答える
67 参照

kubernetes - k8s クラスター内では常に Ingress Rule または Node Port Service Name を呼び出す必要がありますか?

私たちのシステムには多くの安らかなサービスがあります

  • 一部はkubernetesクラスター内にあります
  • その他レガシーインフラストラクチャ上にあり、VM でホストされています

私たちの安らかなサービスの多くは、互いに同期呼び出しを行います (メッセージ キューを使用して非同期ではありません)。

これらのサービスを利用する多数の UI (ファット クライアントまたは Web アプリ) もあります。

このような単純な k8s マニフェスト ファイルを定義する場合があります。

  1. ポッド
  2. サービス
  3. イングレス

クラスター上の安らかなサービスが互いに通信するための最良の方法は何なのか、私にはよくわかりません。

  • イングレス ルールによって構築された URL を使用する、クラスター外の発信者にとって適切なルートは 1 つだけのようです。
  • クラスタ内の 2 つのオプション

これは例でそれをさらに説明するかもしれません

発信者 レシーバー 例の URL
UI クラスタ上 http://clusterip/orders UI はクラスター IP とイングレス ルールを使用してオーダー マネージャーに到達します。
クラスター外のサービス クラスタ上 http://clusterip/orders UIと同じように
クラスタ上 クラスタ上 http://clusterip/orders 上記のアプローチのような進入ルールを使用できます
クラスタ上 クラスタ上 http://orderManager-service:50588/ サービス名とポートを直接使用できます

上記でクラスター ipを数回書いていますが、実際には何かをトップに置くので、http://mycluster/orders のようなわかりやすい名前があります。

したがって、発信者受信者の両方がクラスター上にある場合、どちらかです

  • クラスター外のサービスやアプリでも使用されるイングレスルールを使用する
  • イングレス ルールで使用されるノードポート サービス名を使用ます
  • またはおそらく何か他のもの!

nodeport サービス名を使用する利点の 1 つは、ベース URL を変更する必要がないことです。

  • イングレスルール、追加の要素ルートに追加します (上記の場合、orders ) 。
  • Restful サービスをレガシーから k8s クラスターに移動すると、複雑さが増します