前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >10年高级工程师用5分钟带你一次性搞懂Kubernetes的设计理念

10年高级工程师用5分钟带你一次性搞懂Kubernetes的设计理念

作者头像
愿天堂没有BUG
发布2022-10-28 11:15:05
2140
发布2022-10-28 11:15:05
举报
文章被收录于专栏:愿天堂没有BUG(公众号同名)

Kubernetes的设计理念

可能大家看到网络上有好多人都讲解了Kubernetes的设计理念,但是我感觉都不是很全,今天我就给大家好好讲解一下!首先讲解四大原则!

Kubernetes的设计原则

Kubernetes的核心是围绕应用进行大规模的容器扩展和管理,实现自动化部署,同时支持资源调度、集群管理、服务注册与发现、服务编排、服务自愈、安全管理等功能。Kubernetes本身基于微服务架构的设计思想,我们可以从中借鉴其分布式设计的理念和经验。

分层原则

Kubernetes作为分布式的云操作系统,其设计理念和功能很多都借鉴了Linux的设计思想,其分层(应用层、管理层、接口层、生态层)的架构设计就是其中的重要理念。面向API设计原则在Kubernetes平台中,API是管理操作的对象,API Server组件在整个Kubernetes分布式系统中处于统领地位。

容错性设计原则

Kubernetes保证每个模块都可以在出错后自动恢复,不会因为连接不到其他模块而自我崩溃。必要时,每个模块都可以优雅地进行服务降级。

扩展性设计原则

Kubernetes的控制机制保证了分布式系统下容器运行的稳定性和高可靠性。作为云原生操作系统,Kubernetes开放了容器运行时接口(CRI)、容器网络接口(CNI)和容器存储接口(CSI)。

Kubernetes与微服务

我们将Kubernetes的核心组件和微服务架构的设计理念加以对比。

● Kubernetes中的核心概念是Service,表示一个业务系统的“微服务”概念。每个具体的Service都对应一组独立、隔离、业务功能单一的容器进程。

● Kubernetes中的API Server相当于微服务架构中的API网关,实现了前后端模块之间的解耦。

● Kubernetes使用DNS作为服务注册发现机制。相比微服务架构中专有的服务注册与发现组件,DNS具备更好的异构系统的监控性。

● Kubernetes中的众多组件和资源对象都是功能独立的。每个组件都有自己独立的功能,这符合微服务架构独立功能、独立优化、独立演进的思想和理念。

● Kubernetes作为一个容器运行编排管理引擎,始终在技术栈和语言倾向上保持中立,符合微服务架构的技术多样性的特性。

● Kubernetes包含一组可扩展接口,这让它具备了更好的可扩展性。

Kubernetes与DevOps

Kubernetes持续交付的优势是让开发者可以将部署工作提前到开发阶段,通过容器技术统一交付代码和环境配置,这样就省去了开发与运维信息同步的时间,避免了信息传递过程中的信息丢失问题,保证了资源与环境的一致性。

另外,在服务的运行过程中,Kubernetes可以结合DevOps来保证服务的高可用、弹性伸缩、负载均衡、灰度发布等平台功能。

下 面 是 Kubernetes 、 Docker 和 底 层 计 算 资 源 的 关 系 图 。

Kubernetes一方面作为连接底层物理资源与应用服务的桥梁,屏蔽应用服务与底层物理环境的直接交互。另一方面,借助DevOps持续开发、持续集成工具,微服务以容器的形态运行在Kubernetes私有云平台上。

本文给大家讲解的内容是Kubernetes容器管理,Kubernetes的设计理念

  1. 下篇文章给大家讲解的内容是Kubernetes容器管理,SpringCloud与Kubernetes的生态融合
  2. 觉得文章不错的朋友可以转发此文关注小编;
  3. 感谢大家的支持!

本文就是愿天堂没有BUG给大家分享的内容,大家有收获的话可以分享下,想学习更多的话可以到微信公众号里找我,我等你哦。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-09-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 愿天堂没有BUG 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Kubernetes的设计理念
  • Kubernetes与微服务
  • Kubernetes与DevOps
  • 本文给大家讲解的内容是Kubernetes容器管理,Kubernetes的设计理念
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档