12.3 メトリック・サーバーのトラブルシューティング
Kubernetesメトリック・サーバーが
READY 1/1
の状態にならない場合は、次のコマンドを実行します:kubectl describe pod <metrics-server-pod> -n kube-system
kubectl logs <metrics-server-pod> -n kube-system
次のようなエラーが表示された場合:
Readiness probe failed: HTTP probe failed with statuscode: 500
および:E0907 13:07:50.937308 1 scraper.go:140] "Failed to scrape node" err="Get \"https://X.X.X.X:10250/metrics/resource\": x509: cannot validate certificate for 100.105.18.113 because it doesn't contain any IP SANs" node="worker-node1"
状況によっては、Kubernetesクラスタ用の有効なクラスタ証明書をインストールする必要があります。テスト目的で、次の方法でこの問題を解決できます:
- 次のコマンドを実行して、Kubernetesメトリック・サーバーを削除します:
kubectl delete -f $WORKDIR/kubernetes/hpa/components.yaml
$WORKDIR/hpa/components.yaml
を編集し、args:
セクションを見つけます。引数にkubelet-insecure-tls
を追加します。例:spec: containers: - args: - --cert-dir=/tmp - --secure-port=4443 - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname - --kubelet-use-node-status-port - --kubelet-insecure-tls - --metric-resolution=15s image: registry.k8s.io/metrics-server/metrics-server:v0.6.4 ...
- 次のコマンドを使用して、Kubernetesメトリック・サーバーをデプロイします:
kubectl apply -f components.yaml
- 次を実行して、
READY
ステータスに1/1
が表示されることを確認します:
出力は次のようになります。kubectl get pods -n kube-system | grep metric
metrics-server-d9694457-mf69d 1/1 Running 0 40s