Kubernetes : Metrics Server の設定2025/11/07 |
|
Metrics Server を設定して、Kubernetes クラスターの CPU/メモリー リソースのメトリクスを収集/監視します。 当例では以下のように 4 台のノードを使用して Kubernetes クラスターを構成しています。
+----------------------+ +----------------------+
| [ ctrl.srv.world ] | | [ dlp.srv.world ] |
| Manager Node | | Control Plane |
+-----------+----------+ +-----------+----------+
eth0|10.0.0.25 eth0|10.0.0.30
| |
------------+--------------------------+-----------
| |
eth0|10.0.0.51 eth0|10.0.0.52
+-----------+----------+ +-----------+----------+
| [ node01.srv.world ] | | [ node02.srv.world ] |
| Worker Node#1 | | Worker Node#2 |
+----------------------+ +----------------------+
|
| [1] | Metrics Server を設定します。 |
|
suse@ctrl:~> git clone https://github.com/kubernetes-sigs/metrics-server
suse@ctrl:~>
vi ./metrics-server/manifests/base/deployment.yaml
.....
.....
containers:
- name: metrics-server
image: gcr.io/k8s-staging-metrics-server/metrics-server:master
imagePullPolicy: IfNotPresent
args:
- --cert-dir=/tmp
- --secure-port=10250
- --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
- --kubelet-use-node-status-port
- --metric-resolution=15s
# 29行目 : 追記
- --kubelet-insecure-tls
suse@ctrl:~> kubectl apply -k ./metrics-server/manifests/base/ # Warning: 'commonLabels' is deprecated. Please use 'labels' instead. Run 'kustomize edit fix' to update your Kustomization automatically. serviceaccount/metrics-server created clusterrole.rbac.authorization.k8s.io/system:aggregated-metrics-reader created clusterrole.rbac.authorization.k8s.io/system:metrics-server created rolebinding.rbac.authorization.k8s.io/metrics-server-auth-reader created clusterrolebinding.rbac.authorization.k8s.io/metrics-server:system:auth-delegator created clusterrolebinding.rbac.authorization.k8s.io/system:metrics-server created service/metrics-server created deployment.apps/metrics-server created apiservice.apiregistration.k8s.io/v1beta1.metrics.k8s.io createdsuse@ctrl:~> kubectl get pods -n kube-system
NAME READY STATUS RESTARTS AGE
coredns-66bc5c9577-lphm9 1/1 Running 1 (29m ago) 120m
coredns-66bc5c9577-lxrgm 1/1 Running 1 (29m ago) 120m
etcd-dlp.srv.world 1/1 Running 1 (29m ago) 120m
kube-apiserver-dlp.srv.world 1/1 Running 1 (29m ago) 120m
kube-controller-manager-dlp.srv.world 1/1 Running 1 (29m ago) 120m
kube-proxy-4lwzf 1/1 Running 1 (29m ago) 111m
kube-proxy-r99tj 1/1 Running 1 (29m ago) 107m
kube-proxy-rs8vl 1/1 Running 1 (29m ago) 120m
kube-scheduler-dlp.srv.world 1/1 Running 1 (29m ago) 120m
metrics-server-689cf674df-n4dpp 1/1 Running 0 43s
# [metrics-server] pod が新規にデプロイされる
|
| [2] | CPU や メモリー の使用状況は以下のように確認できます。 |
|
suse@ctrl:~> kubectl top node NAME CPU(cores) CPU(%) MEMORY(bytes) MEMORY(%) dlp.srv.world 67m 0% 1924Mi 12% node01.srv.world 20m 0% 1186Mi 7% node02.srv.world 18m 0% 1139Mi 7%suse@ctrl:~> kubectl top pod -n kube-system NAME CPU(cores) MEMORY(bytes) coredns-66bc5c9577-lphm9 1m 19Mi coredns-66bc5c9577-lxrgm 2m 19Mi etcd-dlp.srv.world 14m 110Mi kube-apiserver-dlp.srv.world 26m 495Mi kube-controller-manager-dlp.srv.world 8m 71Mi kube-proxy-4lwzf 1m 26Mi kube-proxy-r99tj 1m 26Mi kube-proxy-rs8vl 1m 25Mi kube-scheduler-dlp.srv.world 5m 26Mi metrics-server-689cf674df-n4dpp 2m 22Mi |
| Sponsored Link |
|
|