首页主机资讯Debian上Kubernetes怎么安装

Debian上Kubernetes怎么安装

时间2025-10-04 14:22:04发布访客分类主机资讯浏览1182
导读:Debian系统上安装Kubernetes(K8s)详细步骤 一、准备工作 硬件要求: 至少2核CPU、2GB RAM、20GB硬盘空间(生产环境建议更高配置)。 系统设置: 所有节点(Master/Worker)设置主机名(如m...

Debian系统上安装Kubernetes(K8s)详细步骤

一、准备工作

  1. 硬件要求
    • 至少2核CPU、2GB RAM、20GB硬盘空间(生产环境建议更高配置)。
  2. 系统设置
    • 所有节点(Master/Worker)设置主机名(如master-nodeworker-node1),并更新/etc/hosts文件(将节点IP与主机名映射)。
    • 关闭Swap分区(Kubernetes要求):
      sudo swapoff -a  # 临时关闭
      sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab  # 永久关闭
      
    • 时间同步:安装NTP服务(如sudo apt install ntp),确保所有节点时间一致。
  3. 软件要求
    • 需提前安装Docker(或其他容器运行时,如containerd),用于运行容器。

二、安装Docker

  1. 更新系统包列表:
    sudo apt update &
        &
         sudo apt upgrade -y
    
  2. 安装Docker依赖:
    sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
    
  3. 添加Docker官方GPG密钥:
    curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
    
  4. 设置Docker稳定版仓库:
    echo "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list
    
  5. 安装Docker Engine:
    sudo apt update
    sudo apt install -y docker-ce docker-ce-cli containerd.io
    
  6. 启动Docker并设置开机自启:
    sudo systemctl start docker
    sudo systemctl enable docker
    

三、安装Kubernetes组件(kubelet、kubeadm、kubectl)

  1. 添加Kubernetes官方GPG密钥:
    curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
    
  2. 设置Kubernetes APT仓库:
    echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
    
  3. 安装Kubernetes组件:
    sudo apt update
    sudo apt install -y kubelet kubeadm kubectl
    
  4. 锁定组件版本(避免自动升级):
    sudo apt-mark hold kubelet kubeadm kubectl
    

四、初始化Master节点

  1. 执行初始化命令(指定Pod网络CIDR,如Flannel需10.244.0.0/16):

    sudo kubeadm init --pod-network-cidr=10.244.0.0/16
    
    • 若需指定Kubernetes版本(如1.28.2),可添加--kubernetes-version=v1.28.2参数。
    • 初始化完成后,会输出kubeadm join命令(用于Worker节点加入),请保存该命令。
  2. 配置kubectl(允许当前用户访问集群):

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

五、安装网络插件(以Flannel为例)

Kubernetes需要网络插件实现Pod间通信,常用Flannel:

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

等待插件部署完成(可通过kubectl get pods -n kube-system查看插件状态)。

六、加入Worker节点

在Worker节点上执行Master节点初始化时输出的kubeadm join命令(格式如下):

sudo kubeadm join <
    Master-IP>
    :6443 --token <
    Token>
     --discovery-token-ca-cert-hash sha256:<
    Hash>
    
  • < Master-IP> :Master节点的IP地址。
  • < Token> :初始化Master时生成的临时令牌(有效期24小时,过期需重新生成)。
  • < Hash> :Master节点的CA证书哈希值。

七、验证安装

  1. 检查集群节点状态(在Master节点执行):
    kubectl get nodes
    
    • 若所有节点状态为Ready,则说明安装成功。
  2. 部署示例应用(如Nginx):
    kubectl create deployment nginx-app --image=nginx --replicas=2
    kubectl expose deployment nginx-app --name=nginx-web-svc --type=NodePort --port=80 --target-port=80
    
  3. 测试应用访问(在任意节点执行):
    curl http://<
        Node-IP>
        :<
        NodePort>
        
    
    • < Node-Port> 可通过kubectl get svc nginx-web-svc查看(通常为30000-32767之间的端口)。

注意事项

  • 确保所有节点网络互通(防火墙开放6443端口,用于Kubernetes API通信)。
  • 生产环境中建议使用更稳定的网络插件(如Calico),并配置RBAC、Pod安全策略等安全措施。
  • 定期更新Kubernetes组件(使用apt update & & apt upgrade),修复安全漏洞。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Debian上Kubernetes怎么安装
本文地址: https://pptw.com/jishu/720146.html
Debian下Kubernetes性能如何 Debian MariaDB更新频率如何

游客 回复需填写必要信息