kubernetes之Pod水平自动伸缩(HPA)
- [root@node-01 ~]# cat deployment-nginx.yaml
- apiVersion: apps/v1beta1
- kind: Deployment
- metadata:
- name: nginx-deployment
- spec:
- replicas: 2 # tells deployment to run 2 pods matching the template
- template: # create pods using pod definition in this template
- metadata:
- labels:
- app: nginx
- spec:
- nodeSelector:
- app: nginx
- containers:
- - name: nginx
- image: nginx:1.8
- ports:
- - containerPort: 80
- livenessProbe:
- httpGet:
- path: /
- port: 80
- initialDelaySeconds: 10
- timeoutSeconds: 2
- periodSeconds: 10
- resources:
- limits:
- cpu: 200m
- memory: 30Mi
- requests:
- cpu: 100m
- memory: 20Mi
- ---
- apiVersion: v1
- kind: Service
- metadata:
- name: nginx-deployment
- labels:
- app: nginx-deployment
- spec:
- ports:
- - port: 80
- protocol: TCP
- selector:
- app: nginx
- [root@node-01 ~]# kubectl apply -f deployment-nginx.yaml
创建一个HPA控制器,用于监控对象资源利用率
- kubectl autoscale deployment nginx-deployment --min=2 --max=6 --cpu-percent=50
- # 对nginx的deployment的对象创建HPA控制器,当CPU的使率超过50%时实现自动化扩容,支持1到6之前Pod副本数量,以使得Pod CPU使用率维持在50% 以内。
增加负载
- $ kubectl run -i --tty load-generator --image=busybox /bin/sh
- Hit enter for command prompt
- $ while true; do wget -q -O- http://nginx-deployment; done
检查pod的负载情况
- [root@node-01 ~]# kubectl get hpa
- NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE
- nginx-deployment Deployment/nginx-deployment 4%/20% 2 5 2 28h
- [root@node-01 ~]# kubectl get hpa
- NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE
- nginx-deployment Deployment/nginx-deployment 64%/20% 2 5 5 28h
同时看到replicas已经增加到了5,测试完成。
注意 自动伸缩完成副本数量的改变可能需要几分钟的时间。
kubernetes之Pod水平自动伸缩(HPA)的更多相关文章
- Kubernetes Pod水平自动伸缩(HPA)
HPA简介 HAP,全称 Horizontal Pod Autoscaler, 可以基于 CPU 利用率自动扩缩 ReplicationController.Deployment 和 ReplicaS ...
- Horizontal Pod Autoscaler(Pod水平自动伸缩)
Horizontal Pod Autoscaler 根据观察到的CPU利用率(或在支持自定义指标的情况下,根据其他一些应用程序提供的指标)自动伸缩 replication controller, de ...
- 13.深入k8s:Pod 水平自动扩缩HPA及其源码分析
转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com 源码版本是1.19 Pod 水平自动扩缩 Pod 水平自动扩缩工作原理 Pod 水平自动 ...
- kubernetes云平台管理实战:HPA水平自动伸缩(十一)
一.自动伸缩 1.启动 [root@k8s-master ~]# kubectl autoscale deployment nginx-deployment --max=8 --min=2 --cpu ...
- 通过一个实际例子理解Kubernetes里pod的自动scale - 水平自动伸缩
kubectl scale命令用于程序在负载加重或缩小时进行pod扩容或缩小,我们通过一些实际例子来观察scale命令到底能达到什么效果. 命令行创建一个deployment: kubectl run ...
- [置顶]
Kubernetes1.7新特性:新增自动伸缩条件和参数
一.核心概念 Horizontal Pod Autoscaling,简称HPA,是Kubernetes中实现POD水平自动伸缩的功能.云计算具有水平弹性的特性,这个是云计算区别于传统IT技术架构的主要 ...
- 【六】K8s-Pod 水平自动扩缩实践(简称HPA)
一.概述 Pod 水平自动扩缩(Horizontal Pod Autoscaler)简称 HPA,HPA 可以根据 CPU 利用率进行自动伸缩 Pod 副本数量,除了 CPU 利用率,也可以基于其他应 ...
- Kubernetes之Pod使用
一.什么是Podkubernetes中的一切都可以理解为是一种资源对象,pod,rc,service,都可以理解是 一种资源对象.pod的组成示意图如下,由一个叫”pause“的根容器,加上一个或多个 ...
- Kubernetes使用Keda进行弹性伸缩,更合理利用资源
我最新最全的文章都在南瓜慢说 www.pkslow.com,欢迎大家来喝茶! 1 简介 Kubernetes自带的HPA是只支持CPU/MEM的,很多时候我们并不根据这两项指标来进行伸缩资源.比如消费 ...
随机推荐
- 【LeetCode】1060. Missing Element in Sorted Array 解题报告 (C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 遍历 日期 题目地址:https://leetcode ...
- 【九度OJ】题目1124:Digital Roots 解题报告
[九度OJ]题目1124:Digital Roots 解题报告 标签(空格分隔): 九度OJ 原题地址:http://ac.jobdu.com/problem.php?pid=1124 题目描述: T ...
- 【LeetCode】Largest Number 解题报告
[LeetCode]Largest Number 解题报告 标签(空格分隔): LeetCode 题目地址:https://leetcode.com/problems/largest-number/# ...
- 一、golang以及vscode的安装和配置
1.golang的下载安装 golang的官网最近好像整合了内容,统一到了一个地址:https://go.dev/ 首页直接点击download,下载自己对应的版本即可. 安装是傻瓜式的,一般默认安装 ...
- 数据结构作业——P53页算法设计题(7):原地逆转链表
一. 题目描述: 设计一个算法,将链表中所有结点的链接方向"原地"逆转,即要求仅利用原表的存储空间,换句话说,要求算法的空间复杂度为O(1). 二.算法设计 #include< ...
- Regularizing Deep Networks with Semantic Data Augmentation
目录 概 主要内容 代码 Wang Y., Huang G., Song S., Pan X., Xia Y. and Wu C. Regularizing Deep Networks with Se ...
- A Tutorial on Energy-Based Learning
目录 概 主要内容 损失函数 Energy Loss Generalized Perceptron Loss Generalized Margin Loss Hinge Loss Log Loss L ...
- vue 滚动公告
<!-- 滚动公告 --> <div class="textArr"> <p class="slice-enter-active" ...
- 使用PyTorch构建神经网络模型进行手写识别
使用PyTorch构建神经网络模型进行手写识别 PyTorch是一种基于Torch库的开源机器学习库,应用于计算机视觉和自然语言处理等应用,本章内容将从安装以及通过Torch构建基础的神经网络,计算梯 ...
- 【工具】Java转换exe
一.导出jar包 eclipse中对着要转换的项目,右键,导出 搜索jar,选择jar文件,下一步 选择要输出的项目 继续下一步 选择主程序 完成 二.下载及安装exe4j,并转换jar文件为exe文 ...