在RaspberryPi家庭实验室上运行Kubernetes的5个理由在本文中,我解释了为什么建议在家中使用Kubernetes。这样做的原因相对随意,主要关注结果。除了Kubernetes的优良特性外,还有其他几个原因说明您应该在自己的计算机上安装Kubernetes。LCTT译注:HomeLab是指放置在您家中的一台服务器或多台服务器的组合。多个服务和虚拟系统托管在其上,用于测试、开发或家庭功能目的。1.KubernetesisbasedonLinuxT恤阅读“ContainersareLinux”Kubernetes有很高的知名度。对于某些人来说,Kubernetes是一种神秘的技术,其名称难以发音;对于其他人来说,Kubernetes就像牧羊犬放羊,帮助他们管理过多的容器;对于其他人来说,Kubernetes是云操作系统,是有效云开发的有用接口;对于大多数人来说,Kubernetes可能是他们从未听说过的后端软件。可以想象,Kubernetes具有所有这些功能,甚至更多。并非每个人都以相同的方式使用Kubernetes,但如果您的主要工作是系统管理,您会发现Kubernetes只是另一个Linux命令。我有一件T恤,上面写着“TheContainerIs”,它的意思很明显。容器技术使用cgroups来运行包含一个或一组应用程序的最小Linux操作系统映像。当你运行容器时,你实际上是在运行Linux。虽然Kubernetes在许多平台上可用,但Kubernetes管理Linux容器。当您通过终端与Kubernetes交互时,就像使用Linux一样:有命令、选项、参数和语法。为Kubernetes运行kubeadm或(在OKD或OpenShift上)运行oc命令会感觉很熟悉,因为它们的工作方式与您习惯的任何其他Linux命令一样。一开始看起来很陌生的东西很快就会变得很自然,任何有兴趣花时间在终端上的Linux用户都可以在Kubernetes中探索许多有趣的东西。2.Kubernetes非常灵活过去,Kubernetes有点死板,因为本质上它只能支持一个容器运行时。该法规非常严格,以至于今天需要硬编码垫片来绕过这个遗留问题。幸运的是,如今Kubernetes已经变得足够灵活,可以满足管理员的许多不同需求。Podman和CRI-O都可以作为容器引擎,都可以与systemd集成(这是因为Kubernetes的底层是Linux)。您可以选择Kubernetes使用的文件系统、集群规模和结构、监控工具、镜像、编程语言等配置。甚至现在有人说Kubernetes的选择太多了。3、学习Kubernetes对个人发展有帮助。容器是一个富有成果的东西。它们会迅速繁殖,这就是它的设计目的。容器旨在扩展,并且它们通过生成克隆来扩展。对容器(称为“pods”)进行分组并自动管理pod的生命周期是Kubernetes的工作原理。它正在改变服务器的运行方式。您可能不需要无限扩展的容器集合,或任何可以帮助您管理一两个正在运行的容器的东西。但是,如果您想从处理容器pod的能力中获益,那么Kubernetes正是您需要学习的工具。随着越来越多的公司和组织走向全球并拥抱数字化转型,Kubernetes正在成为IT领域的必备技能。如果你想在这个领域发展,现在开始学习Kubernetes并熟悉它的常见问题及其解决方案将是一笔不错的投资。4.Kubernetes让容器更有意义你可能还记得几年前,当开源项目第一次开始将它们的代码作为容器镜像分发时。管理员真正理解什么是容器,或者理解容器的边界在哪里,如何进入容器,数据为什么不能存在于容器中。容器的概念现在为包括开发人员在内的IT社区所熟悉。交付到容器对于现代CI/CD工作流来说非常有意义。不过,对于系统管理员来说,容器具有以下优点:安装容器(理论上)比等待发行版更新它们的包更容易,而且容器可以扩展。但是,在使用Kubernetes之前,您可能不会真正感受到这些好处。在开始使用Kubernetes和相关工具管理容器之前,您可能只是从文章中读到的想法可能只是容器持续交付的好处及其扩展能力。将容器集成到您管理服务器的方式中,您会突然明白Kubernetes中令人兴奋的地方。ApacheJMeter您可以尝试这个最基本的测试:只需在容器中启动您最喜欢的Web服务器,创建一个容器pod,然后使用来自ApacheJMeter的流量访问您的服务器,然后观察容器响应。5.Kubernetes是云原生的如果你主要从事软件开发而不是系统管理,那么Kubernetes也是一个很好的Web应用程序平台。现在我们都在使用Web应用程序,尽管大多数人只是将它们视为“网站”。Web拥有庞大的用户群,因此通过浏览器提供开源应用程序是有意义的。Web上运行着一些出色的开源应用程序,其中许多应用程序以容器形式分发,便于安装和持续的用户体验。Kubernetes的其他优势:Kubernetes很有趣还记得你刚接触Linux的时候吗?对于一些人来说,那可能是几十年前的事了,而对于其他人来说,这可能是不太遥远的过去。尽管如此,学习新事物对所有人来说都是一个有趣的挑战。如果您已经到了认为“安装Linux比挑战更麻烦”的地步,那么您可以尝试构建Kubernetes集群。它会让你想起你忘记的各种概念:如何修改纯文本配置文件(尤其是YAML格式),如何配置网络接口和网络,如何路由流量,了解一个后端相对于另一个后端的优势Cons,在--dry-run测试之后运行--dry-run测试,然后试探性地按enter看看你是否做对了。老实说,使用Kubernetes很有趣。如果您想构建自己的基础架构,没有什么比构建自己的Kubernetes集群更好的了。Kubernetes集群将为您打开一个全新的世界。您很快就会成为一名云架构师,学习完善您的开放云,在容器中安装令人惊叹的开源Web应用程序,并为您的家人和朋友提供访问权限。您可以自己获取解决方案。这真的很棒。快来试试Kubernetes。对于Kubernetes的初学者来说,Kubernetes似乎很难快速上手,因为Kubernetes这个新工具会让你有点望而却步,而且它还需要云服务。但是,这里有一些方法可以让您开始体验Kubernetes。首先,安装Minikube或Minishift。这两种工具都允许您在自己的计算机上运行Kubernetes的本地实例。虽然这不如“构建一个集群并与您的朋友分享”那么令人满意,但这是一种让您自己熟悉Kubernetes环境、命令和工具包的好而安全的方式。当您准备好深入研究Kubernetes时,请进一步阅读ChrisCollins的《??使用树莓派构建 Kubernetes 集群???》文章。之后,下载我们的免费电子书《??在你树莓派家庭实验室上运行 Kubernetes??》。在不知不觉中,您会发现自己理解“容器就是Linux”的含义。
