售前咨询400-838-0503

云服务器Linux系统如何配置Kubernetes?

发布:2025-05-24 05:09

云服务器Linux系统配置Kubernetes全攻略

在云计算时代,Kubernetes已成为容器编排的事实标准。本文将详细介绍如何在云服务器Linux系统上配置Kubernetes集群,帮助开发者快速搭建高可用的容器管理平台。

一、准备工作

在开始配置Kubernetes之前,需要确保云服务器满足以下条件:

  • 至少2台Linux服务器(推荐Ubuntu 20.04或CentOS 8)
  • 每台服务器2GB以上内存
  • 双核CPU及以上配置
  • SSH访问权限
  • 服务器间内网互通

二、环境配置

1. 设置主机名

# Master节点
hostnamectl set-hostname k8s-master

# Worker节点
hostnamectl set-hostname k8s-worker1

2. 关闭Swap

swapoff -a
sed -i '/ swap / s/^/#/' /etc/fstab

3. 配置防火墙

# 关闭防火墙(CentOS)
systemctl stop firewalld
systemctl disable firewalld

# 或者开放必要端口(Ubuntu)
ufw allow 6443/tcp
ufw allow 2379-2380/tcp

三、安装Docker

# Ubuntu
apt-get update
apt-get install -y docker.io
systemctl enable docker
systemctl start docker

# CentOS
yum install -y docker
systemctl enable docker
systemctl start docker

四、安装Kubernetes组件

1. 添加Kubernetes源

# Ubuntu
apt-get update && apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
cat </etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
apt-get update

# CentOS
cat < /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF

2. 安装kubeadm、kubelet和kubectl

# Ubuntu
apt-get install -y kubelet kubeadm kubectl
apt-mark hold kubelet kubeadm kubectl

# CentOS
yum install -y kubelet kubeadm kubectl
systemctl enable kubelet
systemctl start kubelet

五、初始化Master节点

kubeadm init --pod-network-cidr=10.244.0.0/16

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

记录下输出的join命令,用于添加Worker节点。

六、安装网络插件

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

七、加入Worker节点

在Worker节点上执行Master节点初始化时输出的join命令:

kubeadm join :6443 --token  --discovery-token-ca-cert-hash sha256:

八、验证集群状态

kubectl get nodes
kubectl get pods --all-namespaces

当所有节点状态显示为"Ready",表示集群配置成功。

九、常见问题解决

  • 节点NotReady:检查网络插件是否安装正确
  • 镜像拉取失败:配置国内镜像源或手动拉取镜像
  • kubelet启动失败:检查cgroup驱动是否与Docker一致

通过以上步骤,您已在云服务器Linux系统上成功配置了Kubernetes集群。建议在生产环境中考虑使用更高级的网络方案和存储方案,并配置适当的监控和日志系统,以确保集群的稳定运行。

按文档操作后还是不行,把机器编号、出问题的时间点和现象截图一起提工单,能少来回一轮。

提交工单