K8s与OpenStack关系
简介
Kubernetes ⾯向应⽤层,变⾰的是业务架构,⽽ OpenStack ⾯向资源层,改变的是资源供给模式。使⽤容器且集规模不⼤,直接⽤ Kubenetes 就可以;集规模⼤,不管应⽤是否只是跑在容器中,都是 OpenStack + Kubernetes 更好。
OpenStack + Kubernetes 是各取所长,并不只是因为惯性,⽽是对于多租户需求来说,Container(容器)的隔离性还需要加强,需要加⼀层 VM(虚拟机) 来弥补,⽽OpenStack 是很好的⽅案。不过,VM + Container 的模式,必然有性能的损耗,所以 OpenStack 基⾦会也推出⼀个项⽬叫 Kata Containers,希望减少虚拟化的开销,兼顾容
器的性能和隔离性。
永恒的只有变化,未来的业务都会运⾏在云上,容器是⾛向 DevOps、Cloud Native(云原⽣)的标准⼯具,已经开始⾛向平凡,⽽ Kubernetes 的编排能⼒,让容器能够落地到业务应⽤中,所以我们看到 Docker、Mesos、OpenStack 以及很多公有云、私有云服务商,都在⽀持 Kubernetes,⼤家都加⼊了 CNCF(云原⽣计算基⾦会)。
总结起来,OpenStack 是兼容传统的架构,⽽ Kubernetes 是⾯向未来的架构。
计算开源云这⼏年发展很快,从这个问题提出到现在,社区⼜有了很多变化。所以要修正⼀个观点:Kubernetes ⽀持的容器运⾏时不仅仅是 Docker,也包括 Rkt,当然 Docker 更加流⾏。
简单的说,kubernetes是管理container的⼯具,openstack是管理VM的⼯具。
container可以运⾏在物理机上,也可以运⾏在VM上。所以kubernetes不是需要openstack的⽀持。但对于云计算来说,很多IasS都通过openstack来管理虚拟机。然后⽤户可以在这些虚拟机上运⾏docker,可以通过kubernetes进⾏管理。
K8s
⼀个K8s系统,通常称为⼀个K8s集(Cluster)
这个集主要包括两个部分:
⼀个Master节点(主节点)
⼀Node节点(计算节点)
Master节点主要还是负责管理和控制。Node节点是⼯作负载节点,⾥⾯是具体的容器。
深⼊来看这两种节点。
⾸先是Master节点。
Master节点包括API Server、Scheduler、Controller manager、etcd。
API Server是整个系统的对外接⼝,供客户端和其它组件调⽤,相当于“营业厅”。
Scheduler负责对集内部的资源进⾏调度,相当于“调度室”。
Controller manager负责管理控制器,相当于“⼤总管”。container容器用法
然后是Node节点。
Node节点包括Docker、kubelet、kube-proxy、Fluentd、kube-dns(可选),还有就是Pod。
Pod是Kubernetes最基本的操作单元。⼀个Pod代表着集中运⾏的⼀个进程,它内部封装了⼀个或多个紧密相关的容器。除了Pod之外,K8S还有⼀个Service的概念,⼀个Service可以看作⼀组提供相同服务的Pod的对外访问接⼝。
Docker,不⽤说了,创建容器的。
Kubelet,主要负责监视指派到它所在Node上的Pod,包括创建、修改、监控、删除等。
Kube-proxy,主要负责为Pod对象提供代理。
Fluentd,主要负责⽇志收集、存储与查询。
Docker和K8S都介绍完了,然⽽⽂章并没有结束。
接下来的部分,是写给核⼼⽹⼯程师甚⾄所有通信⼯程师看的。
从⼏⼗年前的1G,到现在的4G,再到将来的5G,移动通信发⽣了翻天覆地的变化,核⼼⽹亦是如此。
但是,如果你仔细洞察这些变化,会发现,所谓的核⼼⽹,其实本质上并没有发⽣改变,⽆⾮就是很多的服务器⽽已。不同的核⼼⽹⽹元,就是不同的服务器,不同的计算节点。
变化的,是这些“服务器”的形态和接⼝:形态,从机柜单板,变成机柜⼑⽚,从机柜⼑⽚,变成X86通⽤⼑⽚服务器;接⼝,从中继线缆,变成⽹线,从⽹线,变成光纤。
就算变来变去,还是服务器,是计算节点,是CPU。
既然是服务器,那么就势必会和IT云计算⼀样,⾛上虚拟化的道路。毕竟,虚拟化有太多的优势,例如前⽂所说的低成本、⾼利⽤率、充分灵活、动态调度,等等。
前⼏年,⼤家以为虚拟机是核⼼⽹的终极形态。⽬前看来,更有可能是容器化。这⼏年经常说的NFV(⽹元功能虚拟化),也有可能改⼝为NFC(⽹元功能容器化)。
以VoLTE为例,如果按以前2G/3G的⽅式,那需要⼤量的专⽤设备,分别充当EPC和IMS的不同⽹元。
VoLTE相关的⽹元
⽽采⽤容器之后,很可能只需要⼀台服务器,创建⼗⼏个容器,⽤不同的容器,来分别运⾏不同⽹元的服务程序。
这些容器,随时可以创建,也可以随时销毁。还能够在不停机的情况下,随意变⼤,随意变⼩,随意变强,随意变弱,在性能和功耗之间动态平衡。
简直完美!
5G时代,核⼼⽹采⽤微服务架构,也是和容器完美搭配——单体式架构(Monolithic)变成微服务架构(Microservices),相当于⼀个全能型变成N个专能型。每个专能型,分配给⼀个隔离的容器,赋予了最⼤程度的灵活。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论