基于树莓派raspberry pi如何部署Kubernetes集群

88次阅读
没有评论

共计 2512 个字符,预计需要花费 7 分钟才能阅读完成。

这篇文章给大家介绍基于树莓派 raspberry pi 如何部署 Kubernetes 集群,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

基于树莓派(Raspberry Pi)部署 Kubernetes 集群,可以使用 MicroK8s 或 K3s 分发版。

关于 MicroK8s 或 K3s 的使用,请参考:

MicroK8s 与 K3s 的简单对比

MicroK8s 快速入门

MicroK8s- 部署到 Windows、macOS 和 Raspberry Pi

k3s- 轻量容器集群,快速入门

k3s- 轻量容器集群,架构与高可用

建立全球部署的容器集群应用的开源技术栈

1、准备树莓派

目前树莓派(https://www.raspberrypi.org)的官方 OS(https://www.raspberrypi.org/downloads/)和第三方系统(如 Hypriot、Ubuntu Core/Server/Mate)都可以支持。推荐使用 4B,使用 64 位的系统。

1.1 安装操作系统

现在使用 Raspberry Pi Imager 可以直接烧写 SD 卡,点击下面的链接下载安装,然后运行:

Raspberry Pi Imager for Windows

Raspberry Pi Imager for macOS

Raspberry Pi Imager for Ubuntu

也可以下载操作系统镜像,然后烧写到 SD 卡上(参考:福利:一个开源的超好用的 SD 卡 / U 盘烧写工具)。

Hypriot- 支持 ARM64 的服务器操作系统

Nvidia 和 arm 合作推进物联网智能

1.2 容器镜像仓库

docker 的镜像服务是可以跨平台使用的,但镜像不同。arm 上可以使用同一个 registry 服务,但镜像需要有不同的标识。

Ubuntu 安装私有 Docker Hub 服务 Harbor

Docker 镜像仓库服务 -Nexus

1.3 安装容器引擎

arm 上的容器引擎与 x86 体系不同,需要单独编译、安装(已有分发版,可以通过 get.docker.com 直接安装。)。

ARM64 上的 Docker 编译与安装

ARM64 上 Docker 编译问题与解决

96Boards(410C)中的 Docker 使用方法

使用 Portainer 或者 UI for Docker 可视化管理树莓派容器

安装过程:

sudo apt-get install wget git-core
curl -sSL https://get.docker.com | sh
#  树莓派专属脚本福利,一句搞定!sudo docker --version
#  确认版本号,返回类似:Docker version 19.03.5, build 633a0ea
sudo nano /etc/docker/daemon.json
#  添加国内镜像,写入如下内容:  registry-mirrors : [https://registry.docker-cn.com]
#保存(ctrl+o)退出(ctrl+x)sudo systemctl restart docker.service 
sudo systemctl enable docker.service
#  重启 docker 并常驻服务
sudo docker pull portainer/portainer
#  安装 docker 图形化 UI
sudo docker volume create portainer_data
sudo docker run -d -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
#  创建 UI 容器,可以在浏览器中输入树莓派 IP:9000  访问,设置帐号密码后选择 local(本地)

1.4 安装 K8s 服务软件

主要有三种版本:Kubernetes、K3s、MicroK8s。其中,包括服务器程序和需要的系统容器镜像两个部分,服务程序通过 apt 安装,系统容器镜像需要使用 Docker 等容器工具单独下载到各个节点。

2、获取树莓派上 K8s 的系统镜像

树莓派上 K8s 的系统镜像,根据 K8s 版本的不同有些差异。需要根据分发版的选择进行安装。

参考:

MicroK8s 快速入门

MicroK8s- 部署到 Windows、macOS 和 Raspberry Pi

k3s- 轻量容器集群,快速入门

k3s- 轻量容器集群,架构与高可用

3、制作树莓派上应用的容器镜像

树莓派上需要使用为对应指令集 CPU 创建的容器镜像,并添加 tag 标签。

3.1 可用的容器镜像源

很多软件都提供了 arm 下的容器镜像。

树莓派可用的 docker 镜像源:

树莓派专用,https://hub.docker.com/search?q=rasp type=image

arm 和 arm64,https://hub.docker.com/search?q= type=image architecture=arm%2Carm64

arm64v8,https://hub.docker.com/u/arm64v8

https://hub.docker.com/u/arm32v7

https://hub.docker.com/u/armhf

以上内含大量 arm 镜像,不同的镜像表示不同的容器镜像:

https://hub.docker.com/r/izone/arm/tags/

上面是单独的镜像,以不同的 tag 表示不同的服务镜像。

3.2 制作自己的容器镜像

可以使用同一个 Dockerfile 编译出多种架构下可用的容器镜像。

可以使用 os/arch 作为特殊标签或者使用自定义的标签来标明是 arm 架构下的镜像。

注意:

需要将镜像通过 tag 标记为 arm 指令集,使用时也需指明 tag。

如果下载了与硬件环境不对应的镜像,容器运行将会报错,但不会指明错误的原因。

关于基于树莓派 raspberry pi 如何部署 Kubernetes 集群就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计2512字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)