問題タブ [hpa]
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 - カスタム メトリックを使用して、他のポッドのメトリックに基づいてポッドをスケーリングしますか?
いくつかが役立つことを願っていますが、他のメトリックからのカスタム メトリックを使用してポッドをスケーリングしようとしています。悲しいことに、私はそれを機能させません。
私はこのようなことを試しました:
すべての可能なヘルプのための thx :)
kubernetes - Kubernetes HPA によるスケールダウンの無効化
製品の設計上、HPA のスケールダウンを無効にしたいのですが、無効にすることはできますか?
kubernetes - custom-metrics-stackdriver-adapter を介した水平 Pod 自動スケーリングが「63 文字を超える」メトリクスで失敗する
Google Kubernetes Engine で実行されている Kubernetes クラスターがあり、GCP Pub/Sub サブスクリプションの未処理のメッセージ数に基づいてデプロイをスケーリングしたいと考えています。custom-metrics-stackdriver-adapter のデプロイを含むこのシナリオを正確にカバーする Google のガイドを見つけて従いました。
ただし、サブスクリプション名の長さが 63 文字を超えているため、実行するkubectl describe hpa <MY_HPA_NAME>
と次のイベントが発生します。
HPA をトリガーするメトリックとして 63 文字を超えるサブスクリプション名を使用するにはどうすればよいですか?
追加の質問
公開されているメトリック値を調べてみましたが、Kubernetes カスタム メトリック API にクエリを実行すると、次のようにしてそのメトリックの実際の値を確認できません。
ただし、ご覧のとおり"items"
、値が記録されていないことを示す空のリストが返されました。これは、すべてのサブスクリプション名の長さが 63 文字を超えているためだと思いました。これをテストするために、非常に短い名前で新しいサブスクリプションを作成し、この新しいサブスクリプションによってトリガーされる HPA を再作成しました。今回、ポッドは実際に期待どおりにスケーリングされましたが、上記のようにカスタム メトリック API をクエリすると、空の"items"
リストが返されました。
その応答 (およびそのラベル) に値が表示されることを期待する必要がありますか? Pod が存在しない場合、Kubernetes はどのようにして Pod をスケーリングできました"items"
か?
kubernetes - Kubernetes HPA の間違ったメトリクス?
Google Cloud に GKE テスト クラスタを作成しました。2 つの vCPU / 8 GB RAM を備えた 3 つのノードがあります。その上に2つのJavaアプリをデプロイしました
yaml ファイルは次のとおりです。
次に、次の詳細を含む HPA を追加したいと考えました。
kubectl の上位ポッドを確認すると、非常に奇妙なメトリックが表示されます。
HPA 情報:
しかし、ノードの 1 つでアップタイムをチェックすると、それより低い値が表示されます。
なぜそれがまったく異なるものを示しているのか考えてみてください。hpa が現在の CPU 使用率の 200% を示すのはなぜですか? このため、アイドル状態でも最大のレプリカを使用します。何か案が?