当前位置:网站首页>Kubernetes 深入理解kubernetes(一)
Kubernetes 深入理解kubernetes(一)
2022-06-28 13:23:00 【富士康质检员张全蛋】
云计算传统分类

云本身本身是为了适应一种计算抽象的一类的需求
最早期的云基本上就是iass层,所谓iass层就是用来管理基础架构层,提供一个一个的操作系统,业务只需要部署在这一个一个的操作系统上面就行了,当然这些是虚拟机了。这会带来什么问题呢?应用是面向操作系统的,本身隔离着非常非常多的东西的,比如一个高可用应用如何部署到不同节点上面去呢?这些都得应用层面上去关心,如果只给我操作系统,那么每家公司都要去解决相应的问题。
后面就逐渐的中间层面是不是可以抽象化,将操作系统的管理,中间件的管理,运行时的管理,我帮你将整个平台搭建起来,上面只需要跑你的应用就行了。这就是pass就是在iass之上做改进。
在后面就是能不能以软件为中心,以应用为中心,提供一个软件,然后你只需要使用这个软件就好了,这就是sass,提供一些软件供你直接使用。
Kubernetes生态系统
kubernetes打破了iass sass pass,边界就没有那么清晰了,因为Kubernetes基于这些标准的api,来描述所有的代管对象,这些对象向下探就是基础架构,向上探就是应用抽象。

它是通过统一的api将所有层面的对象统一纳管起来,之所以说模糊,是因为它向下是iass,可以将整个iass接入进来,它中间就有强大的pass,有了pass之后有是面向应用的,所以它本身又可以提供sass服务。
Kubernetes设计理念
对于应用本身支持了有状态副本集和无状态副本集,用来确保应用的高可用。
k8s自身也是高可用的,平面组件在搭建的时候可以部署为高可用。
分层架构



kubernetes向下实现了几个接口抽象,一个叫cri runtime抽象,下面可以接入docker containerd,还可以接crio,向下更多的是说对plugin的支持,和灵活性的选择,使得kubernetes可以运行在不同的环境里面。
API设计原则

Kubernetes如何通过对象组合完成业务描述

通过一个deployment创建一次业务部署这样的对象,deployment control会去建replicaset,replicaset会去建pod,pod会被调度器产生绑定关系,这是业务部署描述的部分,还有涉及的对象就是业务要发布的时候,我要去定义一个service,service创建之后kube-proxy会为它配置各种负载均衡的配置以及dns会为它配置域名服务,要将服务发布出去我要去定义一个service对象,service又可以通过ingress一个流量入口来发布到整个集群数据面API网关里面。
所以通过各种对象的组合来完成整个业务部署的描述。
架构设计原则

这里再强调一下,只有api server能够访问etcd,其他服务只能通过apiserver来访问集群。
我们鼓励事件监听,而不是轮询,etcd和apiserver都能够支持事件通知,大家就不需要轮询的来查了,轮询的查就把etcd和apiserver拉死了,为什么需要监听,因为你需要保持长连接,所有对象的变更是很频繁的,这些对象的变更让etcd和apiserver主动的下发,而不是轮询的一遍一遍查。
引导(Bootstrapping)原则

能不能使用kubernetes管理kubernetes控制平面,这叫做self-hosting,通过kubernetes组件把kubernetes一些基础组件,也就是整个kubernetes拉起来,这也就是kubeadm方式去加载集群,它通过kubelet以静态pod的方式加载整个集群,这就是self-hosting。
能不能使用二进制的方式去搭建集群呢,可以,在你初期学kubernetes的时候应该去理解每个服务如何的配置,这是非常好的方式,但是在生产集群集群里面不建议这么做,既然kubernetes自身可以保证应用的高可用,那我们就可以使用kubernetes来管理kubernetes平面自身,kubernets on kubernets是一个非常好的方式。
边栏推荐
- StackOverflow 2022数据库年度调查
- 《天天数学》连载53:二月二十二日
- 求职简历的书写技巧
- En parlant d'exception - que se passe - t - il lorsque l'exception est lancée?
- thinkphp6 多级控制器目录访问解决方法
- pytorch主要模块
- Fh511+tp4333 form an outdoor mobile power lighting camping lamp scheme.
- Visual design tutorial of word cloud
- How does Quanzhi v853 chip switch sensors on Tina v85x platform?
- Recognize the startup function and find the user entry
猜你喜欢

New product experience: Alibaba cloud's new generation of local SSD instance I4 open beta

Setup and upload of arduino-esp32 flash file plug-in program

为什么越来越多的用户放弃 Swagger,选择Apifox

FS7022方案系列FS4059A双节两节锂电池串联充电IC和保护IC

Solution to directory access of thinkphp6 multi-level controller

How to find opportunities in a bear market?

Why do more and more users give up swagger and choose apifox

Special test for cold and hot start of app

开源项目维权成功案例: Spug 开源运维平台成功维权

The counter attack story of Fu Jie, a young secondary school student: I spent 20 years from the second undergraduate to the ICLR outstanding Thesis Award
随机推荐
(original) [Maui] realize "floating action button" step by step
Hubble数据库x某股份制商业银行:冠字号码管理系统升级,让每一张人民币都有 “身份证”
同花顺上怎么进行开户啊, 安全吗
(原创)【MAUI】一步一步实现“悬浮操作按钮”(FAB,Floating Action Button)
哈希竞猜游戏系统开发技术成熟案例及源码
yii2编写swoole的websocket服务
Mobile web training day-1
Pytorch model parameter adjustment and training related contents
[understanding of opportunity -32]: Guiguzi - Dui [x ī] Five attitudes towards danger and problems
Electronic components distribution 1billion Club [easy to understand]
海思35xx实现GT911触摸屏功能「建议收藏」
FS7022方案系列FS4059A双节两节锂电池串联充电IC和保护IC
Embedded development: seven techniques for estimating battery life
Centos7——安装mysql5.7
align-items 与 align-content 的区别
众昂矿业着眼氟化工产业,布局新能源产业链
895. 最长上升子序列
股票网上开户及开户流程怎样?手机开户是安全么?
New product experience: Alibaba cloud's new generation of local SSD instance I4 open beta
弹性盒子自动换行小Demo