云计算之Kubernetes核心概念,Kubernetes,简称K8s,是一个开源的,用于管理云平台中多个主机上的容器化的应用。随着云计算应用的增多,越来越多的企业要求云计算人才要掌握Kubernetes,接下来就给大家分享kubernetes核心概念及发展趋势。
Kubernetes核心概念:
集群
集群是一组节点,这些节点可以是物理服务器或者虚拟机,之上安装了Kubernetes平台。
Pod
Pod安排在节点上,包含一组容器和卷。同一个Pod里的容器共享同一个网络命名空间,可以使用localhost互相通信。Pod是短暂的,不是持续性实体。
Lable
一个Label是attach到Pod的一对键/值对,用来传递用户定义的属性。比如,你可能创建了一个"tier"和“app”标签,通过Label(tier=frontend, app=myapp)来标记前端Pod容器,使用Label(tier=backend, app=myapp)标记后台Pod。然后可以使用Selectors选择带有特定Label的Pod,并且将Service或者Replication Controller应用到上面。
Service
Service是定义一系列Pod以及访问这些Pod的策略的一层抽象。Service通过Label找到Pod组。有一个特别类型的Kubernetes Service,称为'LoadBalancer',作为外部负载均衡器使用,在一定数量的Pod之间均衡流量。比如,对于负载均衡Web流量很有用。
Node
节点是物理或者虚拟机器,作为Kubernetes worker,通常称为Minion。每个节点都运行Kubernetes关键组件:Kubelet:是主节点代理;Kube-proxy:Service使用其将链接路由到Pod;Docker或Rocket:Kubernetes使用的容器技术来创建容器。
Kubernetes Master
Kubernetes Master提供集群的独特视角,并且拥有一系列组件,比如Kubernetes API Server。API Server提供可以用来和集群交互的REST端点。master节点包括用来创建和复制Pod的Replication Controller。
保护
Kubernetes原生可能出现的趋势:
1、预计“Kubernetes原生”软件将呈上升趋势
这种趋势已经在增长,这在Kubernetes周围新兴的生态系统中显而易见。正如Red Hat公司副总裁兼首席技术官Chris Wright指出的那样:“就像Linux在2000年成为开源开发的焦点一样,Kubernetes也正在成为构建技术和解决方案的焦点(当然,Linux是Kubernetes的基础)。”
2、Federation到来
尽管Kubernetes的许多功能都已经成熟,但是Federation经历了两个不同的发展周期。虽然Kubernetes Federation v1从未实现GA,但v2(KubeFed)目前仍在Alpha中。到2020年,Kubernetes Federation功能很可能会达到Beta和GA。
3、安全将继续成为备受关注的焦点
随着Kubernetes的采用和基于容器的应用程序在生产中的部署速度加快,其数量比我们目前看到的要多得多,可以预期会发生更多的安全事件。这些问题中的大多数都是由于关于什么是安全配置的知识空白,以及缺乏适当的安全工具造成的。
4、Kubernetes的招聘激增
Kubernetes将推动组织寻求具有高度自动化功能的解决方案,这些解决方案具有开箱即用的‘零配置’功能,这些功能可立即提供价值,并且不需要大量的集成工作或管理开销。
5、Kubernetes缩小其资源消耗
随着物联网和边缘计算在2020年继续受到青睐,将越来越关注将Kubernetes托管在具有非常低资源(CPU、内存和占用空间)的设备和环境上,在这些设备上运行应用程序的资源消耗也同样非常低。