Kubernetes基础:资源扩缩容方法(Replica Set)
Kubernetes提供了多种方式对于资源的扩缩容进行操作,这篇文章以RS(Replica Set)为例进行说明。
常用方法
方法1: 使用kubectl scale进行扩缩容
执行kubectl scale指定资源进行扩缩容操作
扩缩容命令:kubectl scale
方法2: 修改YAML文件执行kubectl apply进行扩缩容
通过如下步骤进行扩缩容:
- 步骤1: 修改YAML文件的replica的实例数量
- 步骤2: 通过kubectl apply -f 命令执行扩缩容
RS示例说明
示例YAML文件如下所示:
[root@host131 ReplicaSet]# cat selecotr-busybox-rs.yaml
---
apiVersion: apps/v1
kind: ReplicaSet
metadata:name: test-rs
spec:replicas: 1selector:matchLabels:app: busybox-rs-prodtemplate:metadata:name: busyboxlabels:app: busybox-rs-prodspec:containers:- name: busybox-hostimage: busybox:latestcommand: ["sleep"]args: ["10000"]
...
[root@host131 ReplicaSet]#
生成RS和Pod
[root@host131 ReplicaSet]# kubectl create -f selecotr-busybox-rs.yaml
replicaset.apps/test-rs created
[root@host131 ReplicaSet]#
[root@host131 ReplicaSet]# kubectl get rs -o wide
NAME DESIRED CURRENT READY AGE CONTAINERS IMAGES SELECTOR
test-rs 1 1 1 7s busybox-host busybox:latest app=busybox-rs-prod
[root@host131 ReplicaSet]#
[root@host131 ReplicaSet]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
test-rs-nrjhh 1/1 Running 0 16s 10.254.152.5 192.168.163.131 <none> <none>
[root@host131 ReplicaSet]#
- 使用kubectl scale将Pod从1调整为3
[root@host131 ReplicaSet]# kubectl scale rs/test-rs --replicas=3
replicaset.apps/test-rs scaled
[root@host131 ReplicaSet]#
也可以使用如下格式执行操作
[root@host131 ReplicaSet]# kubectl scale rs test-rs --replicas=3
replicaset.apps/test-rs scaled
[root@host131 ReplicaSet]#
执行结果确认
[root@host131 ReplicaSet]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
test-rs-97thq 0/1 ContainerCreating 0 5s <none> 192.168.163.131 <none> <none>
test-rs-gw72x 0/1 ContainerCreating 0 5s <none> 192.168.163.131 <none> <none>
test-rs-nrjhh 1/1 Running 0 53s 10.254.152.5 192.168.163.131 <none> <none>
[root@host131 ReplicaSet]# kubectl get rs -o wide
NAME DESIRED CURRENT READY AGE CONTAINERS IMAGES SELECTOR
test-rs 3 3 3 57s busybox-host busybox:latest app=busybox-rs-prod
[root@host131 ReplicaSet]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
test-rs-97thq 1/1 Running 0 14s 10.254.152.7 192.168.163.131 <none> <none>
test-rs-gw72x 1/1 Running 0 14s 10.254.152.6 192.168.163.131 <none> <none>
test-rs-nrjhh 1/1 Running 0 62s 10.254.152.5 192.168.163.131 <none> <none>
[root@host131 ReplicaSet]#
- 使用kubectl apply方式将Pod从3调整为2
[root@host131 ReplicaSet]# vi selecotr-busybox-rc.yaml
[root@host131 ReplicaSet]# grep replicas selecotr-busybox-rc.yaml replicas: 2
[root@host131 ReplicaSet]#
[root@host131 ReplicaSet]# kubectl apply -f selecotr-busybox-rc.yaml
Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply
replicationcontroller/test-rc configured
[root@host131 ReplicaSet]#
确认结果如下所示
[root@host131 ReplicaSet]# kubectl get rs -o wide
NAME DESIRED CURRENT READY AGE CONTAINERS IMAGES SELECTOR
test-rs 2 2 2 2m36s busybox-host busybox:latest app=busybox-rs-prod
[root@host131 ReplicaSet]#
[root@host131 ReplicaSet]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
test-rs-97thq 1/1 Running 0 117s 10.254.152.7 192.168.163.131 <none> <none>
test-rs-gw72x 1/1 Terminating 0 117s 10.254.152.6 192.168.163.131 <none> <none>
test-rs-nrjhh 1/1 Running 0 2m45s 10.254.152.5 192.168.163.131 <none> <none>
[root@host131 ReplicaSet]#
[root@host131 ReplicaSet]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
test-rs-97thq 1/1 Running 0 4m1s 10.254.152.7 192.168.163.131 <none> <none>
test-rs-nrjhh 1/1 Running 0 4m49s 10.254.152.5 192.168.163.131 <none> <none>
[root@host131 ReplicaSet]#
Kubernetes基础:资源扩缩容方法(Replica Set)相关推荐
- Kubernetes基础:资源扩缩容方法(Replication Controller)
Kubernetes提供了多种方式对于资源的扩缩容进行操作,这篇文章以RC(Replication Controller)为例进行说明. 常用方法 方法1: 使用kubectl scale进行扩缩容 ...
- Kubernetes HPA 动态弹性扩缩容
1.HPA 1.1HPA介绍 1.在Kubernetes中,HPA自动更新工作负载资源(例如:Deployment或者StatefulSet),目的是自动扩缩工作负载以满足需求,水平扩缩意味着对增加的 ...
- Kubernetes:HPA 详解-基于 CPU、内存和自定义指标自动扩缩容
目录 HPA 基本原理 Metrics Server 聚合 API 安装Metrics Server HPA 基于 CPU自动扩缩容 查看 HPA 资源的对象了解工作过程: HPA 基于 内存自动扩缩 ...
- Serverless Kubernetes 应用部署及扩缩容
作者 | 邓青琳(轻零) 阿里云技术专家 导读:本文分为三个部分,首先给大家演示 Serverless Kubernetes 集群的创建和业务应用的部署,其次介绍 Serverless Kuberne ...
- 爱奇艺体验Serverless极致扩缩容,资源利用率提升40%
简介:Serverless 应用引擎 SAE 是面向应用的 Serverless PaaS平台,提供了效率更高.成本更优的一站式应用托管方案.零门槛+零改造+零容器基础,即享Serverless+K8 ...
- 爱奇艺体育:体验Serverless极致扩缩容,资源利用率提升40%
简介: Serverless 应用引擎 SAE 是面向应用的 Serverless PaaS平台,提供了效率更高.成本更优的一站式应用托管方案.零门槛+零改造+零容器基础,即享Serverless+K ...
- Flink checkpoint操作流程详解与报错调试方法汇总,增量checkpoint原理及版本更新变化,作业恢复和扩缩容原理与优化
这里写目录标题 flink checkpint出错类型 flink 重启策略 Checkpint 流程简介 增量Checkpoint实现原理 MemoryStateBackend 原理 FsState ...
- K8S集群Pod资源自动扩缩容方案
K8S集群Pod资源自动扩缩容方案 1.为什么要是有自动扩缩容 在K8S集群中部署的应用程序都是以Pod的形式部署的,我们在部署Pod资源时都会指定Pod资源的副本数,但是这个数量是写死的,平时可能启 ...
- Fluid 0.5 版本发布:开启数据集缓存在线弹性扩缩容之路
作者 | 顾荣 南京大学PASALab, Fluid项目co-founder 来源 | 阿里巴巴云原生公众号 导读:为了解决大数据.AI 等数据密集型应用在云原生场景下,面临的异构数据源访问复杂.存 ...
最新文章
- Sublime Text 3 python 配置
- mysql深入使用教程_深入mysql基础知识的详解
- Android ListView 圆角
- django模板系统Template
- 计算机网址登录教程,melogincn电脑登录教程
- 计算机d盘不显示容量,电脑D盘可用空间小,可是看不到文件
- tde数据库加密_在其他服务器上还原启用了透明数据加密(TDE)的数据库
- android textview电话号码,Android应用开发之Android EditTextView 实现带空格分隔的输入(电话号码,银行卡)...
- java stream findany_Java Stream findFirst() vs findAny() API With Example
- 在线翻译、词典、离线工具大全
- 企业微信分享小程序功能
- 中国人正在上的四个大当 看你到底上了几个了?
- elasticsearch查看版本号
- 【Lua进阶系列】实例lua调用capi
- 按键边缘检测,控制LED亮灭
- Codeforces 371 A,B,C
- MACOS 12以上系统如何安装HP打印机驱动
- 【3D目标检测】[看code] VoxelRCNN RPN(一)
- 计算两个时间的时间差(C语言)
- 2022年围绕着BI平台的成长
热门文章
- 蔡高厅高等数学29-隐函数求导数方法
- 【学术】collins词典的固定用法和例句
- 管理“移动×××”的好助手GFIEndPointSecurity详解
- 人工智能:新技术的“双刃剑”
- 腾讯云短视频服务端解决方案
- HMS Core Keyring携手航班管家和高铁管家,打造美好出行体验
- 目前流行的微型计算机内存的配置为,全国计算机一级考试模拟试题
- 深入理解机器学习——类别不平衡学习(Imbalanced Learning):应用领域
- 重大要素改变中的机会选择包括_CCAA12月5日下午ISO90012015转版考试题A答案
- fx5800p编程教程_CASIOfx5800P基本功能及编程学习解说.ppt