K8S之HPA

HPA(Horizontal Pod Autoscaling):pod的水平自动伸缩

这是K8S自带的模块

pod占用CPU的比率到达一定的阀值,会触发伸缩机制

replication controller:副本控制器。pod的副本数

deployment controller:节点控制器。部署pod

HPA控制副本的数量以及控制部署pod

1、HPA基于kubecontroll-manager服务,周期性的检测pod的cpu使用频率,默认30s

2、HPA和replication controller、deployment controller都属于K8S的资源对象。通过跟踪分析副本控制器和deployment的pod的负载变化,针对性的调整目标pod的副本数

针对性:会有一个阀值,定义的是:在正常情况下pod的副本数以及达到阀值后pod的扩容最大数量

3、metrics-server部署到集群中,对外提供度量的数据

HPA的规则:

1、定义pod的时候必须要有资源限制,否则HPA无法进行监控

2、扩容是即时的,只要超过调值会立刻扩容,但是不是立刻扩容到最大副本数。会在最小值和最大值之间波动。如果扩容的数量满足了要求,不会再扩容

3、缩容是缓慢的。如果业务的峰值较高,回收的策略太积极的话,可能会产生业务的崩溃。缩容的速度是比较慢的

周期性的获取数据,缩容的机制问题

pod的副本数扩缩容有两种方式:

1、手动(修改控制器的副本数)

① kubectl scale deployment centos-test --replicas=5

② kubectl edit deployments .apps centos-test

③ 修改yaml文件

replicas: 1

apply -f 部署更新

2、自动扩缩容

HPA  HPA监控的是CPU

资源限制:

①pod的资源限制

②命名空间资源限制

lucky-cloud项目.-部在test1的命名空问,如果lucky-coloud不做限制,或者命名空问不做限制,他依然会占满所有集群资源

K8S集群部署pod的最大数量:10000个

busybox: 就是最小化的centos 4M

哪些服务会部署在k8s当中:

中间件:

kafka:6个

redis:3个

业务服务:

自定义的镜像创建的容器:

pluigs

前端:

nginx 3-6个  50%

电网: 配电云主站

12个左右

mysql是独立的,是实机部署

ELK不好说

docker

k8s

真机

配电云主站:没有elk

命名空间资源限制:

HPA 自动扩缩容

命名空间

第一种:

ResourceQuota

可以对命名空间进行资源限制

第二种:

LimitRange:

直接声明在命名空问当中创建的pod,容器的资源限制,这是一种统一限制。所有的pod都受这个条件的制约

pod资源限制(一般是我们创建的时候声明好的,必加选项)

resources:

limit

命名空间资源限制 对命令空间使用cpu和内存一定会做限制

命名空间资源限制

ResourceQuota

核心: 防止整个集群的资源被一个服务或者一个命名空间占满。

命名空间统一资源限制

LimitRange

HPA:自动伸缩。

nodeName固定在一个pod,观察,扩容之后,调值是否会下降

相关推荐

  1. <span style='color:red;'>k</span><span style='color:red;'>8</span><span style='color:red;'>s</span><span style='color:red;'>之</span><span style='color:red;'>HPA</span>

    k8sHPA

    2024-01-25 13:12:02      25 阅读
  2. <span style='color:red;'>K</span><span style='color:red;'>8</span><span style='color:red;'>S</span><span style='color:red;'>之</span><span style='color:red;'>HPA</span>

    K8SHPA

    2024-01-25 13:12:02      33 阅读
  3. k8s---HPA

    2024-01-25 13:12:02       34 阅读
  4. <span style='color:red;'>k</span><span style='color:red;'>8</span><span style='color:red;'>s</span>-<span style='color:red;'>HPA</span>

    k8s-HPA

    2024-01-25 13:12:02      27 阅读
  5. <span style='color:red;'>K</span><span style='color:red;'>8</span><span style='color:red;'>S</span>的<span style='color:red;'>HPA</span>

    K8SHPA

    2024-01-25 13:12:02      33 阅读
  6. <span style='color:red;'>k</span><span style='color:red;'>8</span><span style='color:red;'>s</span>的<span style='color:red;'>hpa</span>

    k8shpa

    2024-01-25 13:12:02      33 阅读
  7. K8s - Helm、HPA、rancher

    2024-01-25 13:12:02       29 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-25 13:12:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-25 13:12:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-25 13:12:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-25 13:12:02       20 阅读

热门阅读

  1. 根目录逃逸Yaml

    2024-01-25 13:12:02       30 阅读
  2. HJ11 数字颠倒【C语言】

    2024-01-25 13:12:02       32 阅读
  3. linux系统nginx监控的使用

    2024-01-25 13:12:02       36 阅读
  4. P5469 [NOI2019] 机器人 洛谷黑题题解

    2024-01-25 13:12:02       31 阅读
  5. 【笔记】Helm-4 最佳实践-3 模板

    2024-01-25 13:12:02       38 阅读
  6. 使用 git rebase 合并多个 commit

    2024-01-25 13:12:02       31 阅读
  7. openssl3.2/test/certs - 043 - 4096-bit leaf key

    2024-01-25 13:12:02       38 阅读
  8. v-if 导致 elementui 表单校验失效问题解决

    2024-01-25 13:12:02       31 阅读
  9. linux Socket 缓存 介绍

    2024-01-25 13:12:02       34 阅读