1.概述

本教程将简要介绍如何在Raspberry Pi上安装和运行microk8,并加入多个Pi以形成一个生产级Kubernetes集群。

MicroK8s是一款轻量级、快速的企业级Kubernetes。万博app下载地址多少无论您是k8的新手还是高级用户,microk8都将帮助您在任何嵌入式设备或物联网项目上节省时间和空间。

这个设置可以是完全无头的,也可以使用HDMI屏幕和USB键盘来控制集群的节点。

你将学习

  • 使用MicroK8s在树莓派上部署Kubernetes
  • 加入多个部署以形成一个集群
  • 管理集群:增加和移除节点

你需要什么

  • 16.04 LTS(或更高版本)Ubuntu桌面
  • 至少2个树莓派,他们需要是派3B或更晚。(你想用多少都可以,这里我们用3个)
  • 每个Pi 1根micro-USB电源线(Pi4采用USB-C)
  • 一个USB电源与许多端口,因为你有板
  • 每Pi一个microSD卡(推荐8GB),闪烁着一个Ubuntu服务器的图像
  • 一些基本的命令行知识

可选:

  • 带有HDMI接口的显示器
  • 如果你使用的是Pi 2或Pi 3,那就用HDMI线,或者Pi 4用MicroHDMI线
  • 每个单板最好使用Cat5/6网线,但也可以安装Wi-FI
  • 一个USB键盘
  • 集群机架(这里我们使用来自PiHut的群集病例

您还需要将所有的板子放在同一个网络上,并准备通过SSH连接到每个Pi的终端窗口。


2.构建集群

如果您已经为您的pi购买了机架,现在是时候设置它了。制作时间会根据你买的架子和你手指的灵活程度而有所不同,但应该不会超过45分钟。我们建议你在开始的时候就这样做,在你开始之前把一切都安排好。

如果你有我们这里用过的PiHut集群案例汇编指令非常直接。以下是一些正在拍摄的照片,以供参考:

警告
不要在深色的地毯上拿坚果。一个(或两个)失误,这些笨蛋将永远消失。相信我。

一旦你完成了,它应该看起来像这样:

如果你没有机架,只要确保pi可以连接到电源,并且在一个允许他们连接到相同的网络(通过WiFi或以太网)的位置。


3.设置每个Pi

每个Pi都需要一个Ubuntu服务器镜像,你需要能够SSH进入它们。

本教程会教你如何达到这一步。一直追下去,直到安装一个桌面部分。继续,在另一个选项卡中这样做。我们会等待。

警告
MicroK8s仅适用于64位Ubuntu镜像。

之后,您应该能够使用IP地址登录到您的网络上的Pis。


4.安装MicroK8s

每个pi都遵循这一节。一旦完成,你就可以安装microk8并在任何地方运行。

进入你的第一个派之前,我们需要做一件事。我们需要启用c组,这样kubelet就可以开箱即用了。要做到这一点,你需要修改配置文件/boot/firmware/cmdline.txt:

sudo纳米/ boot /固件/ cmdline.txt

并添加以下选项:

cgroup_enable =记忆cgroup_memory = 1

这个树莓派的整行看起来是这样的:

cgroup_enable =内存cgroup_memory = 1。dwc_otg ifnames = 0。lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline roottwwait . lpm_enable=0 console=ttyAMA0,115200 console=tty1

现在将文件保存在编辑器中并重新启动:

sudo重启

一旦完成,我们现在可以安装MicroK8s snap:

Sudo snap安装microk8s——经典

这个安装的是什么Kubernetes版本?

MicroK8s是一个简单的步骤,因此它将自动更新到该包的更新版本,该版本紧跟在Kubernetes的上游版本。

为了遵循一个特定的Kubernetes上游系列,可以选择一个通道在安装过程中。例如,要遵循v1.17系列:

Sudo snap安装microk8s -classic -channel=1.17/stable

通道由一个轨道(或系列)和一个预期的稳定级别组成,基于microk8的发行版(稳定、候选、测试版、边缘)。有关可用版本的更多信息,请运行:

快速信息microk8s

发现MicroK8s

在进一步深入之前,先简单介绍一下MicroK8s命令行:

  • 开始命令将启动所有已启用的Kubernetes服务:microk8s.start
  • 检查命令会给你服务的状态:microk8s.inspect
  • 停止命令将停止所有Kubernetes服务:microk8s.stop
  • 您可以轻松地启用Kubernetes插件,例如。启用“kubedns”:microk8s。使dns
  • 查询集群的状态信息。microk8s。kubectl cluster-info

MicroK8s易于使用,并提供了大量的功能Kubernetes附加组件您可以启用或禁用。


5.主节点和叶节点

现在已经在所有的板上安装了microk8,选择一个作为集群的主节点。

在选中的设备上运行以下命令:

sudo microk8s.add-node

此命令将生成一个连接字符串,形式为< master_ip >: <口> / <标记>

添加一个节点

现在,你需要运行加入要添加到集群的Pi的命令:

microk8s。加入< master_ip >: <口> / <标记>

例如:

microk8s。加入10.55.60.14:25000/JHpbBYMIevZSAMnmjMHmFwanrOYCWZLu

您应该能够在几秒钟内通过以下命令在主机上看到新节点:

microk8s。kubectl得到节点

对于每个新节点,您需要运行microk8s.add-node命令,复制输出,然后运行microk8s。加入在叶子上。

删除节点

持续时间:一点

在主节点上运行以下命令删除节点:

Sudo microk8s删除节点<节点名>

节点的名称可以在主节点上通过运行microk8s。kubectl得到节点命令。

或者,你可以通过运行以下命令从叶子节点离开集群:

sudo microk8s.leave

6.就是这样!

您现在可以控制您的Kubernetes集群:一旦使用microk8设置了pi,添加和删除节点就很容易了,您可以根据自己的需要进行扩展或缩小。

接下来是什么?

从这里开始的机会是无穷无尽的,我们迫不及待地想看看你的Pi集群会有什么成果。要获得反馈、bug报告或贡献,请联系GitHub,和我们在网上聊天Kubernetes松弛,在microk8s频道,Kubernetes论坛我们或标记@canonical@ubuntu,在推特(# MicroK8s).

当然,我们建议大家回顾一下microk8s文档以便更好地了解MicroK8s。


Baidu