Kubernetes
Last updated
Was this helpful?
Last updated
Was this helpful?
Kubernetes的亲爹是Google,基于其内部的Brog和Omega以及其他系统实践的开源操作系统。
Kubernetes是容器编排工具,可以为应用程序提供强大的编排功能,下图是应用在Kubernetes中的基本架构。
客户端(用户、运行在其他Pod或外部的客户端程序的统称)向Service发出请求,Service将请求转发至被ReplicationController或ReplicaSet接管的某一个Pod中,Pod中的容器执行具体的请求。
图中的Service、Pod、ReplicationController等都是Kubernetes提供的资源,Service和RC、RS都是通过标签选择器来匹配Pods。
Kubernetes中有许多资源供我们使用,如Deployment、Pod、Service等,每一种资源都有各自的用途。
我们通常都通过编写YAML配置文件的方式创建资源,配置文件通常包括以下四个部分:
apiVersion
:资源所属的API组,可以通过kubectl explain
的方式查看资源所属的组,随着Kubernetes版本的不同,部分beta版的资源类型可能会被放入其他组;
kind
:资源类型;
metadata
:资源的元数据,包含:资源名、资源标签等;
spec
:资源的规格(资源的相关配置);
Tips:Pod还可以被其他Controller接管,ReplicationController和ReplicaSet只是众多Controller中的两个,中会进行更详细的说明。