一. 资源监控 ![](https://img-blog.csdnimg.cn/direct/60edc5c545b5468bab0ddee2166041d2.png)
![](https://img-blog.csdnimg.cn/direct/0284fc6f11694455a23bad7a7fa9d775.png)
二. metrics-server资源下载配置
官网:资源下载:https://github.com/kubernetes-incubator/metrics-server
wget https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
1. 将文件中所需要的镜像路径修改下载并上传到仓库 vim.components.yaml
docker pull bitnami/metrics-server:0.6.2
docker tag bitnami/metrics-server:0.6.2 reg.westos.org/library/metrics-server:0.6.2
docker push reg.westos.org/library/metrics-server:0.6.2
2. 添加这个选项
3. 应用文件后查看是否成功
部署时可能遇到的错误
三.dashboard资源下载配置 ![](https://img-blog.csdnimg.cn/direct/18c9235d0fd0426998c1375fb8fe3b97.png)
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml
1. 将文件中所需要镜像下载并上传到仓库 vim recommended.yaml
docker pull kubernetesui/metrics-scraper:v1.0.8
docker tag kubernetesui/metrics-scraper:v1.0.8 reg.westos.org/kubernetesui/metrics-scraper:v1.0.8
docker push reg.westos.org/kubernetesui/metrics-scraper:v1.0.8docker pull kubernetesui/dashboard:v2.7.0
docker tag kubernetesui/dashboard:v2.7.0 reg.westos.org/kubernetesui/dashboard:v2.7.0
docker push reg.westos.org/kubernetesui/dashboard:v2.7.0
2. 应用文件查看是否成功
四.hpa工作原理 ![](https://img-blog.csdnimg.cn/direct/9803548a1ac6494ebb6a3392529002d2.png)
1. 下载并上传镜像到私有仓库
2.创建编辑文件 vim hpa.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: php-apache
spec:
selector:
matchLabels:
run: php-apache
replicas: 1
template:
metadata:
labels:
run: php-apache
spec:
containers:
- name: php-apache
image: hpa-example
ports:
- containerPort: 80
resources:
limits:
cpu: 500m
requests:
cpu: 200m
---
apiVersion: v1
kind: Service
metadata:
name: php-apache
labels:
run: php-apache
spec:
ports:
- port: 80
selector:
run: php-apache
3. 创建hpa动态弹缩
kubectl autoscale deployment php-apache --cpu-percent=50 --min=1 --max=10
4. 增加负载 不断给CPU施压
kubectl run -i --tty load-generator --rm --image=busybox --restart=Never -- /bin/sh -c "while sleep 0.01; do wget -q -O- http://php-apache; done"
触发hpa扩容pod 此时查看到已经拉伸到8个pod
pod负载上升
5. 停止施压
ctrl+c
此时发现占有CUP会下降
此时看到仍然没有缩容因为有冷却五分钟
到时间后在查看已经缩容为1个
实验完成直接删除pod即可
多项量度指标
修改文件,增加内存指标
kubectl get hpa php-apache -o yaml > hpa-v2.yaml