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

【云计算•云原生】4.云原生之什么是Kubernetes

文章目录

    • Kubernetes概念
    • Kubernetes核心概念
      • 集群
      • pod
      • ConfigMap
    • Kubernetes架构
      • master节点的组件
      • worker节点组件
    • Kubernetes网络架构
      • 内部网络
      • 外部网络
    • k8s各端口含义

Kubernetes概念

K8S就是Kubernetes,Kubernetes首字母为K,末尾为s,中间一共有8个字母,所以简称K8s。

它是一个为容器化应用提供集群部署和管理的开源工具,由 Google 开发。通过k8s可以使用配置文件轻松管理上千台机器。

k8s的部署配置文件和docker的dockerfile很类似,其内容描述了整个部署过程。

Kubernetes核心概念

集群

由多个节点组成的、共同对外提供服务的一个节点组,可添加或删除节点

pod

K8S 调度、管理的最小单位,一个 Pod 可以包含一个或多个容器,每个 Pod 有自己的虚拟IP。一个工作节点可以有多个 pod,主节点会考量负载自动调度 pod 到哪个节点运行。

如果一组应用紧耦合,那么他们应该在一个pod中编排

ConfigMap

微服务上线时根据不同服务需要有一些可变配置,为了实现对微服务各个节点的灵活配置,k8s内置支持微服务的配置configmap,将配置信息写入configmap,然后configmap以环境变量的方式注入到pod中,pod中的容器可以访问这些配置。

Kubernetes架构

架构中分为master/worker两个部分
在这里插入图片描述

在这里插入图片描述

master节点的组件

  • etcd: 负责存储k8s集群的状态数据、节点数据等
  • API server: 是操作etcd的唯一接口
  • Scheduler: 负责资源调度
  • Controler Manager: 集群状态的协调控制者,维护集群状态

worker节点组件

  • Controller Runtime: 下载镜像和容器的组件

  • kubelet: 与master节点上API server交互,负责管理worker节点上的组件,运行在集群中每个节点node上。注意他是一个进程而不是组件。

  • pod: K8S 调度、管理的最小单位,一个 Pod 可以包含一个或多个容器,每个 Pod 有自己的虚拟IP。一个工作节点可以有多个 pod,主节点会考量负载自动调度 pod 到哪个节点运行。

  • kube-proxy: 对pod进行寻址和负载均衡

用户操作 k8s 集群一般是通过 kubectl命令行工具或者 dashboard;

Pod 之间进行通讯是通过集群内部的覆盖网络 Overlay Network,外部流量想要进入集群访问 Pod 则是通过负载均衡 Load Balander 设备进行。

Kubernetes网络架构

k8s有四层网络,从上到下分别是

  • 外部接入网络(NodePort/LoadBalancer/Ingress)
  • service网络
  • pod网络
  • node节点网络

内部网络

节点网络用来保证master和worker,以及worker节点之间能够做正常寻址和通讯

pod之间通过pod网络(在节点网络之上)寻址和通信

不同节点之间的pod访问可以通过路由或者其他方式访问;节点的ip可能会随着关机挂起而改变,需要service网络维护。

worker节点中的kubelet将信息传给master节点中的etcd来实现服务注册。

kube-DNS和kube-proxy获取etcd中的信息来实现服务发现。

kube-DNS保存serviceName->ClusterIP的信息。(service服务的ip叫ClusterIp)

ClusterIP并不是一成不变的,ServiceName是唯一的。

Kube-Proxy保存CluserIP->PodIP的信息。这样两层可以实现POD 在集群之间的网络连接。kube-proxy是集群中每个节点node上运行的网络代理。

外部网络

  • NodePort

将service暴露在节点网络上

  • LoadBalancer

将service暴露在节点网络上+负载均衡

  • Ingress

如果需要暴露在节点网络中的服务有很多,仅仅使用 load balancer 的话成本是很高的。Ingress 可以等价于反向代理或者网关,它的主要作用就是反向路由,它可以将多个 k8s 内部的服务同时暴露出去但仅需一个 load balancer。Ingress 还有一些其他功能如动态路由更新、安全认证、日志监控等。

