欢迎光临散文网 会员登陆 & 注册

二进制部署kubernetes 1.27

2023-08-30 10:22 作者:野生代码编写者  | 我要投稿

描述

本文档主要用于安装kubernetes 1.27版本,基于rocky linux 8 安装

操作系统和IP规划

操作系统版本:Ubuntu 22.04.2 TLS

IP规划

192.168.0.241          master01.k8s.com

192.168.0.242         master02.k8s.com

192.168.0.243         node01.k8s.com

192.168.0.244         node02.k8s.com

192.168.0.240         vip

Containerd版本:   Containerd 1.6.23

kubernets版本: 1.27.4

etcd版本:etcd v3.4.26

集群内部IP规划

10.96.0.0/16  kubernetes集群的Service网段

10.244.0.0/16 kubernetes集群中Pod的网段

10.96.0.10  CoreDns的IP地址

软件下载地址

https://github.com/containerd/containerd/releases/download/v1.6.23/cri-containerd-1.6.23-linux-amd64.tar.gz

https://dl.k8s.io/v1.27.4/kubernetes-server-linux-amd64.tar.gz

https://github.com/etcd-io/etcd/releases/download/v3.4.26/etcd-v3.4.26-linux-amd64.tar.gz

系统配置

配置hosts解析(需要在所有机器操作)

配置主机名称

按照hosts解析在在每台机器配置对应的hostname

解决systemd-resolved占用53端口,这个会导致以后coredns无法正常运行,所以需要禁止监听53端口(所有机器都需要操作)

停止防火墙(需要在所有机器操作)

安装需要的包(需要在所有机器执行)

limits配置(需要在所有机器执行)

内核参数配置(需要在所有机器执行)

加载内核模块(需要在所有机器执行)

加载内核模块写入配置文件(需要在所有机器执行)

内核配置生效(需要在所有机器执行)

关闭swap分区(需要在所有机器执行)

时区设置(需要在所有机器执行)

配置Containerd 内核模块永久加载(需要在所有机器执行)

配置完以上重启所有机器

检查模块是否加载成功(需要在所有机器执行)

安装Containerd

下载并且解压Containerd(需要在所有机器执行),下载可以一次然后使用上传到所有服务器

配置文件生成(需要在所有机器配置)

启动Containerd服务(需要在所有机器配置)

ETCD安装部署

下载并且解压(master01、master02、node01节点操作)

由于etcd需要三个节点所以,分别部署在master01、master02、node01这个三个节点,当然也可以选择单独机器部署etcd集群

etcd创建证书配置文件

生成证书

etcd 集群配置文件生成

配置Services文件(需要在所有etcd节点上配置)

启动etcd服务

测试etcd集群状态

高可用服务安装(Keepalived & Haproxy)

软件安装 (master节点)

Keepalived服务配置(master节点配置)

启动服务 (master01和master02启动)

haproxy服务配置(master节点配置)

安装kubernetes

下载并解压kubernetes(所有机器都需要执行), 下载可以一次然后使用上传到所有服务器

证书生成

kube-controller-manager用户配置文件生成

kube-Scheduler用户配置文件生成

集群管理员配置文件生成

生成用于配置servcieAccount和secret的书证

创建集群所需的目录(所有节点都需要创建)

复制证书和配置到其他master节点

api server 服务配置(master节点操作)

启动 api server服务并加入开机启动(master节点操作)

kube-controller-manager 服务配置(master节点操作)

启动kube-controller-manager服务(master节点操作)

kube-Scheduler服务配置(master节点操作)

启动kube-Scheduler服务

配置admin配置文件

检查当前集群状态

tls bootstrap 用户相关权限配置

tls bootstrap 配置,用于node节点自动颁发证书

kubelet 服务配置(所有节点,包含master节点)

kube-proxy服务配置(所有节点,包含master节点)

复制kube-proxy证书和用户配置文件到其他节点 (所有节点)

kube-proxy配置(所有节点)

master节点打上禁止调度污点,防止pod调度到master节点

网络插件安装

网络插件使用calico,模式使用默认的IPIP (master01节点执行即可)

安装CoreDNS

作为集群内部的dns解析

metrics-server安装

metrics-server主要用集群内部监控项搜集,安装后可以使用kubectl top node等命令查看到cpu内存的资源占用

安装DashBoard

测试Pod


二进制部署kubernetes 1.27的评论 (共 条)

分享到微博请遵守国家法律