当前位置: 首页 > news >正文

Deployment 部署 Pod 流程

文章目录

  • k8s组件介绍
  • 部署文件示例
  • 部署 Pod 流程
  • 创建 Service

通过创建 Deployment 资源,来看看 k8s 部署 Pod 流程

k8s组件介绍

首先看看 k8s 各组件功能。

  • control plane 控制平面主要包含以下组件:

    kube-api-server: 顾名思义,负责处理所有 api,包括客户端以及集群内部组件的请求。
    etcd: 分布式持久化存储、事件订阅通知。只有 kube-api-server 直接操作 etcd,其它所有组件都是与 kube-api-server 进行相互。
    scheduler: 处理 pod 的调度,将 pod 绑定到具体的 node 节点。
    controller manager: 控制器,处理各种资源对象。
    cloud controller manager: 对接云服务商的控制器。

  • node 节点,主要部署用户的应用程序,主要包含以下组件:

    kubelet: 管理节点上的 pod 以及状态检查和上报。
    kube-proxy: 进行流量的路由转发(目前是通过操作节点的 iptables 或者 ipvs 实现)。
    container runtime: 容器运行时,例如 containerd。

部署文件示例

Deployment:

apiVersion: apps/v1
kind: Deployment
metadata:name: nginx-demolabels:app: nginx
spec:replicas: 2selector:matchLabels:app: nginxtemplate:metadata:labels:app: nginxspec:containers:- name: nginximage: nginx:latestports:- containerPort: 80

Service:

apiVersion: v1
kind: Service
metadata:name: nginx-service
spec:selector:app: nginxports:- protocol: TCPport: 80targetPort: 80type: ClusterIP

部署 Pod 流程

在这里插入图片描述

  1. 用户提交yaml文件给 kube-api-server,api-server 将 Deployment 内容持久化到 etcd中。
  2. controller-manager 监听到 Deployment 创建事件后,检查相应的 RepliccasSet 是否创建。如果没有创建,则创建 ReplicasSet
  3. controller-manager 监听到 ReplicasSet 创建事件后,检查该 ReplicasSet 关联的 Pod 是否符合 ReplicasSet 期望的状态。如果不符合,则创建Pod。
  4. Scheduler 监听到 Pod 创建事件后,根据 Pod 配置中指定的调度算法,过滤,打分计算出适合 Pod 运行的最佳节点,然后将绑定的节点名称更新到该 Pod 信息中。
  5. kubelet 监听到有 Pod 调度到自己所在的节点,然后调用 CRI 接口创建容器。

创建 Service

在这里插入图片描述

  1. 用户提交yaml文件给 kube-api-server,api-server 将 Deployment 内容持久化到 etcd中。
  2. controller-manager 监听到 Service 创建事件后,根据 Service 和 Pod 的关联关系创建 Endpoint,并将 Endpoint 信息持久化到 etcd 中。
  3. kube-proxy 监听 Service,Endpoint 事件,在节点上创建相应的网络规则。

相关文章:

Deployment 部署 Pod 流程

文章目录 k8s组件介绍部署文件示例部署 Pod 流程创建 Service 通过创建 Deployment 资源,来看看 k8s 部署 Pod 流程 k8s组件介绍 首先看看 k8s 各组件功能。 control plane 控制平面主要包含以下组件: kube-api-server: 顾名思义,负责处理所…...

塔罗牌(基础):大阿卡那牌

塔罗牌(基础) 大啊卡那牌魔术师女祭司皇后皇帝教皇恋人战车力量隐士命运之轮正义吊人死神节制恶魔高塔星星月亮太阳审判世界 大啊卡那牌 魔术师 作为一个起点,象征:意识行动和创造力。 一个【显化】的概念,即是想法变…...

TCP/IP 协议:互联网通信的基石

TCP/IP 协议:互联网通信的基石 引言 TCP/IP协议,全称为传输控制协议/互联网协议,是互联网上应用最为广泛的通信协议。它定义了数据如何在网络上传输,是构建现代互联网的基础。本文将深入探讨TCP/IP协议的原理、结构、应用以及其在互联网通信中的重要性。 TCP/IP 协议概述…...

Python 之 Excel 表格常用操作

