当云计算还处于形成阶段时,开发人员发现以小型、原子化的、最小的 Linux 镜像编写应用程序很方便,这些镜像与运行它们的服务器共享资源。 从技术上讲,这些小的环境定义基于内核命名空间,被称为容器。 随着容器的激增,系统管理员很快意识到开发一种工具来帮助他们不仅管理容器,还管理底层的虚拟化基础设施至关重要。 这就是 Kubernetes 诞生的原因。
Kubernetes 是一个可扩展的开源平台,用于管理容器。 它可以帮助管理员和开发人员管理围绕容器的工作负载、服务和流程。 它有助于声明式配置和轻松自动化。 在其相对较短的生命周期内,它促进了一个快速增长的生态系统,其中包含来自许多公司和项目的服务、支持和工具。
如果您希望更好地了解这项重要的云技术,以下是一些文章,可帮助您深入了解,还有五个项目可帮助您尝试所学知识。
控制容器混乱
2016 年,我们发表了 Terry Ryan 撰写的 使用 Kubernetes 控制容器混乱,这是一篇关于 Kubernetes 如何帮助管理员和架构师处理容器的介绍性文章。 如果您需要对容器的功能以及 Kubernetes 如何简化容器管理的入门级介绍,那么这是首先要阅读的文章。 它不假设任何先前的知识,并解释了所有最重要的概念,因此您可以快速上手。
要深入了解内核级别发生的一些神奇的事情,请阅读 Jessica Cherry 对 Kubernetes 命名空间的解释。
Kubernetes:为什么它很重要?
Kubernetes 提供了基础设施即服务 (IaaS) 解决方案(如 OpenStack)和完整的平台即服务 (PaaS) 的优势。 它为您提供了管理基础设施的抽象,以及您在裸机底层进行故障排除所需的工具。 如果您有固守单台裸机服务器的冲动,您可能需要阅读 Tim Potter 关于 为什么 Kubernetes 很重要的看法。 他的文章比较了 IaaS 和 PaaS,并给出了他对 Kubernetes 如此广泛采用的看法。 您并不总是需要 Kubernetes 或容器,但重要的是要知道何时需要它们。
在 Raspberry Pi 上运行它
没有比自己运行 Kubernetes 更好的熟悉它的方法了。 不幸的是,并非每个人都有云(也没有钱租用云上的时间)。 幸运的是,Chris Collins 提供了在 Pi 上运行 Kubernetes 的指南。 结合他对 Cloud-init 和 Cloud-init 服务(也在 Pi 上)的同样具有启发性的教程,您可以构建任何您想要的家庭实验室,这样您就可以学习如何管理您自己的开放混合云。
Kubernetes 命令
一旦 Kubernetes 启动并运行,请查看 Jessica Cherry 的文章和随附的速查表,其中提供了所有 基本的 Kubernetes 命令。 在她的文章中,她解释了 kubectl
命令的语法,并概述了每个命令和子命令的用途。
有趣的 Kubernetes 项目
没有什么比能够访问技术却不知道如何使用它更令人沮丧的了。 例如,在您的桌面上有一台 Raspberry Pi 是一回事,但决定它应该花费其 CPU 周期做什么完全是另一回事。 我们发表了许多文章,为您的 Kubernetes 探索提供一些指导。
- Helm 是 Kubernetes 的包管理器。 探索它是轻松适应 Kubernetes 的一种简单方法。
- 了解有关 Operator SDK 的所有信息,以熟悉 Kubernetes 对象和运算符。
- 在 Kubernetes 之上提供 网络文件系统 (NFS)。
- 学习如何使用 Skipper 或 Traefik 路由流量。
最重要的是,花时间熟悉容器和 Kubernetes。 无论您首先在服务器、云或桌面上采用容器化应用程序,它们都是一个重要的范例,需要理解,因为它们是一个强大的结构,使 Linux 上的应用程序更好、更强大、更健壮且更易于使用。 花时间了解更多关于它们的信息。 您会很高兴您这样做了。
1 条评论