k8s各端口含义

  • port: 是k8s集群内部访问service的端口,即通过clusterIP: port可以访问到某个service
  • nodePort: 是外部访问k8s集群中service的端口,通过nodeIP: nodePort可以从外部访问到某个service
  • targetPort: 是pod的端口,从port和nodePort来的流量经过kube-proxy流入到后端pod的targetPort上,最后进入容器
  • containerPort: 是pod内部容器的端口,targetPort映射到containerPort
    在这里插入图片描述

相关文章:

【云计算•云原生】4.云原生之什么是Kubernetes

文章目录 Kubernetes概念Kubernetes核心概念集群podConfigMap Kubernetes架构master节点的组件worker节点组件 Kubernetes网络架构内部网络外部网络 k8s各端口含义 Kubernetes概念 K8S就是Kubernetes,Kubernetes首字母为K,末尾为s,中间一共有…...

云厂商降价潮背后:来中小企业战场「拼刺刀」

如果说过往云厂商的降价打响的是从C端进军B端的营销战,那么在这一轮降价潮背后,对应的则是云厂商从大型KA客户向中小企业进军的信号,强被集成,强获客。 云厂商又一轮降价潮袭来。 5月16日,移动云宣布部分产品线最高降…...

2-单片机GPIO相关知识点及流水灯和按键采集小实验

目录 小问题 :单片机上电后第一个执行的程序是? 【1】GPIO 1.定义 2.应用 I - Input 输入采集 O - Output 输出控制 3.GPIO结构框图 4.功能描述 输入功能 5.相关寄存器 【2】输出控制实验 实验:点亮一盏LED灯 1.实验…...

基础知识(王爽老师书第一章)

文章目录 基础知识1.1 引言1.2 机器语言1.2 引言汇编语言的产生1.3 汇编语言的组成1.4 存储器1.5 指令和数据1.6 存储单元1.7 CPU对存储器的读写1.8 地址总线1.9 数据总线1.10 控制总线小结检测点1.11.11 内存地址空间1.12 主板1.13 接口卡1.14 各类存储器芯片1.15 内存地址空间…...

非煤矿山电子封条建设算法 yolov8

非煤矿山电子封条建设算法模型通过yolov8网络模型AI视频智能分析技术,算法模型对作业状态以及出井入井人员数量变化、人员睡岗离岗等情况实时监测分析,及时发现异常动态,自动推送生成的违规截图报警信息。现代目标检测器大部分都会在正负样本…...

七大软件架构设计原则详解

