温馨提示×

K8s在Debian上的部署案例有哪些

小樊
49
2025-06-17 23:15:19
栏目: 智能运维

在Debian上部署Kubernetes(K8s)集群是一个常见的需求,尤其是在需要高可用性和稳定性的生产环境中。以下是一个详细的步骤指南,帮助你在Debian系统上部署Kubernetes集群。

部署步骤

1. 环境准备

  • 设置主机名和更新hosts文件:在每个节点上使用hostnamectl命令设置主机名,并在/etc/hosts文件中添加节点之间的相互解析信息。
  • 关闭交换分区:为了确保Kubelet顺利运行,建议关闭交换分区。
    sudo swapoff -a
    sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
    
  • 配置防火墙:允许必要的端口,例如Kubernetes API服务器的端口6443。
    sudo ufw allow 6443/tcp
    sudo ufw enable
    

2. 安装基础工具

  • 安装Docker:在所有节点上安装Docker。
    sudo apt update
    sudo apt install -y docker.io
    sudo systemctl enable docker
    sudo systemctl start docker
    
  • 安装containerd:在所有节点上安装containerd。
    sudo apt install -y apt-transport-https ca-certificates curl gpg
    curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
    echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list
    sudo apt update
    sudo apt install -y containerd
    sudo mkdir -p /etc/containerd
    sudo tar -xvf /usr/share/containerd/config.toml -C /etc/containerd
    sudo systemctl enable --now containerd
    sudo systemctl restart containerd
    

3. 配置Kubernetes

  • 添加Kubernetes源:在所有节点上添加Kubernetes的apt源。
    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
    sudo apt install -y kubelet kubeadm kubectl
    sudo apt-mark hold kubelet kubeadm kubectl
    
  • 初始化Master节点:在Master节点上初始化Kubernetes集群。
    sudo kubeadm init --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12
    
  • 加入Worker节点:在Worker节点上加入集群。
    sudo kubeadm join <Master-IP>:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>
    

4. 配置网络插件

  • 安装Calico:使用Calico作为网络插件。
    kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
    

5. 验证安装

  • 验证集群状态:在主节点上运行以下命令以检查集群组件的状态。
    kubectl cluster-info
    kubectl get nodes
    

参考资源

以上步骤涵盖了在Debian系统上配置Kubernetes环境的基本流程。请根据实际需求和环境调整具体配置。

0