玛卡巴卡的k8s知识点问答题(六)

21. 什么是 ReplicaSet,说明它的主要用途。

ReplicaSet是k8s中的一个控制器,他用于保证任何时候,都有指定数量的Pod副本在运行,他是RC的升级版,支持更灵活的Pod选择器(基于集合的标签选择)

主要用途:

1.确保Pod的高可用性:通过维护一组稳定的Pod副本,即使某些Pod失败或被删除,RS也会自动创建新的Pod来维持期望的副本数。

2.水平拓展:可以通过台哦正replicas字段来手动扩展或伸缩Pod的数量。

3.与Deployment配合使用:RS通常不直接使用,而是作为Deployment的底层机制,由Deploymen管理RS以实现滚动更新和回滚功能。(每个版本都是不同的一个RS,通过控制不同版本的RS的POD的数量实现滚动更新)


22. Deployment 控制器是如何工作的,举例说明其常见用途。

Deployment 是 Kubernetes 中用于管理无状态应用的控制器,它通过管理 ReplicaSet 来实现 Pod 的声明式更新、回滚和扩缩容。

工作原理:
  1. 声明期望状态:用户通过 YAML 文件定义 Deployment 的期望状态(如副本数、Pod 模板、更新策略等)。

  2. 创建 ReplicaSet:Deployment 创建一个 ReplicaSet,并由 ReplicaSet 创建和管理 Pod。

  3. 滚动更新

    • 当 Pod 模板(如镜像版本)更新时,Deployment 会创建一个新的 ReplicaSet,并逐步将 Pod 从旧 ReplicaSet 迁移到新 ReplicaSet。

    • 支持多种更新策略(如 RollingUpdateRecreate)。

  4. 回滚:如果更新后出现问题,可以回滚到之前的版本(通过 kubectl rollout undo)。

常见用途:
  1. 部署微服务:例如部署一个 Web 服务,指定镜像和副本数:

    apiVersion: apps/v1
    kind: Deployment
    metadata:name: nginx-deployment
    spec:replicas: 3selector:matchLabels:app: nginxtemplate:metadata:labels:app: nginxspec:containers:- name: nginximage: nginx:1.14.2

  2. 滚动更新:更新镜像版本时,Deployment 会逐步替换旧 Pod。

  3. 蓝绿部署或金丝雀发布:结合多个 Deployment 和 Service 实现。


23. 解释 DaemonSet,列举其使用场景

DaemonSet 是 Kubernetes 中确保所有(或部分)节点上运行一个 Pod 副本的控制器。适用于需要在每个节点上运行一个实例的守护进程。

特点:
  • 每个节点自动运行一个 Pod。

  • 新节点加入集群时,DaemonSet 会自动在新节点上创建 Pod。

  • 节点被移除时,对应的 Pod 会被回收。

使用场景:
  1. 集群日志收集:如 Fluentd 或 Filebeat,在每个节点上收集日志并发送到中央存储。

  2. 监控代理:如 Prometheus 的 Node Exporter,在每个节点上收集监控数据。

  3. 网络插件:如 Calico 或 Flannel,在每个节点上运行网络代理。

  4. 存储守护进程:如 Ceph 或 GlusterFS 的客户端。

示例:
apiVersion: apps/v1
kind: DaemonSet
metadata:name: fluentd
spec:selector:matchLabels:name: fluentdtemplate:metadata:labels:name: fluentdspec:containers:- name: fluentdimage: fluentd:latest

24. 什么是 StatefulSet,其主要作用是什么?

StatefulSet 是 Kubernetes 中用于管理有状态应用的控制器,为 Pod 提供稳定的标识符(如持久化存储、网络标识和有序部署/扩展)。

主要作用:
  1. 稳定的网络标识

    • 每个 Pod 有固定的主机名(如 <statefulset-name>-<ordinal-index>)和 DNS 记录。

    • 通过 Headless Service 提供唯一的 DNS 解析。

  2. 持久化存储

    • 每个 Pod 可以绑定一个或多个 PersistentVolume,即使 Pod 被重新调度,存储也会保留。

    • 使用 volumeClaimTemplates 动态创建 PVC。

  3. 有序部署和扩展

    • Pod 按顺序创建/删除(从 0 到 N-1),适合主从架构的应用(如 MySQL 主从)。

    • 缩容时按逆序终止(从 N-1 到 0)。

