問題タブ [gke-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.
google-kubernetes-engine - GKE で作成された Ingress のヘルスチェックが失敗する
次の構成でイングレスを使用して、GKE で consul ui のロードバランサーを作成しています
このサービスhashicorp-consul-ui
は、タイプが clusterIP のサービスです。
また、次の backendConfig を作成しています
次の注釈を clusterIP サービスに追加していますhashicorp-consul-ui
'cloud.google.com/backend-config': '{"ports": {"80":"consul-ui-backendconfig"}}'
この backendConfig は、イングレスによって作成されたバックエンド サービスのヘルス チェックを作成します。このエンドポイントは 200 を返します。ただし、ヘルス チェックは失敗し、イングレスは異常な状態になります。
healthCheck でログを有効にしましたが、NEG で次のログを取得しています
また、なぜこのログを 1 回だけ取得したのかわからないのですが、これらのログを定期的に取得するべきではないでしょうか?
また、この healthCheck の問題を修正する方法について誰か教えてもらえますか?
google-kubernetes-engine - GKE Helm http2 接続が失われました
n1-highmem-4 プールを使用して GKE クラスタ (バージョン: 1.18.15-gke.1500) を作成しようとしています。ヘルムチャートをインストールしようとするまで、すべて正常に動作します。Helm バイナリ (バージョン: 3.5.2) は、「http2 接続が失われました」というエラーで終了します。GKE が自動修復モードをトリガーします。kubectl を使用して configmap を問題なく作成しているため、理由がわかりません。プール マシンまたは GKE マスター プランに関するログを見つけることができる場所があるかどうかご存知でしたか?
kubernetes - GKE 上の Macvlan を使用する 2 番目の NIC
インターネット上のパブリック ユーザーから直接アクセスできるようにする必要がある GKE 上の特定の K8s ポッドのいくつかに、2 つ目のインターフェイスを追加する必要があります。そこで、Multus を使用して、Macvlan cni を次のように定義しました。
10.162.0.1 は、GCP の K8s ノードのデフォルト ゲートウェイです。したがって、この場合、ポッドは外部にアクセスできる必要があると思います。しかしポッドでは、内部ポッド トラフィックをルーティングするデフォルト ゲートウェイが 1 つだけ存在します。また、権限の問題でルートを追加できません。
質問:
私の予想は間違っていますか?これらのポッドのパブリック インターフェイスを作成するには、Macvlan をどのように使用すればよいですか?
google-kubernetes-engine - プライベート GKE クラスタからパブリック Cloud SQL に接続する
cloud-sql-proxy を使用して、GKE クラスタからパブリック IP で Cloud SQL インスタンスに接続しようとしています。次のコマンドでクラスターを作成しました。
次のコマンドで Cloud SQL を作成しました。
また、次のコマンドを使用してサービス アカウントを設定します。
ポッド内の cloud-sql-proxy のサイドカー コンテナーは、次のように設定されます。
それにもかかわらず、アプリが Cloud SQL インスタンスに接続しようとすると、cloud-sql-proxy ログに次のエラーが表示されます。
確認したところ、ポッドはインターネットにアクセスできるため ( www.google.comにアクセスできます)、Cloud SQL のパブリック IP に接続できるはずです。ラップトップで cloud-sql-proxy を問題なく使用でき、そこでインスタンスに接続できます。私は何が欠けていますか?他に何が確認できますか?
GKE プライベート クラスタとクラウド SQL プロキシ接続が見つかりましたが、SQL Admin API が有効になっています。プライベート GKE と Cloud SQL の間の接続は、インターネットにアクセスできない GKE クラスタについてのみ話します。