【K8S 系列】认识k8s、k8s架构

一、什么是k8s?

Kubernetes 简称 k8s,是支持云原生部署的一个平台,k8s 本质上就是用来简化微服务的开发和部署的,用于自动化部署、扩展和管理容器化应用的开源容器编排技术。对于传统的docker其实也提供了容器编排的技术docker-compose,但是docker-compose只能管理一台主机上的容器,而对于k8s来讲可以管理多主机上的容器。

二、应用部署方式的转变

2.1.传统部署(资源不隔离):

优点:简单,不需要其它技术的参与

缺点:不能为应用程序定义资源使用边界,很难合理地分配计算资源,而且程序之间容易产生影响,当某一进程用户访问量大就会造成服务器资源分配不均,争抢资源。

2.2.虚拟化部署(在一台物理机上运行多个虚拟机,虚拟化过重):

优点:程序环境不会相互产生影响,提供了一定程度的安全性

缺点:增加了操作系统,浪费了部分资源

2.3.容器化部署(与虚拟化类似,但是共享了操作系统):

优点:可以保证每个容器拥有自己的文件系统、CPU、内存、进程空间等,运行应用程序所需要的资源都被容器包装,并和底层基础架构解耦。

三、k8s的特点

(1)自我修复:一旦某一个容器崩溃,能够在1秒中左右迅速启动新的容器

(2)弹性伸缩:可以根据需要,自动对集群中正在运行的容器数量进行调整

(3)服务发现:服务可以通过自动发现的形式找到它所依赖的服务

(4)负载均衡:如果一个服务启动了多个容器,能够自动实现请求的负载均衡

(5)版本回退:如果发现新发布的程序版本有问题,可以立即回退到原来的版本

(6)存储编排:可以根据容器自身的需求自动创建存储卷

四、容器管理架构升级

4.1.Borg架构
4.2.kubernet 架构

五、K8S架构解读

5.1.master节点:集群的控制平面,负责集群的决策 ( 管理 )

(1) ApiServer : 资源操作的唯一入口,接收用户输入的命令,提供认证、授权、API注册和发现等机制。

(2)Scheduler : 负责集群资源调度,按照预定的调度策略将Pod调度到相应的node节点上。

(3)ControllerManager : 负责维护集群的状态,比如程序部署安排、故障检测、自动扩展、滚动更新等。

(4)Etcd :负责存储集群中各种资源对象的信息。

5.2.node节点:集群的数据平面,负责为容器提供运行环境 ( 干活 )

(1)Kubelet : 负责维护容器的生命周期,存储、网络。

(2)KubeProxy : 负责提供集群内部的服务发现和负载均衡。

(3)Docker : 负责节点上容器的各种操作,作为容器的运行时环境。

(4)Pod:一个节点上可以部署多个Pod,一个Pod可以部署多个容器。

相关推荐
SelectDB技术团队2 分钟前
Apache Doris 异步物化视图与 Snowflake MV / Dynamic Tables 工程化对照
云原生·私有化部署·olap·实时数仓·apache doris·国产化替代·异步物化视图
weirong17 分钟前
为什么 HPA 会震荡?手写一个带冷却窗口的伸缩决策引擎
kubernetes
分布式存储与RustFS25 分钟前
可观测性数据落进对象存储:Proscia 案例拆解与 ClickHouse 自托管配置
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
方便面不加香菜1 小时前
Docker Image-- 镜像命令详解与使用示例
运维·docker·容器
Star(up up up)1 小时前
Docker系列---Dockerfile镜像文件
人工智能·经验分享·学习·程序人生·docker·容器·github
-星空下无敌1 小时前
Windows Docker K8s 安装部署Naocs ,SpringBoot 3.x 4.x 整合Naocs 版本兼容 配置中心、服务注册与发现
windows·docker·nacos·kubernetes·springboot·alibaba
吴声子夜歌1 小时前
Kubernetes权威指南——深入掌握Pod(使用StatefulSet搭建MongoDB集群)
容器·kubernetes
fb_123452 小时前
K8s动态卷供应实战_StorageClass与LocalPath_NFS双Provisioner
云原生·容器·kubernetes
大囚长2 小时前
Kubernetes 的资源开销、适用边界,以及游戏与有状态负载的工程现实
游戏·容器·kubernetes
RuoyiOffice2 小时前
Hyper-V+Kubernetes 搭建实战:保留 Windows,构建三节点 Linux 容器集群
linux·spring boot·kubernetes·containerd·hyper-v·微服务部署·ruoyi office