在 CentOS 7 上使用 kubeadm 安装 Kubernetes 1.27安装指导

环境准备

更新系统并安装依赖包
bash 复制代码
sudo yum update -y
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
设置 Docker 镜像源(如果使用 Docker)
bash 复制代码
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum makecache fast
sudo yum install -y docker-ce docker-ce-cli containerd.io
systemctl start docker
systemctl enable docker
关闭防火墙和SELinux(生产环境中请根据实际情况调整安全策略)
bash 复制代码
sudo systemctl stop firewalld
sudo systemctl disable firewalld
sudo setenforce 0
sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
添加 Kubernetes 的 YUM 源
bash 复制代码
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-\$basearch
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
sudo yum makecache fast
安装 kubeadm、kubectl 和 kubelet
bash 复制代码
sudo yum install -y kubelet-1.27.0 kubeadm-1.27.0 kubectl-1.27.0
sudo systemctl enable kubelet
配置kubelet开机启动时从kubeadm获取配置
bash 复制代码
sudo systemctl daemon-reload
sudo systemctl restart kubelet

初始化 Master 节点

确保网络配置正确,并且主机名解析没有问题。然后初始化 master 节点:

bash 复制代码
sudo kubeadm init --kubernetes-version=v1.27.0 \
    --pod-network-cidr=10.244.0.0/16 \
    [其他可选参数如apiserver-advertise-address等]

# 如果需要使用特定的镜像仓库:
# sudo kubeadm init --kubernetes-version=v1.27.0 --image-repository=<你的镜像仓库> ...

初始化完成后,会输出一些用于配置集群和管理工具的命令,请按照提示执行 kubectl 配置以及加入 worker 节点所需的命令。

部署 Pod 网络插件

例如,部署 Calico 网络插件:

bash 复制代码
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml

等待 Calico 组件成功运行后,检查 Pod 状态和节点状态以确认集群是否正常:

bash 复制代码
kubectl get pods --all-namespaces
kubectl get nodes

加入 Worker 节点

在每个工作节点上执行以下命令(从主节点初始化输出中获得)来将其加入到集群:

bash 复制代码
# 在worker节点上执行
sudo kubeadm join <主节点IP>:<端口> --token <令牌> --discovery-token-ca-cert-hash <哈希值>

以上步骤提供了一个基本的安装流程,但请注意,在实际操作中应参照官方文档并根据具体情况进行调整。同时,务必替换 <主节点IP><端口><令牌><哈希值> 为实际值。

相关推荐
小刘爱喇石( ˝ᗢ̈˝ )28 分钟前
玛卡巴卡的k8s知识点问答题(六)
云原生·容器·kubernetes
rider18931 分钟前
【1】搭建k8s集群系列(二进制部署)之系统初始化
云原生·容器·kubernetes
小刘爱喇石( ˝ᗢ̈˝ )2 小时前
玛卡巴卡的k8s知识点问答题(七)
云原生·容器·kubernetes
小哈里4 小时前
【运维】云计算的发展历程,云原生时代的运维理念&工具技术栈,高可用系统的云运维 —— 以K8S集群调度算法与命令为例
运维·云原生·kubernetes·云计算·架构设计
{⌐■_■}4 小时前
【Kubernetes】如何使用 kubeadm 搭建 Kubernetes 集群?还有哪些部署工具?
云原生·容器·kubernetes
云上艺旅6 小时前
K8S学习之基础六十九:Rancher创建svc资源
学习·云原生·容器·kubernetes·rancher
可观测性用观测云20 小时前
Kubernetes APIServer 可观测最佳实践
kubernetes
碣石潇湘无限路1 天前
【云原生】Kubernetes CEL 速查表
容器·贪心算法·kubernetes
企鹅侠客1 天前
Prometheus operator怎么添加targets和告警规则
运维·云原生·kubernetes·prometheus·pod
Leo Han1 天前
k8s常用命令(持续更新中)
docker·容器·kubernetes