适用场景:
  1. 数据库集群:如 MySQL、PostgreSQL 或 MongoDB 的主从复制。

  2. 消息队列:如 Kafka 或 RabbitMQ,需要持久化存储和稳定网络标识。

  3. 分布式存储系统:如 Elasticsearch 或 Zookeeper。

示例:
apiVersion: apps/v1
kind: StatefulSet
metadata:name: mysql
spec:serviceName: mysqlreplicas: 3selector:matchLabels:app: mysqltemplate:metadata:labels:app: mysqlspec:containers:- name: mysqlimage: mysql:5.7volumeMounts:- name: datamountPath: /var/lib/mysqlvolumeClaimTemplates:- metadata:name: dataspec:accessModes: ["ReadWriteOnce"]resources:requests:storage: 10Gi
与 Deployment 的区别:
  • StatefulSet 适用于有状态应用,Deployment 适用于无状态应用。

  • StatefulSet 提供稳定的存储和网络标识,Deployment 不保证。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/900197.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

P7453 [THUSC 2017] 大魔法师 Solution

Description 给定序列 a ( a 1 , a 2 , ⋯ , a n ) a(a_1,a_2,\cdots,a_n) a(a1​,a2​,⋯,an​)&#xff0c; b ( b 1 , b 2 , ⋯ , b n ) b(b_1,b_2,\cdots,b_n) b(b1​,b2​,⋯,bn​) 和 c ( c 1 , c 2 , ⋯ , c n ) c(c_1,c_2,\cdots,c_n) c(c1​,c2​,⋯,cn​)&…

免费送源码:Java+ssm+MySQL SpringBoot社区配送服务系统小程序 计算机毕业设计原创定制

摘要 随着科学技术的飞速发展&#xff0c;社会的方方面面、各行各业都在努力与现代的先进技术接轨&#xff0c;通过科技手段来提高自身的优势&#xff0c;社区当然也不例外。社区配送服务系统小程序是以实际运用为开发背景&#xff0c;运用软件工程原理和开发方法&#xff0c;…

SQL语句(一)—— DDL

目录 一、SQL 基础知识 &#xff08;一&#xff09;SQL 通用语法 &#xff08;二&#xff09;SQL 分类 二、DDL —— 数据库操作 1、查询所有数据库 2、查询当前数据库 3、创建数据库 4、删除数据库 5、切换数据库 三、DDL —— 表操作 &#xff08;一&#xff09;查…

【Android】界面布局-线性布局LinearLayout-例子

线性布局&#xff08;LinearLayout&#xff09;是一种重要的界面布局中&#xff0c;也是经常使用到的一种界面布局 • 在线性布局中&#xff0c;所有的子元素都按照垂直或水平的顺序在界面上排列 ➢如果垂直排列&#xff0c;则每行仅包含一个界面元素 ➢如果水平排列&…

leetcode数组-长度最小的子数组

题目 题目链接&#xff1a;https://leetcode.cn/problems/minimum-size-subarray-sum/ 给定一个含有 n个正整数的数组和一个正整数 target** 。** 找出该数组中满足其总和大于等于target的长度最小的 子数组 [numsl, numsl1, ..., numsr-1, numsr] &#xff0c;并返回其长度**…

一周学会Pandas2 Python数据处理与分析-Jupyter Notebook安装

锋哥原创的Pandas2 Python数据处理与分析 视频教程&#xff1a; 2025版 Pandas2 Python数据处理与分析 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili Jupyter (Project Jupyter | Home&#xff09;项目是一个非营利性开源项目&#xff0c;于2014年由IPython项目中诞生…

前端页面鼠标移动监控(鼠标运动、鼠标监控)鼠标节流处理、throttle、限制触发频率(setTimeout、clearInterval)

文章目录 使用lodashjs库手动实现节流&#xff08;通过判断之前设定的定时器setTimeout是否存在&#xff09; 使用lodashjs库 <!DOCTYPE html> <html lang"zh-CN"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Com…

java流程控制04:if选择结构

选择结构 if单选择结构 if双选择结构 if多选择结构 嵌套的if结构 switch多选择结构 if单选择结构 我们很多时候需要去判断一个东西是否可行&#xff0c;然后我们才去执行&#xff0c;这样一个过程在程序中用if语句来表示 语法&#xff1a; if(布尔表达式){//如果布尔表达…

在uniapp中,video比普通的标签层级高解决问题

<view style"position: relative;"><video style"position: absolute;z-index:-1"></video><view style"position: absolute;z-index:999"></view> </view> 上面代码并没有解决view的层级比video高的问题&…

基于R语言与MaxEnt的物种分布建模全流程解析:从算法优化到科研制图实战

