首页主机资讯Debian系统下Kubernetes安装步骤

Debian系统下Kubernetes安装步骤

时间2025-11-05 08:29:03发布访客分类主机资讯浏览1289
导读:Debian系统下Kubernetes安装步骤 1. 准备工作 系统要求:确保所有节点(Master/Worker)满足以下条件: 至少2核CPU、2GB RAM、20GB磁盘空间; Debian 11/12等稳定版本(建议使用LTS版...

Debian系统下Kubernetes安装步骤

1. 准备工作

  • 系统要求:确保所有节点(Master/Worker)满足以下条件:
    • 至少2核CPU、2GB RAM、20GB磁盘空间;
    • Debian 11/12等稳定版本(建议使用LTS版本);
    • 所有节点之间网络互通(可通过ping命令验证);
    • 配置静态IP地址(避免DHCP导致IP变动);
    • 关闭Swap分区(Kubernetes要求,否则kubelet无法正常启动)。
  • 工具准备:确保所有节点安装curlwgetvim等基础工具(可通过sudo apt install -y curl wget vim安装)。

2. 更新系统

在所有节点上执行以下命令,更新系统包列表并升级已安装的软件包:

sudo apt update &
    &
     sudo apt upgrade -y

3. 安装Docker容器运行时

Kubernetes依赖容器运行时(如Docker)来运行容器,以下是Docker的安装步骤:

  • 添加Docker官方GPG密钥和APT源:
    sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
    curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
    echo "deb [arch=amd64] 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
    
  • 验证Docker是否安装成功:
    sudo docker run hello-world
    

4. 安装Kubernetes组件(kubelet、kubeadm、kubectl)

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
    
  • 更新APT包索引并安装组件:
    sudo apt update
    sudo apt install -y kubelet kubeadm kubectl
    
  • 锁定组件版本(避免自动升级导致兼容性问题):
    sudo apt-mark hold kubelet kubeadm kubectl
    

5. 初始化Master节点

在Master节点上执行以下命令,初始化Kubernetes集群:

sudo kubeadm init \
  --pod-network-cidr=10.244.0.0/16 \  # 指定Pod网络CIDR(与后续网络插件匹配)
  --service-cidr=10.96.0.0/12 \      # 指定Service网络CIDR
  --apiserver-advertise-address=<
    Master-IP>
      # 替换为Master节点的实际IP
  • 初始化完成后,会输出kubeadm join命令(用于Worker节点加入集群),请务必保存该命令。

6. 配置kubectl

kubectl是Kubernetes的命令行工具,需配置其访问集群的权限:

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
  • 验证kubectl是否配置成功:
    kubectl version --client
    

7. 安装网络插件

Kubernetes需要网络插件来实现Pod间的通信,常用插件为Flannel(轻量级、易部署):

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
  • 验证网络插件是否安装成功:
    kubectl get pods -n kube-system
    
    若所有Pod状态均为Running,则说明网络插件安装成功。

8. 加入Worker节点

在Worker节点上执行Master节点初始化时输出的kubeadm join命令(替换为实际的IP、Token和Hash):

sudo kubeadm join <
    Master-IP>
    :6443 \
  --token <
    token>
     \
  --discovery-token-ca-cert-hash sha256:<
    hash>
    
  • 若忘记kubeadm join命令,可在Master节点上重新生成:
    kubeadm token create --print-join-command
    

9. 验证集群状态

在Master节点上执行以下命令,验证集群是否正常运行:

kubectl cluster-info  # 查看集群信息
kubectl get nodes     # 查看节点状态(所有节点应为Ready)
kubectl get pods -A   # 查看所有命名空间的Pod状态(应为Running)

10. 可选:部署测试应用

验证集群功能,部署一个简单的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
  • 获取应用的访问端口:
    kubectl get svc nginx-web-svc
    
  • 在浏览器中访问http://< Master-IP> :< NodePort> ,若看到Nginx欢迎页面,则说明集群工作正常。

注意事项

  • 时间同步:所有节点需安装NTP服务(如chrony),确保时间同步(否则可能导致证书验证失败);
  • 防火墙:若开启防火墙,需允许Kubernetes相关端口(如6443、10250、10255等);
  • 生产环境:建议使用更稳定的网络插件(如Calico)、配置RBAC权限、启用etcd备份等功能。

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


若转载请注明出处: Debian系统下Kubernetes安装步骤
本文地址: https://pptw.com/jishu/742561.html
Debian与Kubernetes的集成方式 Debian如何配置JMeter并发用户数

游客 回复需填写必要信息