K8S 彈性伸縮

2022-06-25 04:54:15 字數 2120 閱讀 8253

kubernetes有乙個hpa(horizontal pod autoscaler)的資源,可以實現基於cpu使用率的pod自動伸縮的功能。hpa基於master node上的kube-controller-manager服務啟動引數–horizontal-pod-autoscaler-sync-period定義的時長(預設為30秒),

週期性的檢測pod的cpu使用率(需要事先安裝heapster)。如果需要設定–horizontal-pod-autoscaler-sync-period可以在master node上的/etc/default/kube-controller-manager中修改,v1.18.1以後監控使用的是metrics-server,

tar -zxvf v0.3.6.tar.gz

2、修改metrice-server配置

cd metrics-server-0.3.6/deploy/1.8+/

vim metrics-server-deployment.yaml

3、vim metrics-server-deployment.yaml修改檔案內容

apiversion: v1

kind: serviceaccount

metadata:

name: metrics-server

namespace: kube-system

---kind: deployment

metadata:

name: metrics-server

namespace: kube-system

labels:

spec:

selector:

matchlabels:

template:

metadata:

name: metrics-server

labels:

spec:

serviceaccountname: metrics-server

volumes:

# mount in tmp so we can safely use from-scratch images and/or read-only containers

- name: tmp-dir

emptydir: {}

containers:

- name: metrics-server

# 修改image 和 imagepullpolicy

image: mirrorgooglecontainers/metrics-server-amd64:v0.3.6

imagepullpolicy: ifnotpresent

# 新增command配置

command:

- /metrics-server

- --kubelet-insecure-tls

- --kubelet-preferred-address-types=internaldns,internalip,externaldns,externalip,hostname

volumemounts:

- name: tmp-dir

mountpath: /tmp

# 新增resources配置

resources:

limits:

cpu: 300m

memory: 200mi

requests:

cpu: 200m

memory: 100mi

4、安裝metrics-server

5、檢視nodes的資訊

[root@k8s-master 1.8+]# kubectl top nodes 

name cpu(cores) cpu% memory(bytes) memory%

k8s-master 94m 4% 959mi 55%

k8s-node1 58m 5% 580mi 66%

k8s-node2 39m 3% 552mi 63%

k8s彈性伸縮概念以及測試用例

本文原文出處 彈性伸縮式k8s中的一大亮點功能,當負載大的時候,你可以對應用進行擴容,提公升pod的副本數來應對大量的流量,當負載小的時候可以對應用進行縮容,以避免資源浪費。也可以讓應用自動的進行擴容和縮容,這一功能有用。例如當微博出現了乙個話題時,這個時候人們都去訪問,此時他的伺服器將無法處理大量...

k8s(配置檔案完成伸縮)

在剛才的實驗中我們可以看到在剛才的yml指令碼中 我們寫入replicas為2,所以這時我們應該已經擁有了兩個副本,我們可以使用命令進行檢視,我們所有的執行副本。當然如果你要刪除這個部署可以使用一下兩個命令 kubectl delete deployment nginx deployment 刪除名...

深入玩轉K8S之簡單的業務彈性伸縮和滾動更新操作

首先是彈性伸縮,很簡單就是通過編寫deployment檔案,把副本數增大,就完成了業務的彈性擴充套件,那麼擴充套件完了怎麼調小呢,那麼也按照剛才的方法進行調整副本大小即可。最後說下滾動更新的操作,也很簡單跟剛才彈性伸縮差不多,為了方便區分,這裡弄了多個deployment,按照v1,v2來區分。ok...