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集群扩容

相关推荐
CodeMartain4 小时前
Dify Windows 原生部署(无 Docker、纯本地)
运维·docker·容器
牛奶咖啡135 小时前
k8s容器编排技术实践——使用containerd作为容器运行时部署k8s集群
kubernetes·k8s的安装部署·开启系统的ipvs支持·安装containerd·containerd配置加速器·安装k8s的工具·安装calico网络插件
万里侯6 小时前
云原生数据备份与恢复:保障数据安全的最佳实践
微服务·容器·k8s
llrraa20106 小时前
配置docker国内镜像源
运维·docker·容器
阿里云云原生6 小时前
阿里云 STAROps 全域智能运维平台发布!从“被动救火”到“主动自治”
云原生
2301_780789667 小时前
手游遇到攻击为什么要用SDK游戏盾手游遇到攻击为什么要用 SDK 游戏盾?
安全·web安全·游戏·架构·kubernetes·ddos
35岁程序员的自救之路7 小时前
AiBBS - 面向下一个十年的AI + 云原生社区系统
人工智能·云原生
珂玥c8 小时前
k8s集群ingress碎碎念
云原生·容器·kubernetes
佳杰云星8 小时前
如何给大模型集群选“大脑”?智算调度与管理平台 10 维选型指南(附选型评分表)
人工智能·kubernetes·大模型·云计算·gpu·算力调度·智算中心
比特森林探险记10 小时前
context 在 gRPC / Gin / K8s 中的实战
容器·kubernetes·gin