售前咨询400-838-0503

如何在云服务器上安装Kubernetes?

技术文档 2025-05-07 08:55

从零开始:云服务器上安装Kubernetes的完整指南

在当今云原生时代,Kubernetes已成为容器编排的事实标准。本文将手把手教您在云服务器上搭建生产级Kubernetes集群,涵盖主流云平台的最佳实践方案。

🔧 准备工作

在开始安装前,请确保您已准备好:

  • 至少2台云服务器(建议配置:2核CPU/4GB内存起)
  • Ubuntu 20.04/22.04或CentOS 7/8操作系统
  • root权限或sudo权限用户
  • 开放的6443(API Server)、2379-2380(etcd)等端口

🚀 分步安装指南

第一步:环境初始化

# 所有节点执行
sudo swapoff -a
sudo sed -i '/ swap / s/^/#/' /etc/fstab

# 设置主机名(master节点)
sudo hostnamectl set-hostname k8s-master

第二步:安装容器运行时

我们推荐使用containerd:

sudo apt-get update && sudo apt-get install -y containerd
sudo mkdir -p /etc/containerd
containerd config default | sudo tee /etc/containerd/config.toml
sudo systemctl restart containerd

第三步:安装kubeadm工具包

sudo apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl
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-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl

第四步:初始化Master节点

sudo kubeadm init --pod-network-cidr=10.244.0.0/16 \
--apiserver-advertise-address=<您的云服务器内网IP>

成功后会显示加入集群的指令,请妥善保存。

第五步:安装网络插件

推荐使用Flannel:

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

☁️ 主流云平台特别配置

阿里云ECS

需要额外配置:

# 修改kubelet配置
echo 'KUBELET_EXTRA_ARGS="--cloud-provider=external"' | sudo tee /etc/default/kubelet

AWS EC2

需要安装aws-cloud-controller-manager:

kubectl apply -f https://raw.githubusercontent.com/kubernetes/cloud-provider-aws/master/docs/manifests/rbac.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes/cloud-provider-aws/master/docs/manifests/aws-cloud-controller-manager-daemonset.yaml

✅ 验证安装

kubectl get nodes
kubectl get pods --all-namespaces

所有组件状态应为Running,且节点显示Ready。

🔧 常见问题排查

  • 节点NotReady:检查网络插件是否安装成功
  • 镜像拉取失败:配置国内镜像源或使用阿里云镜像仓库
  • API Server不可达:检查安全组和网络ACL设置

🎉 总结

通过本指南,您已成功在云服务器上部署了Kubernetes集群。建议进一步配置:

  1. 安装Ingress Controller(如Nginx Ingress)
  2. 配置持久化存储(如CSI插件)
  3. 设置监控告警(Prometheus+Grafana)

Kubernetes学习曲线陡峭,但掌握后将极大提升您的云原生应用管理能力!

如本公告涉及你的产品,或有不清楚之处,可提交工单确认。

提交工单