随着全球气候变化与生物多样性保护需求的加剧&#xff0c;物种分布模型&#xff08;Species Distribution Model, SDM&#xff09;已成为生态学、保护生物学研究的核心工具。MaxEnt模型凭借其‌对小样本数据的强适应性‌和‌环境变量非线性关系的解析能力‌&#xff0c;成为SDM…

DPDI版本升级说明

Dispatch PDI v2.0.3版本升级说明 自Dispatch PDI社区版全新版本V2.0.0于2025 年3月25日发布以来&#xff0c;我们始终紧密关注用户动态&#xff0c;并全力协助用户线上完成从V0.0.4到V2.0.0的迁移工作。在短短一周内&#xff0c;我们成功助力约90%的用户完成了迁移。在此期间…

大钲资本押注儒拉玛特全球业务,累计交付超2500条自动化生产线儒拉玛特有望重整雄风,我以为它破产倒闭了,担心很多非标兄弟们失业

1. 交易概况 时间与主体:大钲资本于2025年4月1日正式宣布完成对儒拉玛特自动化技术(苏州)有限公司及其全球子公司和关联企业的收购。交易通过大钲资本旗下美元基金设立的儒拉玛特(新加坡)公司作为控股主体进行,交易金额未披露。 收购范围:包括儒拉玛特亚太、欧洲、北美等…

LabVIEW 调用 Python 函数

此程序是 LabVIEW 调用 Python 函数实现双精度数相加的典型示例。通过 LabVIEW 搭建交互框架&#xff0c;借助 “Open Python Session” 创建 Python 代码运行环境&#xff0c;定位 Python 模块路径后调用 “Add” 函数&#xff0c;最终实现数据处理并关闭会话。整个流程展现了…

基于SpringBoot的“考研学习分享平台”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“考研学习分享平台”的设计与实现&#xff08;源码数据库文档PPT) 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringBoot 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 系统总体功能结构图 局部E-R图 系统首页界面 …

恒盾C#混淆加密卫士 - 混淆加密保护C#程序

对于大部分C#开发者来说&#xff0c;写完代码点个发布就完事儿了&#xff0c;但你可能不知道——用记事本都能扒开你编译好的程序&#xff01;像dnSpy这类反编译工具&#xff0c;分分钟能把你的EXE/DLL变回原汁原味的源代码&#xff0c;商业机密赤裸裸曝光不说&#xff0c;竞争…

selectdb修改表副本

如果想修改doris&#xff08;也就是selectdb数据库&#xff09;表的副本数需要首先确定是否分区表&#xff0c;当前没有数据字典得知哪个表是分区的&#xff0c;只能先show partitions看结果 首先&#xff0c;副本数不应该大于be节点数 其次&#xff0c;修改期间最好不要跑业务…

【嵌入式-stm32电位器控制以及旋转编码器控制LED亮暗】

嵌入式-stm32电位器控制LED亮暗 任务1代码1Key.cKey.hTimer.cTimer.hPWM.cPWM.hmain.c 实验现象1任务2代码2Key.cKey.hmain.c 实验现象2问题与解决总结 源码框架取自江协科技&#xff0c;在此基础上做扩展开发。 任务1 本文主要介绍利用stm32f103C8T6实现电位器控制PWM的占空比…

图扑可视化点亮智慧城市垃圾分类新未来

图扑基于 HT 开发的智慧城市废弃物可视化管理系统&#xff0c;通过智能感知与三维可视化技术&#xff0c;构建全流程数字化监管平台。系统实现固体废物从源头投放到终端处置的全程可视化追踪&#xff0c;提供智能收运路径规划与资源回收管理方案&#xff0c;助力城市环境治理向…

Elasticsearch安全加固指南:启用登录认证与SSL加密

在之前文章中我们介绍了Elasticsearch安全与权限控制&#xff0c;本篇文章我们将详细介绍 启用登录认证与SSL加密实践配置操作 。 1 为什么需要安全加固&#xff1f; Elasticsearch默认不启用安全功能&#xff0c;会导致以下风险&#xff1a; 未授权访问&#xff1a;任何人都能…

前端知识点---本地存储(javascript)

localStorage 是浏览器提供的一个 本地存储 API&#xff0c;可以在用户的浏览器中存储数据&#xff0c;数据不会随页面刷新而丢失。 1. 基本用法 (1) 存储数据&#xff08;setItem&#xff09; localStorage.setItem("username", "zhangsan");存储 “use…