Kubernetes是什么?

大概很多人对此都有疑问,不过在容器领域,Kubernetes却无人不晓。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

阿里、字节跳动、腾讯、百度等中国互联网行业巨擘们,近年来都在深耕容器领域,而Kubernetes也是这些大厂未来的战略重心。

因此,若是你还不了解Kubernetes,这篇扫盲贴一定要收藏后认真看。

一、Kubernetes的前世今生

《Kubernetes 基础:入门与安装配置》一课中,是这样描述Kubernetes的。

Kubernetes 是一个跨主机集群的、开源的容器调度平台,它可以自动化应用容器的部署、扩展和操作,提供以容器为中心的基础架构。

它的名字源于希腊语,意为 “舵手” 或 “飞行员”,k8s 是通过将 8 个字母 “ubernete” 替换为 8 然后改成缩写,在中文中,k8s 的发音和 Kubernetes 的发音也比较接近。

Linux 基金会常务董事 Jim Zemlin 说:“Kubernetes 已经成为云计算时代的 Linux 操作系统。”

Kubernetes 是 Google Borg 项目的开源版本,Borg 是 Google 内部使用了十几年的非常有名的大规模集群管理系统,其原型图片如下所示:

零基础入门 Kubernetes,你需要知道这些 go 第1张

因此,Kubernetes 构建于 Google 数十年经验,一大半来源于 Google 生产环境规模的经验,并结合了社区最佳的想法和实践。Kubernetes 的目标是管理跨多个主机的容器,提供基本的部署,维护以及运用伸缩,主要实现语言为 Go 语言。

二、Kubernetes 成长历程及特点

Kubernetes 重要成长历程:

  • 2014 年 6 月,Kubernetes 正式由 Google 开源
  • 2015 年,Google 将 Kubernetes 捐赠给 Linux 基金会下属的 CNCF(Cloud Native Computing Foundation,云原生计算基金会)
  • 2017 年,Kubernetes 战胜 Docker Swarm 和 Apache Mesos,成为容器管理与调度编排领域的首选平台和事实标准

Kubernetes 特点:

强大的容器编排能力

作为容器编排管理平台,拥有强大的容器编排能力。Kubernetes 与 Docker 共同发展并且深度集成了 Docker,因此适应容器的特点,比如容器组合、标签选择和服务发现等,可以满足企业级的需求。

轻量级

轻量级,对微服务架构有很好的支撑。

便携性

无论公有云、私有云、混合云还是多云架构都全面支持,可以随时随地地将系统整体进行“搬迁”。

无需改变配置文件就可以将系统从物理机迁移到公有云上,并且谷歌云(GCE)、华为云(CCE)、阿里云(ACK)和腾讯云(TKE)都支持 Kubernetes 集群。

三、使用 Kubernetes的 10 个理由

从生态圈的角度来看:

  • Google 的业内最成熟的容器编排管理经验的输出
  • 2017 年战胜 Docker Swarm 和 Apache Mesos,成为云原生应用唯一值得绑定的容器编排管理平台
  • 传统云平台提供商的全面支持:Google k8s engine、Red Hat 的 OpenShift、Microsoft 的 Azure container service、IBM 的 cloud container service 等

有了 Kubernetes,你可以:

  • 跨主机编排容器
  • 更充分地利用硬件资源来最大化地满足企业应用的需求
  • 控制与自动化应用的部署与升级
  • 为有状态的应用程序挂载和添加存储器
  • 线上扩展或裁剪容器化应用程序与它们的资源
  • 声明式的容器管理,保证所部署的应用按照我们部署的方式运作
  • 通过自动布局、自动重启、自动复制、自动伸缩实现应用的状态检查与自我修复

四、零基础入门Kubernetes

近期,实验楼推出了一系列的Kubernetes课程,难度各异,但我认为,最适合新人学习的课程是这门《Kubernetes 基础:入门与安装配置》

该课程为 Kubernetes 入门课程,将会从零开始带领大家一步一步深入学习 Kubernetes 相关知识。内容包括:Kubernetes 基础概念、微服务架构、部署实例、以及最常用的 YAML 语言格式。

你将学到:
零基础入门 Kubernetes,你需要知道这些 go 第2张

课程内容:

零基础入门 Kubernetes,你需要知道这些 go 第3张

零基础入门 Kubernetes,你需要知道这些 go 第4张

零基础入门 Kubernetes,你需要知道这些 go 第5张

零基础入门 Kubernetes,你需要知道这些 go 第6张

实验环境:

本课程全部为云主机实验环境,Kubernetes 版本为 1.15,在环境中通过脚本执行命令即启动一个 3 节点的 Kubernetes 集群。

适合人群:

课程难度为简单,面向已经掌握 Linux 基础以及 Docker 基础,同时希望能够快速了解 Kubernetes 基础概念、进行单节点(多节点)安装部署、以及集群基本使用的同学。

Tips:

点击《Kubernetes 基础:入门与安装配置》,现在还有试学机会哦。

五、关于Kubernetes的补充阅读

还未熟悉Linux和Docker基础的同学,可以查看实验楼课程:

《Linux 基础入门》(免费)

《动手实战学 Docker》

已经了解Kubernetes,并想深度学习的同学可以继续学习实验楼课程:

《Kubernetes 进阶(一):Pod 与 Service》

《Kubernetes 进阶(二):控制器、存储与网络》

《Kubernetes 进阶(三):Helm、集群安全、日志与监控》

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