Kubernetes之简介(一)

2018-04-27  本文已影响56人  georgeguo

Docker和微服务

基于Docker技术,开发者可以自由的将应用程序和基础镜像打包起来,发布到任何运行流行Linux系统的机器上执行,契合了容器“一次构建,到处运行”的核心理念。

Docker的诞生,促进了微服务架构的快速发展,但是基于Docker的微服务架构仍然面临如何实现Docker集群的系统管理、容器的自动部署、编排、维护和扩展等问题。针对此,目前Docker官方提供的Swarm、Apache提供的Mesos、Google提供的Kubernetes都可以解决上述的问题,而生产级别的容器集群平台使用较多的仍是Kubernetes。

Kubernetes 简介

Kubernetes是Google 2014年推出的开源容器集群管理系统,基于Docker构建一个容器调度服务,为容器化的应用提供资源调度、部署运行、均衡容灾、服务注册、扩容缩容等功能,本质上可看作是基于容器技术的mini-PaaS平台,提取了PaaS中的业务编排和管理模块而形成的。

Kubernetes自开源以来,受到了众多公司和容器爱好者的关注,是目前最优秀的容器集群管理的开源醒目之一。已有Microsoft、IBM 、Mesosphere 、RedHat、Docker、CoreOS等公司加入到Kubernetes社区。

Kubernetes前身是在Google内部已经应用了十几年的Borg系统,积累了大量来自生成环境的宝贵实践。正是因为这些积累,作为一套分布式应用容器集群系统,Kubernetes拥有明显的技术优势:

Kubernetes集群架构

Kubernetes集群由其提供的一组节点组成,这些节点提供容器资源池供用户使用。管理组件主要包括管理(Master)组件和节点(Node)组件。

Master组件提供所有集群管理的相关操作,如调度,监控,对资源的操作等。包括kube-apiserver、kube-scheduler、kube-controller-manager、kube-ui以及Etcd、DNS等支持组件。

Node组件是Kubernetes中的实际工作的计算实例,节点可以是虚拟机、物理服务器或者云服务器,在创建Kubernetes集群时,需要预装一些必要的软件来响应Master的管理,主要包括kubelet、kubeproxy等。

kubernetes架构

参考

上一篇 下一篇

猜你喜欢

热点阅读