debian

K8S部署在Debian上的最佳实践

小樊
35
2025-03-17 04:23:16
栏目: 智能运维
Debian服务器限时活动,0元免费领! 查看>>

在Debian上部署Kubernetes(K8S)集群的最佳实践涉及多个方面,包括系统准备、Kubernetes组件安装、网络配置、高可用性设置等。以下是一个详细的步骤指南:

系统准备

  1. 更新系统

    sudo apt update && sudo apt upgrade -y
    
  2. 关闭Swap

    sudo swapoff -a && sudo sed -i 's/.*swap.*/#&/' /etc/fstab
    
  3. 配置内核参数: 编辑 /etc/sysctl.conf 文件,添加或修改以下行:

    net.ipv4.ip_forward=1
    net.bridge.bridge-nf-call-iptables=1
    

    应用配置:

    sudo sysctl -p
    
  4. 修改主机名

    sudo hostnamectl set-hostname k8smaster
    

    编辑 /etc/hosts 文件,确保主机名与IP地址对应。

  5. 关闭防火墙

    sudo systemctl stop firewalld
    sudo systemctl disable firewalld
    
  6. 安装Docker: 添加Docker官方GPG密钥:

    curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
    

    配置Docker源:

    echo "deb [archamd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list
    

    安装Docker:

    sudo apt update
    sudo apt install -y docker-ce docker-ce-cli containerd.io
    

    启动并启用Docker服务:

    sudo systemctl start docker
    sudo systemctl enable docker
    

Kubernetes组件安装

  1. 添加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 -y kubelet kubeadm kubectl
    

    禁用自动升级:

    sudo apt-mark hold kubelet kubeadm kubectl
    
  2. 初始化Kubernetes集群: 在主节点上执行:

    sudo kubeadm init --pod-network-cidr=192.168.0.0/16 --service-cidr=10.96.0.0/12
    

    配置kubectl:

    mkdir -p $HOME/.kube
    sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    sudo chown $(id -u):$(id -g) $HOME/.kube/config
    

高可用性设置(可选)

  1. 安装kube-proxy

    sudo apt install -y kube-proxy
    
  2. 配置Calico网络插件

    kubectl apply -f https://docs.projectcalico.org/manifests/tigera-operator.yaml
    kubectl apply -f https://docs.projectcalico.org/manifests/custom-resources.yaml
    

验证部署

  1. 查看集群状态

    kubectl cluster-info
    kubectl get nodes
    
  2. 部署前端应用(例如Nginx): 构建Nginx镜像并部署:

    docker build -t nginx:latest .
    kubectl create deployment nginx --image=nginx
    kubectl expose deployment nginx --type=LoadBalancer --port=80
    
  3. 配置Ingress(可选):

    kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.1/deploy/static/provider/cloud/deploy.yaml
    

通过以上步骤,你可以在Debian上成功部署一个高可用的Kubernetes集群,并部署前端应用。请根据实际需求调整配置,例如网络插件和集群规模。更多详细信息和高级配置可以参考Kubernetes官方文档和社区资源。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

相关推荐:Debian上K8S部署有哪些最佳实践

0
看了该问题的人还看了