首页 > 其他分享 >k8s的RC和RS的区别

k8s的RC和RS的区别

时间:2024-09-16 10:51:19浏览次数:16  
标签:kubectl 副本 ReplicaSet RS ReplicationController nginx RC k8s

动一下小手点一下赞。谢谢! 你的赞就是我更新的动力。

在深入了解Kubernetes(K8S)中的ReplicationController(RC)和ReplicaSet(RS)之前,首先我们需要了解它们的概念和作用。RC是Kubernetes早期版本的概念,用于确保在任何时间都能保持指定数量的Pod副本。RS是RC的新版本,提供了更强大的选择器支持,允许更灵活的Pod副本管理。接下来,让我们深入探讨它们之间的区别,并通过代码示例来展示如何使用它们。

RC和RS的区别

特点

ReplicationController

ReplicaSet

选择器支持

仅支持基本的选择器(equality-based)

支持更丰富的选择器(set-based)

兼容性

逐渐被淘汰,推荐使用RS

新版本,建议更多使用RS

扩展性

不支持scale subresources

支持scale subresources

实现步骤及代码示例

  1. 创建一个ReplicationController 创建一个名为nginx-rc的ReplicationController,并指定副本数为3。
apiVersion: v1
kind: ReplicationController
metadata:
  name: nginx-rc
spec:
  replicas: 3
  selector:
    app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx
  1. 创建一个ReplicaSet 创建一个名为nginx-rs的ReplicaSet,并指定副本数为3,选择器为app=nginx
apiVersion: apps/v1
kind: ReplicaSet
metadata:
  name: nginx-rs
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx
  1. 更新副本数 使用kubectl命令更新ReplicationController的副本数。
kubectl scale rc nginx-rc --replicas=5
  1. 扩容ReplicaSet 使用kubectl命令扩容ReplicaSet的副本数。
kubectl scale rs nginx-rs --replicas=5
  1. 删除ReplicationController 使用kubectl命令删除ReplicationController。
kubectl delete rc nginx-rc
  1. 删除ReplicaSet 使用kubectl命令删除ReplicaSet。
kubectl delete rs nginx-rs

通过上述步骤和代码示例,我们可以清晰地了解到ReplicationController和ReplicaSet的区别以及如何使用它们进行Pod副本管理。 在实际应用中,建议使用ReplicaSet来取代ReplicationController以获得更好的灵活性和功能支持。

标签:kubectl,副本,ReplicaSet,RS,ReplicationController,nginx,RC,k8s
From: https://blog.51cto.com/u_16886123/12030401

相关文章

  • Codeforces Round 972 (Div. 2)
    A.SimplePalindrome给定整数\(n\),构造长度为\(n\)的只由aeiou的字符串,使得它的回文子序列最少。容易发现aia不如aai优,贪心的将每种字符放在一起,并将总个数尽量均分到每个字符上。点击查看代码#include<bits/stdc++.h>usingnamespacestd;#definelllonglo......
  • 【弱监督时间动作定位】Weakly-Supervised Temporal Action Localization with Multi-
    Weakly-SupervisedTemporalActionLocalizationwithMulti-ModalPlateauTransformers论文阅读Abstract1.Introduction2.RelatedWork3.TheProposedMethod3.1.PreliminaryandMotivation3.2.BaseModel3.3.Multi-ModalPlateauTransformers3.3.1Multi-Mo......
  • 我与C++的爱恋:进程状态(RSDT 阻塞 僵尸 孤儿)
    ​​......
  • 个人学习笔记7-6:动手学深度学习pytorch版-李沐
    #人工智能##深度学习##语义分割##计算机视觉##神经网络#计算机视觉13.11全卷积网络全卷积网络(fullyconvolutionalnetwork,FCN)采用卷积神经网络实现了从图像像素到像素类别的变换。引入l转置卷积(transposedconvolution)实现的,输出的类别预测与输入图像在像素级别上具有......
  • Java零基础-replace(CharSequence target, CharSequence replacement)详解
    哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛  今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。  我是一名后端开发爱好者......
  • P7831 [CCO2021] Travelling Merchant
    妙妙题。题意给定\(n\)点\(m\)边的单向无自环图,每条边有权值\(r_i,p_i\),表示要经过这条边要有至少\(r_i\)的收益,经过这条边之后会获得\(p_i\)的收益。对每个点求出从该点出发能不停止的行走初始需要获得至少多少的收益。无解输出-1。\(n,m\le2\times10^5\)分析不......
  • 自研electron32+vue3+arcoDesign桌面OS系统应用-源码版
    Vue3-ElectronWinOS:基于最新前端跨平台技术electron32.x整合高性能构建工具vite5.js搭建的一款高颜值桌面端os管理系统程序。整个项目采用vue3setup语法糖编码开发,全新封装electron多窗口栅格引擎。【源码版】Electron32+Vue3+ArcoDesign桌面版os系统模板功能特性......
  • 【Elasticsearch系列四】ELK Stack
    ......
  • Codeforces Round 970 (Div. 3) 复盘
    CodeforcesRound970(Div.3)Sep/01/202422:35UTC+8length02:15好闲啊,还要写div3的复盘,就当听歌的同时练习翻译兼打字了。总而言之还是太菜了#Who=Penalty*ABCDEFGH1624BaSEc1d6250+00:04+00:19+00:24+00:34+01:17+01:32因为开学前......
  • 【题解】【枚举】——First Step (ファーストステップ)
    【题解】【枚举】——FirstStepファーストステップFirstStep(ファーストステップ)题目背景题目描述输入格式输出格式输入输出样例输入#1输出#1提示1.思路解析2.AC代码FirstStep(ファーストステップ)原题在洛谷上题目背景我们Aqours,要第一次举办演唱会啦......