使用Microk8s在Linux上本地运行捕鱼大亨网络版

s: 伊霍尔·德沃雷茨基(Ihor Dvoretskyi),开发人员倡导者,云原生计算基金会; 胭脂红Rimi

本文,第二篇 系列 关于Linux上的本地部署选项,并涵盖 MicroK8s。 Microk8s是用于在本地部署捕鱼大亨网络版集群的即点即用解决方案,最初由Ubuntu的发行商Canonical开发。

Minikube通常为捕鱼大亨网络版集群启动本地虚拟机(VM),而MicroK8s不需要VM。它用 包,一种应用程序打包和隔离技术。

这种差异各有利弊。在这里,我们将讨论一些有趣的差异,并将基于VM的方法的收益与非VM方法的收益进行比较。第一个因素是跨平台可移植性。 Minikube VM可跨操作系统移植-它不仅支持Linux,而且还支持Windows,macOS甚至FreeBSD-Microk8s需要Linux,并且仅在这些发行版中 支持快照。支持大多数流行的Linux发行版。

要考虑的另一个因素是资源消耗。 VM设备可以为您提供更大的可移植性,但这确实意味着您将花费更多的资源来运行VM,这主要是因为VM随附了完整的操作系统,并且在虚拟机监控程序之上运行。虚拟机处于休眠状态时,您将消耗更多的磁盘空间。在运行时,您将消耗更多的RAM和CPU。由于Microk8不需要启动虚拟机,因此您将拥有更多资源来运行工作负载和其他应用程序。鉴于其占地面积较小,MicroK8s非常适合物联网设备-您甚至可以在Raspberry Pi设备上使用它!

最后,这些项目似乎遵循不同的发布节奏和策略。 MicroK8和通常提供的卡扣 频道 允许您使用捕鱼大亨网络版的新版本以及以前的稳定版本的beta版本和候选版本。 Microk8通常通常几乎立即释放上游捕鱼大亨网络版的稳定版本。

但是,等等,还有更多! Minikube和MicroK8都是作为单节点群集开始的。从本质上讲,它们使您可以使用单个工作节点创建捕鱼大亨网络版集群。情况即将改变-MicroK8的早期Alpha版本包括集群功能。借助此功能,您可以创建具有任意数量的工作程序节点的捕鱼大亨网络版集群。实际上,这是用于创建集群的一种不受限制的选项-开发人员必须在节点之间创建网络连接,并且必须与可能需要的其他基础结构集成,例如外部负载平衡器。总而言之,MicroK8提供了一种快速简便的方法,可将少量计算机或VM变成多节点捕鱼大亨网络版集群。我们将在以后的文章中详细介绍这种架构。

免责声明

这不是MicroK8的官方指南。您可以在官方网站上找到有关运行和使用MicroK8的详细信息 网页,其中涵盖了不同的用例,操作系统,环境等。相反,这篇文章的目的是提供在Linux上运行MicroK8的简单明了的指南。

先决条件

一个Linux发行版 支持快照, 是必须的。在本指南中,我们将使用Ubuntu 18.04 LTS,它支持即用型快照。 如果您有兴趣在Windows或Mac上运行Microk8,则应签出 多通 作为系统上运行虚拟Ubuntu的正式方法,可以建立一个快速的Ubuntu VM。

MicroK8s安装

MicroK8s的安装非常简单:

sudo 卡 install microk8s --classic

上面的命令可以在几秒钟内安装本地单节点捕鱼大亨网络版集群。一旦命令执行完成,您的捕鱼大亨网络版集群即已启动并正在运行。

您可以使用以下命令验证MicroK8s的状态:

sudo microk8s.status

使用microk8s

Using MicroK8s is as straightforward as installing it. MicroK8s itself includes a kubectl binary, which can be accessed by running the microk8s.kubectl command. As an example:

microk8s.kubectl get nodes

While using the prefix microk8s.kubectl allows for a parallel install of another system-wide kubectl without impact, you can easily get rid of it by using the 卡 alias command:

sudo 卡 alias microk8s.kubectl kubectl

This will allow you to simply use kubectl after. You can revert this change using the 卡 unalias command.

kubectl get nodes

MicroK8s插件

使用Microk8的最大好处之一是它还支持各种附加组件和扩展。更重要的是它们是开箱即用的,用户只需启用它们即可。

The full list of extensions can be checked by running the microk8s.status command:

sudo microk8s.status

在撰写本文时,支持以下加载项:

社区一直在创建和贡献更多的附件,这无疑有助于经常检查!

发布渠道

sudo 卡 info microk8s

安装示例应用程序

在本教程中,我们将使用NGINX作为示例应用程序(官方Docker Hub映像)。

它将作为捕鱼大亨网络版部署安装:

kubectl create deployment nginx --image=nginx

要验证安装,请运行以下命令:

kubectl get deployments
kubectl get pods

同样,我们可以在捕鱼大亨网络版集群中检索所有可用对象的完整输出:

kubectl get all --all-namespaces

卸载MicroK8s

卸载microk8s集群非常简单,就像卸载snap一样:

sudo 卡 remove microk8s

截屏

asciicast