随着容器化技术的普及,Kubernetes(简称 k8s)已成为企业级架构的首选。本文将为您详细介绍如何在 Ubuntu 22.04 系统上搭建最新的 k8s 1.30.1 集群。本教程包含从基础环境配置到 Dashboard 部署 以及 Ingress-Nginx 配置 的全过程,旨在帮助小白也能顺利完成生产级环境的部署。
在开始之前,我们需要确保系统环境符合 Kubernetes 的运行要求。以下操作需在所有节点(Master 和 Worker)执行。
# 在 Master 节点执行hostnamectl set-hostname k8s-master# 在 Worker 节点执行hostnamectl set-hostname k8s-node1
Kubernetes 要求必须关闭 Swap,否则 kubelet 将无法启动。
sudo swapoff -asudo sed -i '/swap/s/^/#/' /etc/fstab
cat <<EOF | sudo tee /etc/modules-load.d/k8s.confoverlaybr_netfilterEOFsudo modprobe overlaysudo modprobe br_netfilter# 设置必要的 sysctl 参数cat <<EOF | sudo tee /etc/sysctl.d/k8s.confnet.bridge.bridge-nf-call-iptables = 1net.bridge.bridge-nf-call-ip6tables = 1net.ipv4.ip_forward = 1EOFsudo sysctl --system
从 k8s 1.24 开始,Docker shim 已被移除,我们使用 Containerd 作为运行时。
sudo apt updatesudo apt install -y containerd# 初始化默认配置sudo mkdir -p /etc/containerdcontainerd config default | sudo tee /etc/containerd/config.toml# 修改 SystemdCgroup 为 truesudo sed -i 's/SystemdCgroup = false/SystemdCgroup = true/g' /etc/containerd/config.tomlsudo systemctl restart containerd
这是 k8s 1.30.1 安装教程 的核心步骤。我们需要添加国内源以加速下载。
sudo apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl# 添加阿里云 GPG 密钥和软件源curl -fsSL https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.30/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpgecho "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.30/deb/ /" | sudo tee /etc/apt/sources.list.d/kubernetes.listsudo apt updatesudo apt install -y kubelet kubeadm kubectlsudo apt-mark hold kubelet kubeadm kubectl
在 Master 节点上执行初始化命令。注意替换为您自己的 Master IP。
kubeadm init \ --apiserver-advertise-address=192.168.1.10 \ --image-repository registry.aliyuncs.com/google_containers \ --kubernetes-version v1.30.1 \ --service-cidr=10.96.0.0/12 \ --pod-network-cidr=10.244.0.0/16
初始化成功后,按照提示执行以下命令配置环境变量:
mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/config
没有网络插件,Pod 之间无法通信,节点状态会保持在 NotReady。
kubectl apply -f https://github.com/flannel-io/flannel/blob/master/Documentation/kube-flannel.yml
为了可视化管理集群,我们需要进行 Kubernetes Dashboard 部署。
# 安装 Dashboard 2.7.0kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml
由于默认是 ClusterIP 模式,我们可以修改 Service 类型为 NodePort 以便外部访问,或者使用管理员 Token 登录。
Ingress-Nginx 配置 是实现外部访问内部服务的关键组件。
# 安装 Ingress-Nginx 1.10.1kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.10.1/deploy/static/provider/cloud/deploy.yaml
安装完成后,您可以通过创建 Ingress 资源来定义域名的转发规则,实现灵活的负载均衡。
通过本文的步骤,您已经成功在 Ubuntu 22.04 搭建 k8s 1.30.1 环境,并完成了管理界面与流量入口的配置。Kubernetes 的学习曲线虽然陡峭,但掌握了基础搭建后,后续的微服务治理将变得游刃有余。
本文由主机测评网于2026-04-01发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/20260432774.html