目录 1、概述 2、七大设计原则 2.1、开闭原则 2.2、里氏替换原则 2.3、依赖倒置原则 2.4、单一职责原则 2.5、接口隔离原则 2.6、迪米特法则 2.7、合成复用原则 3、最后 VC常用功能开发汇总(专栏文章列表,欢迎订阅,持续更新...&…...

【Python入门】Python循环语句(while循环的嵌套应用)

前言 📕作者简介:热爱跑步的恒川,致力于C/C、Java、Python等多编程语言,热爱跑步,喜爱音乐的一位博主。 📗本文收录于Python零基础入门系列,本专栏主要内容为Python基础语法、判断、循环语句、函…...

数据来源和搜集

数据搜集 文章目录 数据搜集1 数据来源1.1 数据的间接来源1.2 间接数据的评价1.3 数据的直接来源 2 调查数据2.1概率抽样2.2 非概率抽样2.3 概率抽样 *vs.*非概率抽样 3 搜集数据的方法4 实验数据4.1 实验组与对照组4.2 实验中的若干问题 1 数据来源 所有统计数据都来源于社会…...

Python入门(七)if语句(二)

if语句(二) 1.if语句1.1 简单的if语句1.2 if-else语句1.3 if-elif-else结构1.4 使用多个elif代码块1.5 使用多个elif代码块 2.使用if语句处理列表2.1 检查特殊元素2.2 确定列表不是空的2.3 使用多个列表 作者:xiou 1.if语句 前面我们理解了…...

[元带你学: eMMC完全解读 2] eMMC协议相关术语与定义

声明 主页:元存储的博客_CSDN博客 依公开知识及经验整理,如有误请留言。 个人辛苦整理,付费内容,禁止转载。 所在专栏 《元带你学: eMMC完全解读》 内容摘要 前言 文中列出了常用和不常用的eMMC 术语, 只需要了解常用术语就完全够用, 非常用术语几乎都用不上,只要遇到的…...

预测杭州五一黄金周的旅游出行人数

对于杭州五一黄金周的旅游出行人数的预测,可以从以下几个方面进行考虑。 一、历史数据的分析 杭州作为一个旅游胜地,每年的五一黄金周都吸引了大量的游客前来游玩。历史数据可以为我们提供有用的信息,帮助我们预测今年的旅游出行人数。 1.…...

内防泄密重要,还是外防窃密重要?

内防泄密是组织为防止内部敏感信息未经授权泄露所采取的各种管理与技术措施的总称。它主要针对内部人员的信息访问与操作行为进行管控,减少故意或疏忽泄密事件的发生几率。 内防泄密的工作,通常包括员工管理、权限管控、监控检查、分级保护、离岗管控、技术防护、事…...

ChatGPT:2. 使用OpenAI创建自己的AI网站:1. 初探API

使用OpenAI创建自己的AI网站 如果你还是一个OpenAI的小白,有OpenAI的账号,但想调用OpenAI的API搞一些有意思的事,那么这一系列的教程将仔细的为你讲解如何使用OpenAI的API制作属于自己的AI网站。博主只能利用下班时间更新,进度慢…...

5月17日,今日信息差

​1、中老铁路运输货物突破2000万吨。其中,跨境货运量超400万吨,货值达177亿元 2、北京首个5.5G实验基站在昌平区的国际信息港建设开通,5.5G将在速率、时延、连接规模和能耗方面全面超越现有5G,实现下行万兆和上行千兆的峰值速率…...

物联网的体系架构

物联网中常见的计算模式:云计算、边缘计算、雾计算等 云计算:一种利用互联网实现随时随地、按需、便捷地使用共享计算设施、存储设备、应用程序等资源的计算模式。边缘计算:在靠近物或数据源头的网络边缘侧,融合网络、计算、存储…...

Golang交叉编译

Golang交叉编译遇到的问题 交叉编译go支持的平台和版本 交叉编译 go支持的平台和版本 查询命令: go tool dist list显示结果: aix/ppc64android/386android/amd64android/armandroid/arm64darwin/amd64darwin/arm64dragonfly/amd64freebsd/386freebsd/…...

kafka3.x详解

kafka 一、简介1.1、场景选择,与其他mq相比1.2、应用场景1.2.1、流量消峰1.2.2、解耦1.2.3、异步通讯 1.3、消息队列的两种模式1.3.1、点对点模式1.3.2、发布/订阅模式 1.4、Kafka 基础架构 二、安装部署2.1、安装包方式2.2、docker安装方式2.3、docker安装kafka-ma…...

kubectl常用命令|pod生命周期|金丝雀发布|超详细

kubectl常用命令|pod生命周期|金丝雀发布|超详细 一 kubectl常用命令1.1 查看版本信息1.2查看资源对象简写1.3查看集群信息1.4 配置kubectl自动补全1.5node节点查看日志 二 k8s基本信息查看2.1 查看 master 节点状态2.2 查看命令空间2.3 创建和删除命名空间2.4 在命名空间kube-…...

【Linux系统】Linux进程信号详解

Linux进程信号 0 引言1 认识信号1.1 什么是信号1.2 发送信号的本质1.3 信号的处理 2 信号的产生2.1 键盘产生2.2 调用系统函数向进程发送信号2.3 由软件条件产生信号2.4 硬件异常产生信号 3 信号的保存4 信号的处理5 总结 0 引言 本篇文章会从Linux信号的产生到信号的保存&…...

阿里云u1服务器通用算力型CPU处理器性能测评

阿里云服务器u1通用算力型Universal实例高性价比,CPU采用Intel(R) Xeon(R) Platinum,主频是2.5 GHz,云服务器U1实例的基准vCPU算力与5代企业级实例持平,最高vCPU算力与6代企业级实例持平,提供2c-32c规格和1:1/2/4/8丰富…...

别再只盯着线宽了!PCB设计新手必懂的差分布线与等长布线实战避坑指南

高速PCB设计进阶:差分布线与等长布线的工程化实践 第一次在Altium Designer里看到DRC报出密密麻麻的差分对长度误差警告时,我盯着屏幕上那些红色波浪线足足愣了三分钟——明明按照教科书上的理论设置了90Ω阻抗,为什么实际布线后信号眼图还是…...

STM32F4标准库 DMA FSMC驱动TFT-LCD:从CPU瓶颈到DMA高效刷屏实战

1. 为什么需要DMAFSMC方案优化TFT-LCD刷新 当你用STM32F4驱动TFT-LCD时,是否遇到过画面刷新卡顿、CPU占用率飙升的情况?这通常是因为传统的逐点描画方式(比如LCD_DrawPoint函数)需要CPU频繁介入每个像素的写入操作。我最初用9341驱…...

STM32F4 ADC初始化实战:从零开始配置模数转换器

1. STM32F4 ADC模块基础认知 第一次接触STM32F4的ADC功能时,我对着数据手册发呆了半小时——那些专业术语就像天书一样。后来在实际项目中摸爬滚打才发现,理解ADC其实可以很直观。想象ADC就是个"翻译官",把模拟世界的连续信号&…...

KCN-GenshinServer:5步快速搭建原神私服的终极GUI解决方案

KCN-GenshinServer:5步快速搭建原神私服的终极GUI解决方案 【免费下载链接】KCN-GenshinServer 基于GC制作的原神一键GUI多功能服务端。 项目地址: https://gitcode.com/gh_mirrors/kc/KCN-GenshinServer 你是否曾想过在自己的电脑上搭建一个原神私服&#x…...

告别龟速!在Windows上用Bun加速你的Vue/React项目(附PowerShell报错解决)

告别龟速!在Windows上用Bun加速你的Vue/React项目(附PowerShell报错解决) 如果你是一名Windows平台的前端开发者,是否经常被npm install的漫长等待折磨得失去耐心?或是看着yarn在安装依赖时缓慢爬行的进度条感到绝望&a…...

RV1106开发板实战:手把手教你编译FFmpeg 3.4.8并集成到LVGL 9.2.3播放视频

RV1106开发板实战:从零构建FFmpeg 3.4.8与LVGL 9.2.3视频播放系统 在嵌入式设备上实现流畅的视频播放一直是开发者面临的挑战之一。RV1106作为一款高性能的嵌入式处理器,结合FFmpeg强大的多媒体处理能力和LVGL轻量级图形库的优雅界面,能够打造…...

TransformationLayout配置详解:从基础属性到高级参数的完整教程

TransformationLayout配置详解:从基础属性到高级参数的完整教程 【免费下载链接】TransformationLayout 🌠 Transform between two Views, Activities, and Fragments, or a View to a Fragment with container transform animations for Android. 项目…...

奇点大会技术白皮书提前泄露版:多模态导航SLAMv3架构图、延迟压测曲线与边缘算力分配黄金公式

第一章:2026奇点智能技术大会:多模态导航应用 2026奇点智能技术大会(https://ml-summit.org) 多模态导航正从实验室走向城市级基础设施,2026奇点智能技术大会首次将视觉、语音、空间语义与惯性传感四维信号在边缘端完成毫秒级对齐与联合推理…...

数据智能体是什么?怎么理解数据智能体?

以前季度末做复盘,分析各区域的业绩达成、客户流失原因和下季度的增长预测,你得找数据分析师、等SQL查询、看静态报表,前后折腾三四天才能得出结论。而现在只需要告诉AI"帮我分析上季度各区域销售表现,找出掉队原因"&am…...

终极指南:3分钟掌握Ofd2Pdf免费OFD转PDF完整教程

终极指南:3分钟掌握Ofd2Pdf免费OFD转PDF完整教程 【免费下载链接】Ofd2Pdf Convert OFD files to PDF files. 项目地址: https://gitcode.com/gh_mirrors/ofd/Ofd2Pdf 你是否经常遇到OFD格式文件无法打开、无法分享的烦恼?作为中国自主研发的电子…...