問題タブ [kubernetes-jobs]
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 Job Informer コールバック
kubernetes インフォーマー (ソース コード) を使用して、kubernetes api サーバーからジョブ更新イベントを受信します。これらのイベントを受信した後、通常はクラスターからジョブ レコードを削除します。
最近、クライアントが kuberntes API サーバーから Kubernetes ジョブ更新イベントをすぐに受信せず、1 時間以上後にこれらのイベントを受信したため、非常に多くのジョブ レコードがクラスターに残っていることがわかりました。
ここにいくつかの情報があります:
ジョブ インフォーマー コールバック
クラスター情報
kubernetes バージョン:
v1.20
client-go バージョン:v0.19.6
その他の情報
では、そこには 1000 を超える kubernetes ジョブがあり、それらはすべて Complete ステータスにあり、他のビジネス ロジックをデバッグするために必要という理由だけでそれらを削除することはありません。しかし、これらの kubernetes ジョブを削除してインフォーマーを再起動すると、すべてが正常になることがわかりました。
通知の遅延を解決するには? この種の問題をデバッグする方法はありますか?
dockerfile - Terraform と k8s のジョブ
1 つ助けが必要です。
Docker イメージを Google コンテナー レジストリにプッシュしました。クライアントごとに、terraform kubernetes ジョブを使用する必要があります。
Dockerfile:
docker build --build-arg POSTGRES_PASSWORD=xyzw12345 . -t hello-world:postgres docker push hello-world:postgres
terraform kubernetest ジョブを実行してコンテナー内に移動することはできますが、telnet から確認できる 5432 では何も動作していません。
コンテナにログインしたいだけで、pgAdmin を使用してデータベースの詳細を確認できます。エラーなしでローカルで同じ手順を実行できます。
ありがとう開発者