web-dev-qa-db-ja.com

Kubernetesでポッドのリソース使用量を取得するにはどうすればよいですか?

コマンドラインでKubernetesの各ポッドの実際のリソース使用量(リソースリクエストではない)を取得するにはどうすればよいですか?ヒープスターは非推奨です。一方、Metrics-serverはkubectl top podをまだサポートしていません。

  1. ヒープスター-

    次のコマンドを使用してHeapsterをデプロイしました

    $ heapster/deploy/kube.sh start
    kubectl get pods --all-namespaces
    NAMESPACE     NAME                                                           READY     STATUS    RESTARTS   AGE
    kube-system   calico-node-hlcbl                                              2/2       Running   0          39m
    kube-system   calico-node-m8jl2                                              2/2       Running   0          35m
    kube-system   coredns-78fcdf6894-bl94w                                       1/1       Running   0          39m
    kube-system   coredns-78fcdf6894-fwx95                                       1/1       Running   0          39m
    kube-system   etcd-ctl.kube.yarnrm-pg0.utah.cloudlab.us                      1/1       Running   0          39m
    kube-system   heapster-84c9bc48c4-qzt8x                                      1/1       Running   0          15s
    kube-system   kube-apiserver-ctl.kube.yarnrm-pg0.utah.cloudlab.us            1/1       Running   0          39m
    kube-system   kube-controller-manager-ctl.kube.yarnrm-pg0.utah.cloudlab.us   1/1       Running   0          38m
    kube-system   kube-proxy-nj9f8                                               1/1       Running   0          35m
    kube-system   kube-proxy-zvr2b                                               1/1       Running   0          39m
    kube-system   kube-scheduler-ctl.kube.yarnrm-pg0.utah.cloudlab.us            1/1       Running   0          39m
    kube-system   monitoring-grafana-555545f477-jldmz                            1/1       Running   0          15s
    kube-system   monitoring-influxdb-848b9b66f6-k2k4f                           1/1       Running   0          15s
    

    kubectl topを使用すると、次のエラーが発生しました。

    $ kubectl top pods
    Error from server (ServiceUnavailable): the server is currently unable to handle the request (get services http:heapster:)
    $ kubectl top nodes
    Error from server (ServiceUnavailable): the server is currently unable to handle the request (get services http:heapster:)
    
  2. メトリックサーバー:

    metrics-serverはサポートされていませんkubectl topResource Metrics API

誰かが同じ問題をすでに解決した場合は、私を助けてください。ありがとう。

8
Tan Le

サーバーからのエラー(ServiceUnavailable):サーバーは現在リクエストを処理できません(サービスhttp:heapster:を取得してください)

ヒープデプロイメントはServiceheapsterのインストールを忘れたようです。私はこれがthatエラーを乗り越えると期待しますが、実際にkubectl top podsが機能し始めるかどうかは不明です:

kubectl create -f /dev/stdin <<SVC
apiVersion: v1
kind: Service
metadata:
  name: heapster
  namespace: kube-system
spec:
  selector:
    whatever-label: is-on-heapster-pods
  ports:
  - name: http
    port: 80
    targetPort: whatever-is-heapster-is-listening-on
SVC
2
mdaniel