文章目录
一、HPA 简介
【HPA官方文档:https://kubernetes.io/zh/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/】
Horizontal Pod Autoscaler 可以根据 CPU 利用率自动扩缩 ReplicationController、 Deployment、ReplicaSet 或 StatefulSet 中的 Pod 数量
本文需要:
- 需要一个运行中的 Kubernetes 集群以及 kubectl
- 部署 metrics-server 提供度量数据(部署参考:metrics-server 部署)
二、HPA 的配置与使用
准备镜像:
1.拉取镜像
docker pull mirrorgooglecontainers/hpa-example
2.上传到Harbor仓库
docker push zy.westos.org/library/hpa-example:latest
# 一个基于 php-apache 镜像的 定制 Docker 镜像。
# 该文件定义了一个 index.php 页面来执行一些 CPU 密集型计算
2.1 运行 php-apache 服务器并暴露服务
创建目录归类:
[root@server2 metrics]# mkdir hpa
[root@server2 metrics]# cd hpa/
1)启动一个 Deployment 来运行这个镜像并暴露一个服务
# hpa-apache.yml
apiVersion: apps/v1
kind: Deployment
metadata:
name: php-apache
spec:
selector:
matchLabels:
run: php-apache
replicas: 1