監(jiān)控資源指標管道MetricsAPI的用法-創(chuàng)新互聯(lián)

  • 資源指標管道:
    從 Kubernetes 1.8開始,資源使用指標,例如容器 CPU 和內(nèi)存使用率,可通過 Metrics API 在 Kubernetes 中獲得。這些指標可以直接被用戶訪問,比如使用kubectl top命令行,或者這些指標由集群中的控制器使用,例如,Horizontal Pod Autoscaler,使用這些指標來做決策;
  • Metrics API:
    通過 Metrics API,您可以獲得指定節(jié)點或 pod 當前使用的資源量。此 API 不存儲指標值,因此想要獲取某個指定節(jié)點10分鐘前的資源使用量是不可能的;
  • Metrics API 倉庫:
    API源碼GitHub倉庫地址:
  • Metrics Server:
    Metrics Server是一種API Server。其提供了核心的Metrics API,通過在主 API server 中注冊的 Metrics Server Kubernetes 聚合器來采集指標信息,就像k8s組件kube-apiserver提供了很多API群組一樣,但它不是k8s組成部分,而是運行在k8s之上的單個Pod;
    為了讓用戶無縫的使用Metrics Server當中的API,還需要把這類自定義的API通過聚合器聚合到核心API組里,然后可以把此API當作是核心API的一部分并且通過kubectl api-versions可直接查看;
    Metrics Server 收集指標數(shù)據(jù)的方式是從各節(jié)點上kubelet提供的Summary API 即10250端口收集數(shù)據(jù),收集Node和Pod核心資源指標數(shù)據(jù),主要是內(nèi)存和cpu方面的使用情況,并將收集的信息存儲在內(nèi)存中;
  • 您需要部署它,否則在集群中將不可用
    Metrics API 需要在集群中部署 Metrics Server。否則它將不可用;

在Kubernetes集群中部署 Metrics API(Metrics Server)

創(chuàng)新互聯(lián)是一家專注于網(wǎng)站設(shè)計制作、成都網(wǎng)站制作與策劃設(shè)計,邵東網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:邵東等地區(qū)。邵東做網(wǎng)站價格咨詢:028-86922220
  • k8s新一代架構(gòu)
    核心指標流水線:kubelet、metrics-server、api-server提供的api組成,統(tǒng)計cpu累計使用率、內(nèi)存實時使用率、Pod資源占用率及容器的磁盤占用率;
    監(jiān)控流水線:用于從系統(tǒng)收集各種指標數(shù)據(jù)并提供終端用戶、存儲系統(tǒng)及HPA,它們包含核心指標及許多非核心指標。非核心指標本身不能被k8s所解析;
  • 部署手冊參考
    我部署metrics-server參考的官方站點
  • 從官方站點下載部署metrics server所需的yaml文件
    使用for循環(huán)下載
[root@node1 metrics]# ll
total 24
-rw-r--r-- 1 root root  398 Feb 28 03:30 auth-delegator.yaml
-rw-r--r-- 1 root root  419 Feb 28 03:30 auth-reader.yaml
-rw-r--r-- 1 root root  388 Feb 28 03:30 metrics-apiservice.yaml
-rw-r--r-- 1 root root 3252 Feb 28 03:30 metrics-server-deployment.yaml
-rw-r--r-- 1 root root  336 Feb 28 03:30 metrics-server-service.yaml
-rw-r--r-- 1 root root  795 Feb 28 03:30 resource-reader.yaml
[root@node1 metrics]#
  • 修改metrics-server-deployment.yaml文件
    修改容器當中的自定義變量資源限制,不然無法running;
command: //此處修改
   - /metrics-server
   - --metric-resolution=30s
   # These are needed for GKE, which doesn't support secure communication yet.
   # Remove these lines for non-GKE clusters, and when GKE supports token-based auth.
   - --kubelet-port=10250
   #- --deprecated-kubelet-completely-insecure=true
   - --kubelet-preferred-address-types=InternalIP,Hostname,InternalDNS,ExternalDNS,ExternalIP
command: //此處修改
   - /pod_nanny
   - --config-dir=/etc/config
   - --cpu=5m
   - --extra-cpu=0.5m
   - --memory=80Mi
   - --extra-memory=8Mi
   - --threshold=5
   - --deployment=metrics-server-v0.3.6
   - --container=metrics-server
   - --poll-period=300000
   - --estimator=exponential
   # Specifies the smallest cluster (defined in number of nodes)
   # resources will be scaled to.
   #- --minClusterSize={{ metrics_server_min_cluster_size }}
  • 修改resource-reader.yaml文件
    添加nodes/stats
rules:
- apiGroups:
  - ""
  resources:
  - pods
  - nodes
  - namespaces
  - nodes/stats
  • 提前下載鏡像文件,在各個node節(jié)點上
    參考腳本
[root@node2 ~]# cat pull-metrics.sh 
#!/bin/bash
#
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.6
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/addon-resizer:1.8.7

docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.6 k8s.gcr.io/metrics-server-amd64:v0.3.6
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/addon-resizer:1.8.7 k8s.gcr.io/addon-resizer:1.8.7

docker rmi registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.6
docker rmi registry.cn-hangzhou.aliyuncs.com/google_containers/addon-resizer:1.8.7
[root@node2 ~]# 
  • Metrics Server 應(yīng)用構(gòu)建
    不可重復(fù)構(gòu)建
[root@node1 metrics]# kubectl apply -f ./
clusterrolebinding.rbac.authorization.k8s.io/metrics-server:system:auth-delegator created
rolebinding.rbac.authorization.k8s.io/metrics-server-auth-reader created
apiservice.apiregistration.k8s.io/v1beta1.metrics.k8s.io created
serviceaccount/metrics-server created
configmap/metrics-server-config created
deployment.apps/metrics-server-v0.3.6 created
service/metrics-server created
clusterrole.rbac.authorization.k8s.io/system:metrics-server created
clusterrolebinding.rbac.authorization.k8s.io/system:metrics-server created
[root@node1 metrics]# 
[root@node1 ~]# kubectl get pods -n kube-system
NAME                             READY  STATUS   RESTARTS  AGE
metrics-server-v0.3.6-cf56dfd4-mj7p2     2/2     Running      0       22s
  • 測試等待結(jié)果
    有的時候需等待一會,才能刷出數(shù)據(jù)來
[root@node1 ~]# kubectl top nodes
NAME   CPU(cores)  CPU%  MEMORY(bytes)  MEMORY%  
node1  137m     6%   1043Mi      69%    
node2  21m      2%   333Mi      20%    
node3  23m      2%   343Mi      28%
  • 通過接口訪問節(jié)點資源信息路徑

查看node資源指標

[root@node1 metrics]# kubectl get --raw "/apis/metrics.k8s.io/v1beta1/nodes" | jq  | less

查看pods資源指標

[root@node1 metrics]# kubectl get --raw "/apis/metrics.k8s.io/v1beta1/pods" | jq  | less

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

網(wǎng)頁題目:監(jiān)控資源指標管道MetricsAPI的用法-創(chuàng)新互聯(lián)
轉(zhuǎn)載來源:http://www.muchs.cn/article26/dhjojg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、營銷型網(wǎng)站建設(shè)微信小程序、ChatGPT、外貿(mào)建站、網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名