示例文件 test.xlsx 将各个表单拆分成单独的 Excel 文件 import os.pathimport openpyxl import pandasdef handle_excel(file_path):dirname os.path.dirname(file_path)basename os.path.basename(file_path).split(".")[0]wb openpyxl.load_workbook(file_pat…...

2025春招 SpringCloud 面试题汇总

大家好,我是 V 哥。SpringCloud 在面试中属于重灾区,不仅是基础概念、组件细节,还有高级特性、性能优化,关键是项目实践经验的解决方案,都是需要掌握的内容,正所谓打有准备的仗,秒杀面试官&…...

jupyter版本所引起的扩展插件问题

文章目录 如何永久切换python安装源为https://mirrors.aliyun.com/pypi/simple方法一:通过配置文件永久设置(推荐)步骤 1:创建或修改 pip 配置文件步骤 2:验证配置是否生效 方法二:通过命令行直接配置效果验…...

01机器学习入门

机器学习入门可以分为以下几个阶段,逐步掌握核心概念和技能: 1. 基础准备 数学基础 线性代数:矩阵运算、向量空间(推荐《线性代数及其应用》)。概率与统计:概率分布、贝叶斯定理、假设检验(推…...

实现一个安全且高效的图片上传接口:使用ASP.NET Core和SHA256哈希

实现一个安全且高效的图片上传接口:使用ASP.NET Core和SHA256哈希 在现代Web应用程序中,图片上传功能是常见的需求之一。无论是用户头像、产品图片还是文档附件,确保文件上传的安全性和效率至关重要。本文将详细介绍如何使用ASP.NET Core构建…...

PyTorch中的movedim、transpose与permute

在PyTorch中,movedim、transpose 和 permute这三个操作都可以用来重新排列张量(tensor)的维度,它们功能相似却又有所不同。 movedim 🔗 torch.movedim 用途:将张量的一个或多个维度移动到新的位置。参数&…...

HTTP(1)

HTTP协议 HTTP是什么 HTTP(全称为"超文本传输协议")是一种应用非常广泛的基于TCP协议的应用层协议。 常见的应用场景: 浏览器与服务器之间的交互(访问网站)手机与服务器之间的通信多个服务器之间进行通信 …...

C#常考随笔2:函数中多次使用string的+=处理,为什么会产生大量内存垃圾(垃圾碎片),有什么好的方法可以解决?

在 C# 中,由于string类型是不可变的,当在函数中多次使用操作符来拼接字符串时,每次操作都会创建一个新的string对象,旧的对象则成为垃圾对象,这会导致大量的内存分配和垃圾回收,产生内存垃圾和碎片。 在需…...

leetcode刷题记录(一百)——121. 买卖股票的最佳时机

(一)问题描述 121. 买卖股票的最佳时机 - 力扣(LeetCode)121. 买卖股票的最佳时机 - 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。你只能选择 某一天 买入这只股票,并…...

MATLAB绘图时线段颜色、数据点形状与颜色等设置,介绍

MATLAB在绘图时,设置线段颜色和数据点的形状与颜色是提高图形可读性与美观性的重要手段。本文将详细介绍如何在 MATLAB 中设置这些属性。 文章目录 线段颜色设置单字母颜色表示法RGB 值表示法 数据点的形状与颜色设置设置数据点颜色和形状示例代码 运行结果小结 线段…...

CIMRTS材质美化--放大采样、缩小采样

最新的CIMRTS v1.0.10中在要素管理中的材质美化增加「放大采样」和「缩小采样」参数,对于透明树叶可以达到较好效果。 在CesiumLab中,一棵树处理完成后,在EarthSDK中,就是呈现这样缩小就会有树叶丢失的情况。效果如下&#xff1a…...

P8738 [蓝桥杯 2020 国 C] 天干地支

两种方法 #include<bits/stdc.h> using namespace std;int main(){int year;cin>>year;string tg[10] {"geng", "xin", "ren", "gui","jia", "yi", "bing", "ding", "wu&…...

PyCharm接入DeepSeek实现AI编程

目录 效果演示 创建API key 在PyCharm中下载CodeGPT插件 配置Continue DeepSeek 是一家专注于人工智能技术研发的公司&#xff0c;致力于开发高性能、低成本的 AI 模型。DeepSeek-V3 是 DeepSeek 公司推出的最新一代 AI 模型。其前身是 DeepSeek-V2.5&#xff0c;经过持续的…...

Java编程语言:辉煌的历史与未来前景

如果将软件开发世界比喻成一个宇宙&#xff0c;Java 无疑是其中最亮的星星之一。它从诞生起就改变了软件开发世界的格局。发展到今天&#xff0c;Java仍然是这个世界上最重要的编程语言之一。当然&#xff0c;它也面临着新的挑战。 Java的诞生 回溯到 1991 年&#xff0c;在 …...

麦田物语学习笔记:保存和加载场景中的物品

目录 基本流程 1.代码思路 2.代码实现 最终效果 补充知识点 1.序列化 2.委托 基本流程 现在在切换场景后,场景中的物品即使被拾取了,也还是会被重新加载出来,所以本篇文章的任务是在切换场景前后能保留当前场景的数据 1.代码思路 (1)为了保留处在地上的物品数据,就需要…...

页高速缓存与缓冲区缓存的应用差异

页高速缓存&#xff08;Page Cache&#xff09;与缓冲区缓存&#xff08;Buffer Cache&#xff09;是计算机系统中用于提高数据访问性能的两种不同类型的缓存机制&#xff0c;它们的差异主要体现在以下几个方面&#xff1a; 缓存目的 页高速缓存&#xff1a;主要用于加速对磁…...

深度学习 Pytorch 单层神经网络

神经网络是模仿人类大脑结构所构建的算法&#xff0c;在人脑里&#xff0c;我们有轴突连接神经元&#xff0c;在算法中&#xff0c;我们用圆表示神经元&#xff0c;用线表示神经元之间的连接&#xff0c;数据从神经网络的左侧输入&#xff0c;让神经元处理之后&#xff0c;从右…...

SkyWalking 10.2.0 SWCK 配置过程

SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外&#xff0c;K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案&#xff0c;全安装在K8S群集中。 具体可参…...

视频字幕质量评估的大规模细粒度基准

大家读完觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 摘要 视频字幕在文本到视频生成任务中起着至关重要的作用&#xff0c;因为它们的质量直接影响所生成视频的语义连贯性和视觉保真度。尽管大型视觉-语言模型&#xff08;VLMs&#xff09;在字幕生成方面…...

新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案

随着新能源汽车的快速普及&#xff0c;充电桩作为核心配套设施&#xff0c;其安全性与可靠性备受关注。然而&#xff0c;在高温、高负荷运行环境下&#xff0c;充电桩的散热问题与消防安全隐患日益凸显&#xff0c;成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...

uniapp中使用aixos 报错

问题&#xff1a; 在uniapp中使用aixos&#xff0c;运行后报如下错误&#xff1a; AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...

CMake控制VS2022项目文件分组

我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...

华硕a豆14 Air香氛版,美学与科技的馨香融合

在快节奏的现代生活中&#xff0c;我们渴望一个能激发创想、愉悦感官的工作与生活伙伴&#xff0c;它不仅是冰冷的科技工具&#xff0c;更能触动我们内心深处的细腻情感。正是在这样的期许下&#xff0c;华硕a豆14 Air香氛版翩然而至&#xff0c;它以一种前所未有的方式&#x…...

苹果AI眼镜:从“工具”到“社交姿态”的范式革命——重新定义AI交互入口的未来机会

在2025年的AI硬件浪潮中,苹果AI眼镜(Apple Glasses)正在引发一场关于“人机交互形态”的深度思考。它并非简单地替代AirPods或Apple Watch,而是开辟了一个全新的、日常可接受的AI入口。其核心价值不在于功能的堆叠,而在于如何通过形态设计打破社交壁垒,成为用户“全天佩戴…...

vue3 daterange正则踩坑

<el-form-item label"空置时间" prop"vacantTime"> <el-date-picker v-model"form.vacantTime" type"daterange" start-placeholder"开始日期" end-placeholder"结束日期" clearable :editable"fal…...

《Docker》架构

文章目录 架构模式单机架构应用数据分离架构应用服务器集群架构读写分离/主从分离架构冷热分离架构垂直分库架构微服务架构容器编排架构什么是容器&#xff0c;docker&#xff0c;镜像&#xff0c;k8s 架构模式 单机架构 单机架构其实就是应用服务器和单机服务器都部署在同一…...

ZYNQ学习记录FPGA(一)ZYNQ简介

一、知识准备 1.一些术语,缩写和概念&#xff1a; 1&#xff09;ZYNQ全称&#xff1a;ZYNQ7000 All Pgrammable SoC 2&#xff09;SoC:system on chips(片上系统)&#xff0c;对比集成电路的SoB&#xff08;system on board&#xff09; 3&#xff09;ARM&#xff1a;处理器…...