
香港服务器购买后如何快速部署 Kubernetes 集群
2025-08-09 16:43
阅读量:38
在购买香港服务器后,快速部署 Kubernetes 集群需要按照以下步骤完成环境准备、安装 Kubernetes 组件以及配置集群。
1. 前期准备
1.1 确认环境
确保您已经购买了符合 Kubernetes 运行要求的香港服务器:
- 操作系统:Ubuntu 20.04+/CentOS 7+/Debian 10+。
- CPU:每台节点至少 2 核。
- 内存:每台节点至少 2GB(建议 4GB+)。
- 存储:至少 20GB 可用磁盘空间。
- 网络:服务器之间可以互相通信(内网或专用网络)。
1.2 规划 Kubernetes 集群
- 主节点(Control Plane):运行 Kubernetes 控制组件(如 API Server、Scheduler)。
- 工作节点(Worker Nodes):运行容器化的应用程序。
- 节点角色规划:
- 1 台主节点 + 2 台工作节点(最小高可用方案:3 台服务器)。
1.3 配置香港服务器的基础环境
-
更新系统软件包
bashsudo apt update && sudo apt upgrade -y # Ubuntu/Debian sudo yum update -y # CentOS
-
设置主机名
- 主节点:
bash
sudo hostnamectl set-hostname master-node
- 工作节点:
bash
sudo hostnamectl set-hostname worker-node1 # 替换为具体节点名
- 主节点:
-
配置
/etc/hosts
在所有节点的/etc/hosts
中添加其他节点的 IP 和主机名:plaintext192.168.1.10 master-node 192.168.1.11 worker-node1 192.168.1.12 worker-node2
-
关闭防火墙和交换分区
- 关闭防火墙(测试环境):
bash
sudo systemctl stop ufw sudo systemctl disable ufw
- 禁用交换分区:
bash
sudo swapoff -a sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
- 关闭防火墙(测试环境):
-
同步时间
- 安装
ntp
或chrony
,确保所有节点的时间同步:bashsudo apt install chrony -y # Ubuntu/Debian sudo yum install chrony -y # CentOS sudo systemctl enable chronyd sudo systemctl start chronyd
- 安装
2. 安装 Kubernetes 和容器运行时
2.1 安装 Docker(容器运行时)
-
卸载旧版本
bashsudo apt remove docker docker-engine docker.io containerd runc -y
-
安装新版本
bashcurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt update sudo apt install docker-ce docker-ce-cli containerd.io -y
-
启动并配置 Docker
bashsudo systemctl enable docker sudo systemctl start docker
-
配置 Docker 使用 systemd
编辑/etc/docker/daemon.json
:json{ "exec-opts": ["native.cgroupdriver=systemd"], "log-driver": "json-file", "log-opts": { "max-size": "100m" }, "storage-driver": "overlay2" }
重启 Docker:
bashsudo systemctl restart docker
2.2 安装 kubeadm、kubelet 和 kubectl
-
添加 Kubernetes 的软件源
bashcurl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list sudo apt update
-
安装 Kubernetes 组件
bashsudo apt install kubeadm kubelet kubectl -y
-
禁止自动更新
bashsudo apt-mark hold kubeadm kubelet kubectl
-
启动并启用 kubelet
bashsudo systemctl enable kubelet sudo systemctl start kubelet
3. 初始化 Kubernetes 集群
3.1 初始化主节点
在主节点上运行以下命令初始化集群:
bash
sudo kubeadm init --pod-network-cidr=192.168.0.0/16
--pod-network-cidr
:为 Pod 分配的网络地址范围。
初始化成功后,输出将包含加入工作节点的 kubeadm join
命令,例如:
plaintext
kubeadm join 192.168.1.10:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>
保存该命令,稍后在工作节点中使用。
3.2 配置 kubectl
在主节点上,为当前用户配置 kubectl
:
bash
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
验证集群状态:
bash
kubectl get nodes
3.3 添加工作节点
在每个工作节点上运行之前保存的 kubeadm join
命令,例如:
bash
sudo kubeadm join 192.168.1.10:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>
成功后,工作节点会加入集群。
4. 配置网络插件
Kubernetes 需要网络插件来管理 Pod 通信。以下以 Calico 为例:
-
在主节点上安装 Calico:
bashkubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
-
验证网络插件状态:
bashkubectl get pods -n kube-system
确保所有网络相关的 Pod 都处于
Running
状态。
5. 验证 Kubernetes 集群
-
查看集群节点状态:
bashkubectl get nodes
所有节点应显示为
Ready
。 -
部署测试 Pod:
bashkubectl run nginx --image=nginx --port=80 kubectl expose pod nginx --type=NodePort --port=80
检查服务是否正常运行:
bashkubectl get pods kubectl get svc
-
使用浏览器或
curl
测试服务:bashcurl http://<NodeIP>:<NodePort>
6. 优化与建议
6.1 启用自动高可用
- 使用多个主节点配置高可用(HA)集群,避免单点故障。
- 配置负载均衡器将流量分发到多个主节点。
6.2 定期更新
- 定期检查并更新 Kubernetes 版本:
bash
sudo apt update && sudo apt upgrade -y
6.3 监控与日志
- 部署 Kubernetes 监控工具(如 Prometheus + Grafana)。
- 查看集群日志:
bash
kubectl logs <pod_name>
6.4 数据持久化
- 为需要存储的应用配置持久卷(Persistent Volume)。
通过以上步骤,您可以快速部署一个高效、稳定的 Kubernetes 集群,并且可以根据业务需要进一步扩展和优化集群。
- Tags:
- 香港服务器购买,香港服务器,购买香港服务器
上一篇:香港服务器购买后如何从MySQL错误日志中排查数据库故障
下一篇:香港VPS服务器操作系统时间同步失败的原因及修复