京东云服务器部署Kubernetes集群的完整指南
结论
在京东云服务器上部署Kubernetes集群可以通过京东云Kubernetes服务(JKS)快速实现,也可以手动部署以满足定制化需求。推荐使用京东云原生Kubernetes服务(JKS)简化部署流程,但手动部署适合需要深度定制的场景。
部署方案选择
1. 使用京东云Kubernetes服务(JKS)
京东云提供了托管的Kubernetes服务(JKS),可一键创建集群,适合快速上云场景:
- 优势:自动管理Master节点、内置监控和日志、支持弹性伸缩。
- 适用场景:企业级生产环境、无运维团队的中小企业。
核心步骤:
- 登录京东云控制台,进入Kubernetes服务(JKS)。
- 点击创建集群,选择节点规格、网络配置、Kubernetes版本。
- 配置Worker节点(ECS实例)数量和存储选项。
- 确认并完成创建,约10-15分钟集群即可就绪。
2. 手动部署Kubernetes集群
如果需要完全控制集群配置,可以手动部署,推荐使用kubeadm工具。
环境准备
- 京东云ECS实例:至少2台(1 Master + 1 Worker),建议配置:
- Master:2核4GB以上,Ubuntu 20.04/CentOS 7+。
- Worker:根据业务需求选择规格。
- 网络要求:
- 确保ECS实例在同一VPC内,并开放6443(API Server)、2379-2380(etcd)、10250(kubelet)等端口。
安装依赖
在所有节点执行:
# 禁用Swap
sudo swapoff -a
sudo sed -i '/ swap / s/^/#/' /etc/fstab
# 安装Docker(或Containerd)
sudo apt-get update && sudo apt-get install -y docker.io
sudo systemctl enable docker && sudo systemctl start docker
# 安装kubeadm, kubelet, kubectl
sudo apt-get update && sudo apt-get install -y apt-transport-https 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
- 执行成功后,按提示配置
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):
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
加入Worker节点
在Master节点获取加入命令:
kubeadm token create --print-join-command
在Worker节点执行输出的命令,格式类似:
sudo kubeadm join <Master-IP>:6443 --token <token> --discovery-token-ca-cert-hash <hash>
验证集群
kubectl get nodes # 查看节点状态
kubectl get pods -A # 检查核心组件运行情况
关键点:确保所有节点状态为Ready,且coredns等Pod正常运行。
优化建议
- 启用京东云负载均衡:为
Service类型配置LoadBalancer,自动创建京东云CLB。 - 持久化存储:使用京东云云硬盘(Cloud Disk)作为
PersistentVolume。 - 监控与日志:集成京东云监控服务或Prometheus+Grafana。
总结
- 推荐使用京东云JKS服务,省去运维成本,适合生产环境。
- 手动部署适合定制化需求,但需自行管理Master节点高可用和升级。
- 关键点:确保网络互通、安全组规则正确、节点资源充足。
秒懂云