企業內網部署helm3.11和Metrics-server

helm是k8s中yaml的管理工具,其功能和docker-compose類似,爲了方便服務的編排而生。通過helm倉庫中的helm腳本,可以方便的生成應用,而不是編寫deployment、svc、等等,手寫yaml方式步驟繁瑣,消耗時間長,且容易出錯,helm的出現極簡化了開源軟件、第三方插件的部署。

一、安裝helm3

helm3與helm2不同,helm3中取消了tiller,所以安裝之後一定不要再去創建tiller的pod,官網介紹helm3安裝時沒有明顯指明,如果按照helm 2的安裝方式,是無法進行下去,這一點要特別注意。

首先下載軟件:

wget https://get.helm.sh/helm-v3.1.1-linux-amd64.tar.gz

如果因爲網絡不能下載,可以直接使用我博客裏面的下載鏈接

二、解壓使用

tar -zxvf helm-v3.1.1-linux-amd64.tar.gz
cd linux-amd64
cp helm /usr/local/bin

helm version
version.BuildInfo{Version:"v3.1.1", GitCommit:"afe70585407b420d0097d07b21c47dc511525ac8", GitTreeState:"clean", GoVersion:"go1.13.8"}

顯示版本正確則說明正常,如果顯示無法識別的二進制文件,檢查下載tar是不是本架構的,如arm架構的helm不能在amd上使用,要特別注意分辨。

在原來helm2中安裝的時候,需要創建helm的serviceaccount、集羣角色綁定、helm init操作,才能使用helm,而helm3中不需要,取消了tiller,要注意過程中安裝的坑,至此完成了helm的安裝。

三、安裝metrics-server

由於是內網安裝,有兩種方式,一種是每個節點手工導入metrics鏡像,一種是使用harbor倉庫,將metrics鏡像push到倉庫中,第一種方式適用於節點較少的集羣,第二種適用於節點較多的集羣。

不管使用第一種,還是第二種方式,都要將鏡像先下載到某個節點上,這裏是企業內網,不允許訪問外網,因此使用image導入的方式,下載本文中的metrics-server-amd64.tar,通過docker load -i metrics-server-amd64.tar 命令導入,特別強調和主機的額,如果不使用harbor,則每個節點上都要導入鏡像。

註釋:helm添加repo方式:

helm repo add regirnetes.oss-cn-hangzhou.aliyuncs.com/charts 
##這個倉庫的地址已經不再使用,網上大部分是這個地址,特別注意不要添加
helm repo add stable http://mirror.azure.cn/kubernetes/charts
##這個地址經過測試是可以使用的

helm的 repo內網是無法使用的,因此把metrics-server的chart要下載到內網,由中轉機再上傳到服務器。

helm pull stable/metrics-server

下載下來的文件metrics-server-2.10.0.tgz

如果不能上網,可以使用提供的下載源metrics-server-2.10.0.tgz

四、安裝metrics-server

docker images |grep metrics檢查鏡像是不是已經準備好,或者harbor倉庫已經導入

進入metrics-server-2.10.0目錄,配置metrics參數,這一步是必須的,否則安裝完成後,顯示no metrics known for pod

vi metrics-config.yaml

args:
- --kubelet-preferred-address-types=InternalIP
- --kubelet-insecure-tls
- --logtostderr

使用命令安裝

helm install metrics . --set image.repository=k8s.gcr.io/metrics-server-amd64 --set image.tag=v0.3.6 --namespace kube-system -f metrics-config.yaml 

其中image.repository要指定正確的鏡像源,否則就會報錯。

五、測試metrics

安裝完成後,稍等片刻,測試node和po的節點

 kubectl top node
NAME                 CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%   
cka60.xulinpeng.cn   747m         37%    2043Mi          53%       
cka61.xulinpeng.cn   161m         8%     758Mi           19%       
cka62.xulinpeng.cn   168m         8%     906Mi           23%     

kubectl top po
NAME                              CPU(cores)   MEMORY(bytes)   
details-v1-78d78fbddf-k4rx4       9m           44Mi            
nginx-6ddf485959-58bj2            7m           32Mi            
nginx-6ddf485959-pjdhj            10m          32Mi            
productpage-v1-596598f447-r8d7v   23m          85Mi            
ratings-v1-6c9dbf6b45-fwj2k       23m          39Mi            
reviews-v1-7bb8ffd9b6-jfcdj       11m          156Mi           
reviews-v2-d7d75fff8-lrbr6        11m          134Mi           
reviews-v3-68964bc4c8-8vd2c       16m          182Mi      

測試無問題則完成安裝,安裝並不負責,主要在一些腳本、鏡像因爲網絡原因無法下載,曲線解決即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章