开源容器编排平台 Kubernetes 彻底改变了容器化应用程序的管理和可扩展性。在 Debian 12 “Bookworm” 上安装 Kubernetes 可以让您利用这项尖端技术的强大功能和灵活性。
在 Debian 12 bookworm 上安装 Kubernetes
第 1 步。在我们安装任何软件之前,通过在终端中运行以下命令来确保您的系统是最新的非常重要:apt
sudo apt update sudo apt install curl gpg gnupg2 software-properties-common apt-transport-https lsb-release ca-certificates
此命令将刷新存储库,允许您安装最新版本的软件包。
第 2 步。安装 Docker。
Kubernetes 依赖 Docker 作为容器运行时。让我们通过执行以下命令来安装 Docker:
sudo apt install docker.io sudo systemctl enable --now docker
第 3 步。在 Debian 12 上安装 Kubernetes。
现在我们的环境已经准备好了,让我们继续在 Debian 12 “Bookworm” 上安装 Kubernetes。 我们需要添加官方的 Kubernetes 存储库。执行以下命令:
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list sudo apt update
接下来,使用以下命令安装 Kubernetes 软件包:
sudo apt install kubelet kubeadm kubectl sudo apt-mark hold kubelet kubeadm kubectl
第 4 步。配置群集。
现在,让我们通过设置主节点和工作节点来配置 Kubernetes 集群。
- A. 主节点设置
在所需的主节点上,通过执行以下命令初始化集群:
sudo kubeadm init
记下成功初始化时显示的 join 命令,因为我们稍后将需要它将工作节点加入集群。
- B. 工作节点设置
要将工作节点添加到集群,请在每个工作节点上执行从主节点初始化中获得的 join 命令:
sudo kubeadm join <master-node-ip>:<master-node-port> --token <token> --discovery-token-ca-cert-hash <hash>
第5步。验证安装。
完成安装过程后,必须验证 Kubernetes 是否已正确安装。
- 集群验证
在主节点上,运行以下命令以检查集群组件的状态:
kubectl cluster-info
-
- 节点验证
要确保群集中的所有节点都正常运行,请执行:
kubectl get nodes
第 6 步。设置 Kubernetes 集群
现在我们已经安装了 Kubernetes,让我们通过初始化主节点并加入工作节点来设置集群。
- 初始化 Kubernetes 主节点
在主节点上,使用以下命令初始化集群:
sudo kubeadm init --apiserver-advertise-address=<master-node-ip>
- 将工作线程节点加入群集
在每个工作节点上,使用主节点初始化期间获取的 join 命令将它们加入集群:
sudo kubeadm join <master-node-ip>:<master-node-port> --token <token> --discovery-token-ca-cert-hash <hash>
要确保集群设置正确,请在主节点上运行以下命令:
kubectl get nodes
步骤 7.部署示例应用程序
为了验证 Kubernetes 的成功安装和功能,让我们在集群上部署一个示例应用程序。
- 选择示例应用程序
选择适合您需求的示例应用程序。例如,我们将部署一个基本的 Nginx Web 服务器。
- 编写部署 YAML 文件
创建一个名为的 YAML 文件并定义部署规范,如下所示:nginx-deployment.yaml
apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment spec: replicas: 1 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:latest ports: - containerPort: 80
-
- 部署应用程序
通过执行以下命令部署应用程序:
kubectl apply -f nginx-deployment.yaml
使用以下命令检查已部署应用程序的状态:
kubectl get pods
感谢您使用本教程在 Debian 12 Bookworm 上安装 Kubernetes。如需其他帮助或有用信息,我们建议您查看 Kubernetes 官方网站。