k8s之k8s集群部署

一、kubernetes基础环境搭建

1.安装虚拟机

2. 基础环境配置

2.1 关闭防火墙 更改主机名

#系统更新

sudo dnf update -y

关闭防火墙

sudo systemctl stop firewalld

sudo systemctl disable firewalld

临时关闭 SELinux

sudo setenforce 0

永久关闭 SELinux

sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

临时禁用 Swap

sudo swapoff -a

永久禁用 Swap

sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
#为每个节点设置唯一的主机名,例在主节点上执行:

sudo hostnamectl set-hostname kube-master

#编辑 /etc/hosts 文件,添加所有节点的 IP 地址和主机名映射

vim /etc/hosts

2.2 加载内核模块并配置 sysctl 参数

加载内核模块

sudo modprobe br_netfilter

配置 sysctl 参数

cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf

net.bridge.bridge-nf-call-ip6tables = 1

net.bridge.bridge-nf-call-iptables = 1

net.ipv4.ip_forward = 1

EOF

使配置生效

sudo sysctl --system

#验证是否成功

lsmod | grep br_netfilter

3. 安装 Docker

3.1 添加 Docker 软件源

root@localhost \~# sudo dnf config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

添加仓库自:http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3.2 安装 Docker

root@localhost \~# sudo dnf install -y docker-ce docker-ce-cli containerd.io

3.3 配置 Docker Cgroup Driver

创建/etc/docker/daemon.json 文件:

sudo tee /etc/docker/daemon.json <<EOF

{

"exec-opts": "native.cgroupdriver=systemd",

"log-driver": "json-file",

"log-opts": {

"max-size": "100m"

},

"storage-driver": "overlay2"

}

EOF

#设置开机自启动

sudo systemctl start docker

sudo systemctl enable docker

4. 安装 Kubernetes 组件

4.1 添加 Kubernetes 软件源

cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo

kubernetes

name=Kubernetes

baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/

enabled=1

gpgcheck=1

repo_gpgcheck=1

gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

EOF

#清除 DNF 缓存并重新生成元数据:

sudo dnf clean all

sudo dnf makecache

4.2 安装 kubelet、kubeadm 和 kubectl

sudo dnf install -y kubelet kubeadm kubectl --disableexcludes=kubernetes

4.3 启动并设置 kubelet 开机自启

sudo systemctl start kubelet

sudo systemctl enable kubelet

二 在部署节点安装ansible及准备ssh免密登陆

三 部署节点编排k8s安装

四 k8s集群部署

五 k8s集群扩容

相关推荐
万里侯8 小时前
GitOps 2026年演进趋势:从配置管理到环境即代码的范式转移及Pull vs Push模型的再思考
微服务·容器·k8s
acd120098 小时前
一次线上OOM排查实录:从jmap到代码重构,我踩过的坑全在这了
容器·重构·kubernetes
易番番ERP9 小时前
以销定采模式下,ERP如何帮助贸易企业管住订单真实利润
大数据·低代码·微服务·云原生·成本核算·易番番erp·以销定采
吕海洋10 小时前
目前可用的docker源2026.08
运维·docker·容器
人间凡尔赛11 小时前
2026 后端架构三驾马车:Wasm 容器上 K8s、存算分离与 AI 原生
后端·云原生·架构
gsls20080812 小时前
Penpot Docker 部署与 MCP 服务配置文档
运维·docker·容器·原型·penpot
天蓝不会忘记0212 小时前
k8s集群部署的方法原理
云原生·容器·kubernetes
红球yyds14 小时前
用anisble搭建k8s集群及原理
云原生·容器·kubernetes
Thneonl17 小时前
让恢复动作敢按下去:dry-run、审批门、自动回滚与 mutable twin
rust·kubernetes
艾伦_耶格宇17 小时前
【DOCKER容器实战】-2MySQL
运维·docker·容器