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

相关推荐
项目題供诗3 小时前
黑马k8s(四)
云原生·容器·kubernetes
杰克逊的日记3 小时前
大项目k8s集群有多大规模,多少节点,有多少pod
云原生·容器·kubernetes
long_21453 小时前
k8s中ingress-nginx介绍
kubernetes·ingress-nginx
luck_me53 小时前
k8s v1.26 实战csi-nfs 部署
linux·docker·云原生·容器·kubernetes
邪恶的贝利亚4 小时前
《Docker 入门与进阶:架构剖析、隔离原理及安装实操》
docker·容器·架构
一直学下去4 小时前
K8S中构建双架构镜像-从零到成功
容器·kubernetes·cicd·多架构
知其_所以然4 小时前
使用docker安装clickhouse集群
clickhouse·docker·容器
hnlucky5 小时前
《基于 Kubernetes 的 WordPress 高可用部署实践:从 MariaDB 到 Nginx 反向代理》
运维·数据库·nginx·云原生·容器·kubernetes·mariadb
_板栗_6 小时前
livenessProbe 和 readinessProbe 最佳实践
云原生·容器·kubernetes