k8s学习之路 | Day17 k8s 工作负载

news2025/1/16 13:55:32

文章目录

  • 工作负载的定义
  • 工作负载资源分类

工作负载的定义

官方参考链接:https://kubernetes.io/docs/concepts/workloads/

A workload is an application running on Kubernetes. Whether your workload is a single component or several that work together, on Kubernetes you run it inside a set of pods. In Kubernetes, a Pod represents a set of running containers on your cluster.

  1. 工作负载是在 k8s上运行的应用程序
  2. 相对来说,一个应用程序又很复杂,可能由一个或者多个组件共同协同完成,这种情况我们都可以用一组Pod来表示一个应用,也就是一个工作负载
  3. 之前我们学到的内容来看,Pod遵循预定义的生命周期,如果Pod所在节点出现致命错误,该节点上所有的Pod状态都会失败,即使这个节点恢复正常了,也是需要创建新的Pod来恢复应用

打个比方

我这里有二个Pod

#####1
apiVersion: v1
kind: Pod
metadata:
  name: pod-demo1
  labels: 
    app: MYAPP
spec:
  containers:
  - name: pod-demo1
    image: nginx
#####2
apiVersion: v1
kind: Pod
metadata:
  name: pod-demo2
  labels: 
    app: MYAPP
spec:
  containers:
  - name: pod-demo2
    image: nginx

image-20230228093344772

我现在重启 k8s-02 节点:

image-20230228093510398

重启后发现Pod能够在这种情况下自愈,但是IP地址发生了改变,相应的,如果我们直接使用Pod来跑我们的业务,就会存在很多问题了

  1. 所以为了减轻使用的负担,通常我们不会去直接管理每一个Pod,而是使用【工作负载】资源来管理一组Pod,这些工作负载资源通过配置控制器来确保正确类型、处于运行状态的Pod个数是正确的,与用户的期望状态保持高度一致

img

工作负载资源分类

image-20230228095922025

  • DeploymentReplicaSet (替换原来的资源 ReplicationController)。 Deployment 很适合用来管理你的集群上的无状态应用,``Deployment中的所有Pod` 都是相互等价的,并且在需要的时候被替换

  • StatefulSet 让你能够运行一个或者多个以某种方式跟踪应用状态的 Pod。 例如,如果你的负载会将数据作持久存储,你可以运行一个 StatefulSet,将每个 Pod 与某个 PersistentVolume 对应起来。你在 StatefulSet 中各个 Pod 内运行的代码可以将数据复制到同一 StatefulSet 中的其它 Pod 中以提高整体的服务可靠性

  • DaemonSet 定义提供节点本地支撑设施的 Pod。这些 Pod 可能对于你的集群的运维是非常重要的,例如作为网络链接的辅助工具或者作为网络插件的一部分等等。每次你向集群中添加一个新节点时,如果该节点与某 DaemonSet 的规约匹配,则控制平面会为该 DaemonSet 调度一个 Pod 到该新节点上运行

  • JobCronJob。 定义一些一直运行到结束并停止的任务。``Job用来执行一次性任务,而CronJob` 用来执行的根据时间规划反复运行的任务。

  • 在庞大的 k8s 生态系统中,还可以找到一些提供额外操作的第三方工作负载相关的资源。 通过使用定制资源定义(CRD), 可以添加第三方工作负载资源,以完成原本不是 k8s 核心功能的工作。 例如,如果希望运行一组 Pod,但要求所有 Pod 都可用时才执行操作 (比如针对某种高吞吐量的分布式任务),可以基于定制资源实现一个能够满足这一需求的扩展, 并将其安装到集群中运行。

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

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

相关文章

已解决ERROR: Failed building wheel for opencv-python-headless

已解决ERROR: Failed building wheel for opencv-python-headless Failed to build opencv-python-headless ERROR: Could not build wheels for opencv-python-headless, which is required to install pyproject.toml-based projects报错信息亲测有效 文章目录报错问题报错翻…

多任务学习概述

文章目录前言1 文章信息2 背景、目的、结论2.1 背景2.1.1 多任务的类型分类2.1.1.1 相关任务的分类2.1.1.2 将输入变输出的逆多任务学习2.1.1.3 对抗性多任务学习2.1.1.4 辅助任务提供注意力特征的多任务学习2.1.1.5 附加预测性辅助任务的多任务学习3 内容与讨论3.1 多任务学习…

HTML+ CSS 笔记

CSS1. 外边距合并 margin2. 浮动和清除浮动3. CSS 属性书写顺序(重点)4. 页面布局分析5. 定位定位模式子绝父相:z-index定位的拓展6. 元素的显示与隐藏7. 精灵图 sprites8. 字体图标 iconfont9. 居中10. 文字溢出处理情况11.HTML5 和CSS3 新增标签12.品优购1. 项目规…

多数据库管理工具哪家强?ChatGPT点评,第一位并不是Navicat

SQL逐渐成为职场必备的编程语言,相信大家都不陌生。SQL是一种结构化查询语言,是用于数据库之间通信的编程语言。每个数据库都有着自己独特的访问规则,但大体上是遵循SQL标准。 因此,辗转于不同的数据库之间,开发者或D…

Codeforces Round #852 (Div. 2) D. Moscow Gorillas

传送门 题意: 给你两个长度为n的排列p,q,同时定义mex表示为在mex中,缺少的最小正整数:如 mex[1,3]2,mex[1,2,3]4。 问你有多少个l,r使mex([])mex([])。 思路 : 可以从mex1,2,3,4,..n…

