• 博客访问: 806951
  • 博文数量: 239
  • 用 户 组: 普通用户
  • 注册时间: 2013-02-05 14:37
  • 认证徽章:
个人简介

走路 行心 修缘(需要交流的请加我的QQ 273936024)

文章分类

全部博文(239)

文章存档

2018年(49)

2017年(63)

2016年(39)

2015年(20)

2014年(29)

2013年(39)

分类: Docker/K8

2018-05-14 15:58:54

一:简介
Kubernetes通过HPA控制器,用于实现基本CPU使用率进行自动Pod扩容和缩容的功能。HAP控制器基于Master的Kube-controller-manager服务启动参数--horizontal-pod-autoscaler-sync-period定义的时长(默认值为30s),周期性地检测目标Pod的CPU使用率,并在满足条件时对ReplicationController或Deployment中的Pod副本数量进行调整,以符合用户定义的平均Pod CPU使用率。Pod CPU使用率来源于Heapster组件,所有需要预先安装好Heapster.

二:HPA的创建
创建HPA时可以使用kubectl autoscale命令进行快速创建或者使用Yaml配置文件进行创建,在创建HPA之前,需要已经存在一个Deployment/RC对象,并且该Deployment/RC中的Pod必须定义resources.requests.cpu的资源请求值,如果不设置该值,则Heapster将无法采集到Pod的CPU使用情况,会导致HPA无法正常工作。

举例:

1.kubectl autoscale deployment php-apache --min=1 --max=10 --cpu-percent=50

2.通过yaml文件创建

点击(此处)折叠或打开

  1. apiVersion: autoscaling/v1
  2. kind: HorizontalPodAutoscaler
  3. metadata:
  4.   name: php-apache
  5. spec:
  6.   scaleTargetRef:
  7.     apiVersion: apps/v1beta1
  8.     kind: Deployment
  9.     name: php-apache
  10.   minReplicas: 1
  11.   maxReplicas: 10
  12.   targetCPUUtilizationPercentage: 50

阅读(114) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
请登录后评论。

登录 注册