在本文中,我们将深入探讨如何使用香橙派4和树莓派4B构建一个Kubernetes(K8S)集群,并重点介绍K8S安装脚本的实践过程。这些脚本,包括`k8s-setup.sh`、`k8s-init.sh`和`k8s-grant-user.sh`,是构建K8S集群的关键组件,它们帮助自动化安装和配置流程,使得在这些小型硬件设备上部署K8S变得更加便捷。 Kubernetes,简称K8S,是一个开源的容器编排系统,用于自动化容器化的应用程序部署、扩展和管理。它允许用户通过定义服务、部署和其他资源来管理跨多个主机的容器化应用。K8S集群由多个节点组成,每个节点可以是一个服务器或像香橙派4和树莓派4B这样的小型计算设备。 我们来看`k8s-setup.sh`脚本。这个脚本通常用于初始化和配置K8S集群的基础环境。它可能包含以下步骤: 1. 更新系统:确保所有软件包是最新的,以避免潜在的安全问题。 2. 安装依赖:安装K8S集群所需的依赖软件,如Docker、CNI(Container Network Interface)、etcd等。 3. 配置网络:设置网络插件,如Flannel或Calico,以实现节点间通信。 4. 准备Kubernetes二进制文件:下载并安装K8S的最新稳定版本或者特定版本的二进制文件。 5. 初始化Master节点:在主节点上运行`kubeadm init`命令,创建必要的K8S组件和服务。 6. 配置Worker节点:将Master节点的配置信息传递给Worker节点,使它们加入集群。 接下来是`k8s-init.sh`脚本,它可能专注于启动和验证K8S集群。此脚本可能包括: 1. 启动Kubernetes服务:启动apiserver、controller-manager、scheduler等关键服务。 2. 部署核心DNS:K8S的核心服务之一,用于内部DNS解析。 3. 设置网络策略:根据需求配置网络策略,如允许或阻止特定的网络流量。 4. 验证集群状态:使用`kubectl`工具检查节点状态,确保所有组件都正常运行。 `k8s-grant-user.sh`脚本用于授权用户访问和操作K8S集群。这通常包括: 1. 创建ServiceAccount:为用户或应用创建服务账户,以便安全地与K8S API交互。 2. 创建Role和RoleBinding:定义用户的权限范围,例如只读权限或管理员权限。 3. 配置kubeconfig:生成或更新用户的kubeconfig文件,该文件包含了访问集群所需的认证信息。 总结起来,使用香橙派4和树莓派4B构建K8S集群是一种经济且有趣的实践,通过上述脚本的执行,可以有效地在这些低成本硬件上部署和管理容器化应用。这种方法不仅适用于学习和实验,也可以用于轻量级的生产环境,如家庭实验室或边缘计算场景。然而,需要注意的是,树莓派和香橙派的性能有限,对于大规模的生产环境,可能需要更强大的硬件支持。
2025-07-07 13:14:06 2KB kubernetes
1
利用ansible ,将arm 部署在k8s集群时候,所用到的二进制文件,部署方式参见本人博客,部署时候需要将文件解压,更改为bin,放在ansible文件夹中后,利用添加的方式将arm部署添加在x86架构的集群中,目前暂不支持arm作为主节点。 此外, arm测试为某型号的64位架构arm处理器,因arm处理器存在兼容性问题,可能有不兼容现象
2025-06-18 14:08:26 165.14MB k8s arm
1
【kubernetes】环境准备及K8S安装【最新完整版】 1.kubeadm初始化k8s集群镜像包 2.通过ctr -n=k8s.io images import k8s_1.25.0.tar.gz
2025-04-14 13:42:42 305.58MB kubernetes
1
k8s网络flannel镜像包 flannel_v0.23.0.tar flannel-cni-plugin_v1.2.0.tar 可直接使用docker load 到本地环境
2025-04-10 16:39:16 29.56MB 网络 docker flannel k8s
1
以容器方式初始化 flannel的所有依赖,配置,包含: 1. rancher/mirrored-flannelcni-flannel:v0.20.0 2. rancher/mirrored-flannelcni-flannel-cni-plugin:v1.1.0 3. kube-flannel.yml 使用方法,见博客: http://t.csdn.cn/umQHY
2024-09-18 09:14:24 22.93MB k8s flannel
1
k8s部署Flannel网络(解决k8s安装flannel无法拉取镜像 ImagePullBackOff 问题)
2024-09-18 08:54:51 60.34MB docker 文档资料 运维 k8s
1
Kubernetes v1.18.4 kubeadm安装全部组件。 images/ ├── load.sh ├── node │   ├── cni-v3.15.1.tar.gz │   ├── coredns-1.6.7.tar.gz │   ├── kube-proxy-v1.18.4.tar.gz │   ├── node-v3.15.1.tar.gz │   ├── pause-3.2.tar.gz │   └── pod2daemon-flexvol-v3.15.1.tar.gz ├── save.sh └── server ├── cni-v3.15.1.tar.gz ├── coredns-1.6.7.tar.gz ├── etcd-3.4.3-0.tar.gz ├── kube-apiserver-v1.18.4.tar.gz ├── kube-controller-manager-v1.18.4.tar.gz ├── kube-controllers-v3.15.1.tar.gz ├── kube-proxy-v1.18.4.tar.gz ├── kube-scheduler-v1.18.4.tar.gz ├── node-v3.15.1.tar.gz ├── pause-3.2.tar.gz └── pod2daemon-flexvol-v3.15.1.tar.gz
2024-09-04 10:23:13 73.95MB k8s kubernetes v1.18.4
1
部署k8s1.28集群所需的ETCD离线镜像包,已经为大家准备好了,大家有需要可以自行下载,下载后部署的方法,在主页k8s专栏的文章中有详细说明,如果大家有疑问可以查看文章,或者私信我,我会尽快回复,谢谢大家 资源完整名称:k8s-1-28-etcd.tar.gz registry.aliyuncs.com/google_containers/etcd:3.5.9-0
2024-07-09 18:05:15 281.79MB etcd
1
部署k8s1.28集群所需离线镜像包,已经为大家准备好了,大家有需要可以自行下载,下载后部署的方法,在主页k8s专栏的文章中有详细说明,如果大家有疑问可以查看文章,或者私信我,我会尽快回复,谢谢大家 registry.aliyuncs.com/google_containers/kube-apiserver:v1.28.2 registry.aliyuncs.com/google_containers/kube-scheduler:v1.28.2 registry.aliyuncs.com/google_containers/kube-controller-manager:v1.28.2 registry.aliyuncs.com/google_containers/kube-proxy:v1.28.2 registry.aliyuncs.com/google_containers/coredns:v1.10.1 registry.aliyuncs.com/google_containers/pause:3.9 registry.aliyuncs.com/google_containe
2024-07-09 17:29:34 725.08MB k8s 离线镜像 kubernetes apiserver
1
TongWeb-k8s部署运行TongWeb嵌入版应用--示例文件
2024-06-19 15:32:36 18.82MB
1