Kubernetes 是 Google 团队发起并维护的基于 Docker 的开源容器集群管理系统,它不仅支持常见的云平台,而且支持内部数据中心。
建于 Docker 之上的 Kubernetes 可以构建一个容器的调度服务,其目的是让用户透过Kubernetes 集群来进行云端容器集群的管理,而无需用户进行复杂的设置工作。
系统会自动选取合适的工作节点来执行具体的容器集群调度处理工作。其核心概念是 Container Pod 。
一个 Pod 由一组工作于同一物理工作节点的容器构成。
这些组容器拥有相同的网络命名空间、IP以及存储配额,也可以根据实际情况对每一个 Pod 进行端口映射。
此外, Kubernetes 工作节点会由主系统进行管理,节点包含了能够运行 Docker 容器所用到的服务。
项目简介
Kubernetes 是 Google 团队发起的开源项目,它的目标是管理跨多个主机的容器,提供基本的部署,维护以及运用伸缩,主要实现语言为 Go 语言。
Kubernetes 是:
·易学:轻量级,简单,容易理解
·便携:支持公有云,私有云,混合云,以及多种云平台
·可拓展:模块化,可插拔,支持钩子,可任意组合
·自修复:自动重调度,自动重启,自动复制
Kubernetes 构建于 Google 数十年经验,一大半来源于 Google 生产环境规模的经验。结合了社区最佳的想法和实践。
在分布式系统中,部署,调度,伸缩一直是最为重要的也最为基础的功能。Kubernets 就是希望解决这一序列问题的。
Kubernets 目前在GitHub进行维护。
Kubernetes 能够运行在任何地方!
虽然 Kubernets 最初是为 GCE 定制的,但是在后续版本中陆续增加了其他云平台的支持,以及本地数据中心的支持。
快速上手
目前,Kubenetes 支持在多种环境下的安装,包括本地主机(Fedora)、云服务(GoogleGAE、AWS 等)。然而最快速体验 Kubernetes 的方式显然是本地通过 Docker 的方式来启动相关进程。
下图展示了在单节点使用 Docker 快速部署一套 Kubernetes 的拓扑。
在 Docker 中启动 Kubernetes