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 小时前
深度解析 Jev 模型:如何快速做结构化决策
云原生
刘婉晴10 小时前
【K8S安全】4. 节点到云
安全·容器·kubernetes
阿里云云原生11 小时前
AI 中台的构建和智能体调优实践
云原生·agent
做运维的阿瑞12 小时前
Terraform 模块版本管理:约束语法、源类型与升级策略
云原生·云计算·terraform
时间售卖铺12 小时前
MySQL 表的约束
运维·数据库·mysql·云原生
做运维的阿瑞13 小时前
Terraform 模块组合:VPC、安全组、EC2 的输出传递与依赖编排
云原生·云计算·terraform
孔令飞13 小时前
【OneX】OneX AI 工具安装、配置及功能介绍
云原生·go·ai编程
lisanmengmeng13 小时前
监控Kubernetes集群的GPU资源(三)
linux·容器·kubernetes
java_logo13 小时前
Docker 部署青龙面板:轻松搭建定时任务管理平台
运维·docker·容器·定时任务·青龙面板·轩辕镜像·qinglong