主要观点:作者作为嵌入式 C++ 开发者,决定探索 Kubernetes,用 3 个 Orange Pi Zero 3 搭建了一个基本的 Kubernetes 集群,包括安装控制平面和工作节点、设置 Dashboard UI、测试部署和故障转移等,还介绍了相关的操作步骤和配置细节。
关键信息:
- 使用 Orange Pi Zero 3 搭建集群,采用 PoE 开关减少线缆混乱,通过 PXE 启动并使用 NFS 根文件系统。
- 安装 k3s 时提供额外参数使用原生快照器等,安装过程及输出。
- 分别设置控制平面节点和工作节点,安装脚本及相关配置。
- 在管理员工作站安装 kubectl 并配置,通过 Helm 安装 Dashboard UI 及相关操作。
- 测试部署应用,创建服务暴露端口,可通过内部网络访问。
- 在 Kubernetes 仪表盘和命令行中查看节点和 Pod 状态,测试故障转移过程及相关原理。
重要细节:
- 安装 k3s 时的命令及参数,如
curl -sfL https://get.k3s.io | sh -s - --snapshotter=native --etcd-arg election-timeout=5000 --etcd-arg heartbeat-interval=1000
。 - 安装 Dashboard UI 的命令
helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/
及后续操作。 - 创建管理员用户和角色的 YAML 文件及相关命令
kubectl create -f dashboard.admin-user.yml -f dashboard.admin-user-role.yml
。 - 测试部署应用的 YAML 文件内容及相关命令,如
kubectl create deployment hello-node --image=registry.k8s.io/e2e-test-images/agnhost:2.39 -- /agnhost netexec --http-port=8080
。 - 测试故障转移时在 Kubernetes 仪表盘和命令行中的输出及相关信息。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。