Go を使用した Kubernetes のポッドとノードのリソース使用量のクエリ
Kubernetes Go クライアントには、リソースを管理するための多数の方法が用意されていますが、直接的な機能がありません。リソース使用量データの取得のサポート。この情報を取得するには、Kubernetes メトリクス パッケージを利用できます。
メトリクス パッケージを使用したリソース使用量の取得
メトリクス パッケージは、リソースへのアクセスを可能にするクライアントを提供します。使用状況データ。クライアント初期化の簡略化された例を次に示します。
<code class="go">import ( "k8s.io/client-go/tools/clientcmd" metrics "k8s.io/metrics/pkg/client/clientset/versioned" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) func main() { // Assuming using in-cluster configuration config, err := clientcmd.BuildConfigFromFlags("", "") if err != nil { panic(err) } mc, err := metrics.NewForConfig(config) if err != nil { panic(err) } // Available methods for resource usage _ = mc.MetricsV1beta1().NodeMetricses().Get("your node name", metav1.GetOptions{}) _ = mc.MetricsV1beta1().NodeMetricses().List(metav1.ListOptions{}) _ = mc.MetricsV1beta1().PodMetricses(metav1.NamespaceAll).List(metav1.ListOptions{}) _ = mc.MetricsV1beta1().PodMetricses(metav1.NamespaceAll).Get("your pod name", metav1.GetOptions{}) }</code>
これらのメソッドは、ノードとポッドのリソース使用状況情報を含む適切な構造を返します。
追加情報
以上がGo を使用して Kubernetes のポッドとノードのリソース使用状況をクエリするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。