在Debian上安装Kubernetes(K8s)时,有一些关键的安装限制和注意事项需要考虑,以确保集群的稳定性和安全性。以下是一些主要的限制和步骤:
安装限制
-
硬件要求:
- 至少需要2核CPU。
- 至少需要2GB RAM。
- 至少需要20GB的硬盘空间。
-
操作系统要求:
- 推荐使用最新版的Debian操作系统,例如Debian 12(Bookworm)。
-
网络配置:
- 每个节点需要配置静态IP地址。
- 在所有节点的
/etc/hosts
文件中添加其他节点的IP地址和主机名。
-
关闭交换分区(swap):
-
防火墙配置:
- 允许必要的端口,例如kubelet使用的6443端口。
-
软件包安装:
- 需要安装Docker作为容器运行时。
- 需要安装containerd作为容器运行时。
- 需要安装kubelet、kubeadm和kubectl。
安装步骤
-
设置主机名和更新hosts文件:
- 在每个节点上设置主机名,并在
/etc/hosts
文件中添加节点IP和主机名的映射。
-
关闭交换分区:
- 运行
sudo swapoff -a
关闭交换分区。
- 编辑
/etc/fstab
文件,注释掉swap对应的行。
-
配置防火墙:
- 如果Debian系统已启用操作系统防火墙,允许以下端口:
- 主控节点:6443/tcp, 2379/tcp, 2380/tcp, 10250/tcp, 10251/tcp, 10252/tcp, 10255/tcp
- 工作节点:10250/tcp, 30000:32767/tcp
- 重载防火墙配置:
sudo ufw reload
。
-
安装containerd运行时:
- 在所有节点上安装containerd运行时,并配置必要的内核参数。
-
添加Kubernetes apt仓库:
- 添加Kubernetes官方的apt仓库,以便安装Kubernetes软件包。
-
安装Kubernetes工具:
- 在所有节点上安装kubelet、kubeadm和kubectl,并固定版本以避免自动更新。
-
初始化Kubernetes集群:
- 在主节点上使用
kubeadm init
命令初始化集群,并记录下加入工作节点的命令。
-
加入工作节点:
- 在每个工作节点上使用
kubeadm join
命令加入集群。
-
配置网络插件(可选):
- 安装并配置网络插件,例如Calico,以便Kubernetes集群中的Pod能够相互通信。