Linux搭建 Kubernetes(K8S)集群详情教程

当搭建 Kubernetes 集群时,涉及的详细步骤可能较多,以下是详细的 Kubernetes 单节点集群搭建步骤:

步骤 1: 准备工作

确保满足以下基本要求:

  • 一台运行 Ubuntu 18.04 或更高版本的机器。
  • 2 GB 或更多内存。
  • 2 个 CPU 核心或更多。
  • 安装了 Docker。

步骤 2: 安装 Docker

复制代码
bash 复制代码
sudo apt update sudo apt install -y docker.io sudo systemctl start docker sudo systemctl enable docker

步骤 3: 安装 kubeadm、kubelet 和 kubectl

复制代码
bash 复制代码
sudo apt-get update && sudo apt-get install -y apt-transport-https curl sudo curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - sudo echo "deb http://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

步骤 4: 初始化 Master 节点

复制代码
bash 复制代码
sudo kubeadm init --pod-network-cidr=10.244.0.0/16

在初始化完成后,输出会包含一个 kubeadm join 命令。将这个命令保存好,稍后在工作节点上执行。

步骤 5: 设置 kubeconfig

复制代码
bash 复制代码
mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config

步骤 6: 安装网络插件(这里使用 Calico)

复制代码
bash 复制代码
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml

步骤 7: 查看 Master 节点的状态

复制代码
bash 复制代码
kubectl get nodes

确保 Master 节点的状态为 "Ready"。

步骤 8: 加入工作节点

在工作节点上执行之前保存的 kubeadm join 命令。

步骤 9: 验证节点状态

在 Master 节点上运行:

复制代码
bash 复制代码
kubectl get nodes

确保所有节点都处于 "Ready" 状态。

步骤 10: 部署 Kubernetes Dashboard(可选)

复制代码
bash 复制代码
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.3.1/aio/deploy/recommended.yaml

步骤 11: 启动代理并访问 Kubernetes Dashboard(可选)

在 Master 节点上运行:

复制代码
bash 复制代码
kubectl proxy

在浏览器中访问 http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/ 并登录 Kubernetes Dashboard。

这是一个比较详细的 Kubernetes 单节点集群搭建过程,具体的配置和参数可以根据实际需求进行调整。请注意,以上步骤中可能会涉及到网络配置、安全设置等方面的问题,具体情况可能需要根据实际环境进行调整,希望你也能学会K8S的安装,有问题请来二当家的素材网找我哦:https://www.erdangjiade.com

相关推荐
爱吃橘子橙子柚子4 小时前
3CPU性能排查总结(超详细)【Linux性能优化】
运维·cpu
Johny_Zhao6 小时前
OpenClaw中级到高级教程
linux·人工智能·信息安全·kubernetes·云计算·yum源·系统运维·openclaw
Sheffield1 天前
Docker的跨主机服务与其对应的优缺点
linux·网络协议·docker
Sheffield1 天前
Alpine是什么,为什么是Docker首选?
linux·docker·容器
舒一笑2 天前
程序员效率神器:一文掌握 tmux(服务器开发必备工具)
运维·后端·程序员
Johny_Zhao2 天前
centos7安装部署openclaw
linux·人工智能·信息安全·云计算·yum源·系统运维·openclaw
haibindev2 天前
在 Windows+WSL2 上部署 OpenClaw AI员工的实践与踩坑
linux·wsl2·openclaw
NineData2 天前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库
梦想很大很大3 天前
拒绝“盲猜式”调优:在 Go Gin 项目中落地 OpenTelemetry 链路追踪
运维·后端·go