Word 行中公式与文字对不齐的解决方案

Word 行中公式与文字对不齐的解决方案问题-公式与文字不对齐解决方案简述版(亲测)解决方案详细版(亲测)参考方案问题-公式与文字不对齐 由于复制或其它误操作,可能会出现Word一行中公式与文字并不对齐的问题,有的公式会偏上或偏下,如下图所示…

【Linux内核】内核编程概述

1.GNU GNU计划和自由软件基金会(FSF)是由Richard M.Stallman于1984年创办的,GNU是“GNU’s Not UNIX”的缩写。到20世纪90年代初,GNU项目已经开发出许多高质量的免费软件,其中包括emacs编辑系统、bash shell程序、gcc…

PIGOSS BSM 信创运维之国产数据库监控

随着信创的推进,为国产数据库厂商提供了发展沃土,国产厂商扮演者越来越重要的角色。国产数据库以达梦、人大金仓、南大通用、高斯数据库GaussDB、万里开源为代表,而新兴厂商则利用分布式进行换道超车,以PingCAP、巨杉数据库、星环…

JAVA对象

目录 1.组成 1.1.概述 1.2.对象头 1.3.实例数据 1.4.对齐填充字节 2.实例化流程 1.组成 1.1.概述 JAVA对象由三部分组成: 对象头实例数据对齐填充字节1.2.对象头 对象头里面包含3部分主要内容: markwordklass数组长度(只有数组对象…

StreamYOLO 代码阅读记录

目录 一、安装配置环境 二、运行 train.py文件遇到的问题 问题一 问题二 问题三 问题四 问题五 问题六 问题七 问题八 二、debug记录 1、 args 2、optimizer 3、ckpt 4、self.seq_dirs 5、self._classes 6、im_ann 7、annotations 8、obj 9、self.train_loade…

Qt——拖拽

Qt的拖拽可以按字面意思分为拖和拽两部分。一般来说我们常见的拖拽分别由两个程序合作完成。例如我们经常把桌面的文件拖拽进其他目录: ​ 编辑拖拽方可以发起多个拖拽类型(复制、链接、移动等),接收方可以选择接受其中某个类型或…

《分布式技术原理与算法解析》学习笔记Day25

负载均衡 负载均衡是分布式可靠性中非常关键的一个问题,它在一定程度上反映了分布式系统对业务处理的能力。 什么是负载均衡? 负载均衡可以分为两种: 请求负载均衡,即将用户的请求均衡的分发到不同的服务器进行处理。数据负载…

扬帆优配|弹性增强 双向波动明显 人民币汇率走势将回归基本面

离岸人民币对美元汇率走势图 美联储加息预期起波澜,人民币汇率再临“7”关口。 到2月27日16时30分,在岸人民币对美元汇率收盘报6.9645;离岸人民币对美元汇率盘中最低触及6.9896,险些失守6.99关口。 人民币汇率走贬的一起&#x…

Odoo | Webserivce | 5分钟学会【JSONRPC】接口开发 - 换USERID(进阶)

文章目录JSONRPC - 换取USERID简述换取USERID1. 代码示例2. 换取结果JSONRPC - 换取USERID 简述 从Odoo JSONRPC 接口入门篇,可以发现我们直接传入了USERID,这只是为了方便快速测试。 其实按照常规流程,应该通过【用户名USERNAME】和【用户…

【LeetCode】No.237. 删除链表中的节点 – Java Version

题目链接:https://leetcode.cn/problems/delete-node-in-a-linked-list/ 1. 题目介绍(237. 删除链表中的节点) 有一个单链表的 head,我们想删除它其中的一个节点 node。 给你一个需要删除的节点 node 。你将 无法访问 第一个节点…

consul注册中心服务All service checks failing及解决

文章目录consul注册中心服务All service checks failing问题一:能注册,有报错,中间件不可用问题二:能注册,没报错,通不过检查问题三:同一个服务,注册了很多次consul注册中心服务All …

springBoot内容响应和内容协商原理

spring提供了15种默认返回值处理器: 一、处理返回值: this.returnValueHandlers.handleReturnValue(returnValue, getReturnValueType(returnValue), mavContainer, webRequest)二、获取对应的返回值处理器: private HandlerMethodReturnVa…

《第一行代码》 第九章:使用网络技术

一&#xff0c;WebView的用法 活动布局的代码&#xff1a; <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"><WebViewandroid:id&…

九龙证券|消费电子遇冷后转向动力储能赛道,但毛利率仍弱于同行

近年来&#xff0c;新能源的热度居高不下&#xff0c;顶着赛道光环&#xff0c;2月17日证监会发表信息显现&#xff0c;广州明美新能源股份有限公司&#xff08;简称明美新能&#xff09;首发上市取得通过。公司方案挂牌深交所创业板&#xff0c;并方案募资4.50亿元&#xff0c…

【RocketMQ】RocketMQ 5.0版本任意时刻延迟消息的实现原理浅析

文章目录意外发现设计方案时间轮定时消息存储具体实现流程图流程步骤意外发现 无意间从官方的最新的客户端代码中看到下面的Example&#xff1a; 感兴趣的可以看看这个介绍&#xff1a;https://rocketmq.apache.org/docs/featureBehavior/02delaymessage 生产者&#xff1a;…