新聞中心
Kubernetes1.24.3通過(guò)Helm安裝Metrics-Server
作者:ikubernetes 2022-09-05 08:33:32
云計(jì)算
云原生 Hart 代表著 Helm 包。它包含在 Kubernetes 集群內(nèi)部運(yùn)行應(yīng)用程序,工具或服務(wù)所需的所有資源定義。你可以把它看作是 Homebrew formula,Apt dpkg,或 Yum RPM 在Kubernetes 中的等價(jià)物。

在黃龍等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作按需規(guī)劃網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都全網(wǎng)營(yíng)銷,成都外貿(mào)網(wǎng)站建設(shè)公司,黃龍網(wǎng)站建設(shè)費(fèi)用合理。
安裝helm
用二進(jìn)制版本安裝
每個(gè)Helm 版本都提供了各種操作系統(tǒng)的二進(jìn)制版本,這些版本可以手動(dòng)下載和安裝。
- 下載 需要的版本。
- 解壓(tar -zxvf helm-v3.0.0-linux-amd64.tar.gz)。
- 在解壓目中找到helm程序,移動(dòng)到需要的目錄中(mv linux-amd64/helm /usr/local/bin/helm)。
然后就可以執(zhí)行客戶端程序并 添加穩(wěn)定倉(cāng)庫(kù): helm help。
使用腳本安裝
Helm現(xiàn)在有個(gè)安裝腳本可以自動(dòng)拉取最新的Helm版本并在 本地安裝。
您可以獲取這個(gè)腳本并在本地執(zhí)行。它良好的文檔會(huì)讓您在執(zhí)行之前知道腳本都做了什么。
$ curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
$ chmod 700 get_helm.sh
$ ./get_helm.sh
$ helm help
如果想直接執(zhí)行安裝,運(yùn)行curl。
https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash。
相關(guān)概念
Chart
hart 代表著 Helm 包。它包含在 Kubernetes 集群內(nèi)部運(yùn)行應(yīng)用程序,工具或服務(wù)所需的所有資源定義。你可以把它看作是 Homebrew formula,Apt dpkg,或 Yum RPM 在Kubernetes 中的等價(jià)物。
Repository
Repository(倉(cāng)庫(kù)) 是用來(lái)存放和共享 charts 的地方。它就像 Perl 的 CPAN 檔案庫(kù)網(wǎng)絡(luò) 或是 Fedora 的 軟件包倉(cāng)庫(kù),只不過(guò)它是供 Kubernetes 包所使用的。
Release
Release 是運(yùn)行在 Kubernetes 集群中的 chart 的實(shí)例。一個(gè) chart 通??梢栽谕粋€(gè)集群中安裝多次。每一次安裝都會(huì)創(chuàng)建一個(gè)新的 release。以 MySQL chart為例,如果你想在你的集群中運(yùn)行兩個(gè)數(shù)據(jù)庫(kù),你可以安裝該chart兩次。每一個(gè)數(shù)據(jù)庫(kù)都會(huì)擁有它自己的 release 和 release name。
Helm 安裝 charts 到 Kubernetes 集群中,每次安裝都會(huì)創(chuàng)建一個(gè)新的 release。你可以在 Helm 的 chart repositories 中尋找新的 chart。
當(dāng)您已經(jīng)安裝好了Helm之后,您可以添加一個(gè)chart 倉(cāng)庫(kù)。從 Artifact Hub中查找有效的Helm chart倉(cāng)庫(kù)。
當(dāng)然你也可以使用 helm search查找 Charts。
- helm search hub 從 Artifact Hub 中查找并列出 helm charts。 Artifact Hub中存放了大量不同的倉(cāng)庫(kù)。
- helm search repo 從你添加(使用 helm repo add)到本地 helm 客戶端中的倉(cāng)庫(kù)中進(jìn)行查找。該命令基于本地?cái)?shù)據(jù)進(jìn)行搜索,無(wú)需連接互聯(lián)網(wǎng)。
通過(guò)helm安裝metrics-server
搜索metrics-server。
搜索完成之后,就可以看到安裝說(shuō)明,如下圖所示,頁(yè)面上也會(huì)詳細(xì)的說(shuō)明配置參數(shù)。
這里由于我們無(wú)法直接下載到鏡像k8s.gcr.io/metrics-server/metrics-server; 所以我們需要先將倉(cāng)庫(kù)fetch下來(lái)之后,進(jìn)行values值的修改。
#添加倉(cāng)庫(kù)
$ helm repo add metrics-server https://kubernetes-sigs.github.io/metrics-server/
$ helm search repo -l metrics-server
NAME CHART VERSION APP VERSION DESCRIPTION
metrics-server/metrics-server 3.8.2 0.6.1 Metrics Server is a scalable, efficient source ...
metrics-server/metrics-server 3.8.1 0.6.1 Metrics Server is a scalable, efficient source ...
metrics-server/metrics-server 3.8.0 0.6.0 Metrics Server is a scalable, efficient source ...
metrics-server/metrics-server 3.7.0 0.5.2 Metrics Server is a scalable, efficient source ...
metrics-server/metrics-server 3.6.0 0.5.1 Metrics Server is a scalable, efficient source ...
metrics-server/metrics-server 3.5.0 0.5.0 Metrics Server is a scalable, efficient source ..
# fetch指定倉(cāng)庫(kù),然后進(jìn)行values值的修改
$ helm fetch metrics-server/metrics-server --version=3.8.2
$ tar zxvf metrics-server-3.8.2.tgz
這里注意,如果我們無(wú)法下載到metrics-server的tgz包,就是我們無(wú)法訪問(wèn)GitHub,這里我們可以通過(guò)修改HOSTS文件解決;然后再進(jìn)行fetch。
參考鏈接地址:
https://zhuanlan.zhihu.com/p/272741266。
$ vim /etc/hosts
# GitHub Start
140.82.113.3 github.com
140.82.114.20 gist.github.com
151.101.184.133 assets-cdn.github.com
151.101.184.133 raw.githubusercontent.com
151.101.184.133 gist.githubusercontent.com
151.101.184.133 cloud.githubusercontent.com
151.101.184.133 camo.githubusercontent.com
151.101.184.133 avatars0.githubusercontent.com
199.232.68.133 avatars0.githubusercontent.com
199.232.28.133 avatars1.githubusercontent.com
151.101.184.133 avatars1.githubusercontent.com
151.101.184.133 avatars2.githubusercontent.com
199.232.28.133 avatars2.githubusercontent.com
151.101.184.133 avatars3.githubusercontent.com
199.232.68.133 avatars3.githubusercontent.com
151.101.184.133 avatars4.githubusercontent.com
199.232.68.133 avatars4.githubusercontent.com
151.101.184.133 avatars5.githubusercontent.com
199.232.68.133 avatars5.githubusercontent.com
151.101.184.133 avatars6.githubusercontent.com
199.232.68.133 avatars6.githubusercontent.com
151.101.184.133 avatars7.githubusercontent.com
199.232.68.133 avatars7.githubusercontent.com
151.101.184.133 avatars8.githubusercontent.com
199.232.68.133 avatars8.githubusercontent.com
# GitHub End
打開values文件。
$ vim metrics-server/values.yaml
修改內(nèi)容如下:
image:
repository: docker.io/bitnami/metrics-server #這里指定dockerhub 我們可以下載到
# Overrides the image tag whose default is v{{ .Chart.AppVersion }}
tag: "0.6.1" #這里填寫鏡像的tag,如上所示的0.6.1, 大家也可以去hub.docker.com 進(jìn)行鏡像地址確認(rèn)
pullPolicy: IfNotPresent
配置`--kubelet-insecure-tls參數(shù)跳過(guò)證書校驗(yàn)`。
具體要求,可參考metrics的GitHub地址。
Metrics Server 對(duì)集群和網(wǎng)絡(luò)配置有特定要求。這些要求并不是所有集群發(fā)行版的默認(rèn)要求。在使用 Metrics Server 之前,請(qǐng)確保您的集群分布支持這些要求:
- kube-apiserver 必須啟用聚合層。
- 節(jié)點(diǎn)必須啟用 Webhook身份驗(yàn)證和授權(quán)。
- Kubelet 證書需要由集群證書頒發(fā)機(jī)構(gòu)簽名(或通過(guò)傳遞--kubelet-insecure-tls給 Metrics Server 來(lái)禁用證書驗(yàn)證)
- 容器運(yùn)行時(shí)必須實(shí)現(xiàn)容器度量 RPC(或具有cAdvisor支持)。
- 網(wǎng)絡(luò)應(yīng)支持以下通信:
- 控制平面到 Metrics Server??刂破矫婀?jié)點(diǎn)需要到達(dá) Metrics Server 的 pod IP 和端口 10250(或節(jié)點(diǎn) IP 和自定義端口,如果hostNetwork啟用)。閱讀有關(guān)控制平面到節(jié)點(diǎn)通信的更多信息。
- Metrics Server 到所有節(jié)點(diǎn)上的 Kubelet。Metrics 服務(wù)器需要到達(dá)節(jié)點(diǎn)地址和 Kubelet 端口。地址和端口在 Kubelet 中配置并作為 Node 對(duì)象的一部分發(fā)布。字段中的地址.status.addresses和端口.status.daemonEndpoints.kubeletEndpoint.port(默認(rèn)為 10250)。Metrics Server 將根據(jù)kubelet-preferred-address-types命令行標(biāo)志提供的列表(InternalIP,ExternalIP,Hostname清單中的默認(rèn)值)選擇第一個(gè)節(jié)點(diǎn)地址。
defaultArgs:
- --cert-dir=/tmp
- --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
- --kubelet-use-node-status-port
- --metric-resolution=15s
#這行進(jìn)行修改
args:
- --kubelet-insecure-tls
進(jìn)行安裝:
$ kubectl create ns metrics-server
$ helm install metrics-server -n metrics-server ./metrics-server
進(jìn)行驗(yàn)證
$ kubectl -n metrics-server get pod -owide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
metrics-server-56c6866684-w6n9b 1/1 Running 0 49m 10.244.2.5 k8s-unode3
$ kubectl top node
NAME CPU(cores) CPU% MEMORY(bytes) MEMORY%
k8s-unode1 136m 6% 1800Mi 47%
k8s-unode2 46m 2% 888Mi 23%
k8s-unode3 45m 2% 889Mi 23%
k8s-unode4 40m 2% 785Mi 20%
當(dāng)前題目:Kubernetes1.24.3通過(guò)Helm安裝Metrics-Server
鏈接分享:http://m.fisionsoft.com.cn/article/cceihcc.html
其他資訊
- 創(chuàng)新互聯(lián)小程序教程:微信小程序API背景
- Linux數(shù)據(jù)恢復(fù)指南:從無(wú)到有重建數(shù)據(jù)(linux數(shù)據(jù)的恢復(fù))
- SpringBoot+Disruptor實(shí)現(xiàn)特快高并發(fā)處理,贊!
- 鼠標(biāo)左鍵點(diǎn)網(wǎng)頁(yè)鏈接不會(huì)跳轉(zhuǎn),自動(dòng)彈出新的窗口顯示該網(wǎng)頁(yè)?(主機(jī)跳轉(zhuǎn)問(wèn)題-虛擬主機(jī)/數(shù)據(jù)庫(kù)問(wèn)題)
- 為什么wps文檔下拉選項(xiàng)


咨詢
建站咨詢
