Centos 7.8 离线安装 K8s 1.23.5(含所有资源下载)

k8s-1.23.5集群离线安装

  1. 安装准备:

1.1 环境准备

OS: Linux CentOS 7.8.2003(Centos7必须>=7.5)

Kubernetes:Kubernetes v1.23.5

Computer:(需要3台)

Master   k8s-master   192.168.6.100

Node1   k8s-node1    192.168. 6.101

Node2   k8s-node2    192.168. 6.102

所有安装包放在 /usr/local/package 下,如未特殊说明,3台机器都要安装。

资料可以在我传上来的资源下载,如果后期需要的人多,我再写个自动化安装脚本。Kubernetesv1.23.5全离线资源安装包-数据集文档类资源-CSDN文库

1.2 镜像准备:

kube-apiserver-v1.23.5.tar

kube-controller-manager-v1.23.5.tar

kube-proxy-v1.23.5.tar

kube-scheduler-v1.23.5.tar

pause-3.6.tar

coredns-v1.8.6.tar

etcd-3.5.1-0.tar

1.3 安装包准备

Docker

containerd.io-1.3.7-3.1.el7.x86_64.rpm

container-selinux-2.107-3.el7.noarch.rpm

docker-ce-19.03.9-3.el7.x86_64.rpm

docker-ce-cli-19.03.9-3.el7.x86_64.rpm

Kubeadm

conntrack-tools-1.4.4-7.el7.x86_64.rpm

cri-tools-1.23.0-0.x86_64.rpm

kubeadm-1.23.5-0.x86_64.rpm

kubectl-1.23.5-0.x86_64.rpm

kubelet-1.23.5-0.x86_64.rpm

kubernetes-cni-0.8.7-0.x86_64.rpm

libnetfilter_cthelper-1.0.0-11.el7.x86_64.rpm

libnetfilter_cttimeout-1.0.0-7.el7.x86_64.rpm

libnetfilter_queue-1.0.2-2.el7_2.x86_64.rpm

socat-1.7.3.2-2.el7.x86_64.rpm

Kubectl

kubectl-1.23.5-0.x86_64.rpm

Kubelet

kubelet-1.23.5-0.x86_64.rpm

kubernetes-cni-0.8.7-0.x86_64.rpm

libnetfilter_cttimeout-1.0.0-7.el7.x86_64.rpm

libnetfilter_cthelper-1.0.0-11.el7.x86_64.rpm

conntrack-tools-1.4.4-7.el7.x86_64.rpm

socat-1.7.3.2-2.el7.x86_64.rpm

libnetfilter_queue-1.0.2-2.el7_2.x86_64.rpm

准备完毕会有以下5个文件夹,整套资源可以在这里下载,Kubernetesv1.23.5全离线资源安装包-数据集文档类资源-CSDN文库

分别是docker安装包文件夹,镜像文件夹,kubeadm,ctl,let安装包文件夹

2. 安装DOCKER&LOAD镜像

2.1 安装docker

cd  /usr/local/package/docker-ce

rpm -ivh *.rpm

2.2 启动docker

systemctl start docker

2.3 验证安装

2.4 更新配置

打开/etc/docker/daemon.json文件,没有就新建

加入如下内容

{

  "exec-opts": ["native.cgroupdriver=systemd"]

}

2.5 重启docker

systemctl daemon-reload

systemctl restart docker

2.6 加载镜像

通过load-i方式加载所有8个镜像

docker load -i kube-apiserver-v1.23.5.tar

docker load -i kube-controller-manager-v1.23.5.tar

docker load -i kube-scheduler-v1.23.5.tar

docker load -i kube-proxy-v1.23.5.tar

docker load -i pause-3.6.tar

docker load -i etcd-3.5.1-0.tar

docker load -i coredns-v1.8.6.tar

3. 预先配置

3.1 配置Host

vim /etc/hosts

192.168.6.100 k8s-master

192.168.6.101 k8s-node1

192.168.6.102 k8s-node2

3.2 关闭防火墙

systemctl stop firewalld && systemctl disable firewalld​

3.3 关闭setlinux

vim /etc/selinux/config

SELINUX=enforcing改为SELINUX=disabled

3.4 关闭swap

关闭swap

swapoff -a

sed -i 's/.*swap.*/#&/' /etc/fstab

检查关闭状态

free -g

Swap对应都为0时代表已关闭

3.5 内核网桥调整

配置系统内核参数使流过网桥的流量也进入iptables/netfilter框架中

vim /etc/sysctl.d/k8s.conf

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

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

 net.ipv4.ip_forward = 1

验证

sysctl –system

3.6 添加默认路由

ip route add default via 192.168.6.*(这里*指代各机器ip)

3.7 节点互信

ssh-keygen

ssh-copy-id k8s-node1

ssh-copy-id k8s-node2

3.8 Linux转包设置

临时修改(不推荐)

echo "1" > /proc/sys/net/ipv4/ip_forward

永久修改

vim /etc/rc.d/rc.local

增加此行echo "1" > /proc/sys/net/ipv4/ip_forward

重启网络服务

service network restart

3.9 Linux桥接设置

临时修改(不推荐)

echo "1" > /proc/sys/net/bridge/bridge-nf-call-iptables

永久修改

vim /etc/rc.d/rc.local

增加此行echo "1" > /proc/sys/net/bridge/bridge-nf-call-iptables

重启网络服务

service network restart

3.10 打开iptables转发

Kubernetes采用了iptables的过滤规则,即使iptables已禁用也会执行过滤规则

iptables -P FORWARD ACCEPT

设置启动执行

vim /etc/rc.local  新增:iptables -P FORWARD ACCEPT

DOCKER配置

vim /etc/systemd/system/docker.service

新增ExecStartPost=/sbin/iptables -I FORWARD -s 0.0.0.0/0 -j ACCEPT

重启docker服务

service docker restart

4. 安装kubelet

切到包路径下,直接安装

/usr/local/package/kubelet

rpm -ivh *.rpm

开启服务

systemctl enable kubelet.service

启动服务

systemctl start kubelet.service

5. 安装kubectl

切到包路径下,直接安装

/usr/local/package/kubectl

rpm -ivh kubectl-1.23.5-0.x86_64.rpm

6. 安装kubeadm

切到包路径下,

/usr/local/package/kubeadm

先安装cri-tools

rpm -ivh cri-tools-1.23.0-0.x86_64.rpm

再安装kubeadm

rpm -ivh kubeadm-1.23.5-0.x86_64.rpm   

7. 准备启动

7.1 初始化

使用以下命令在master节点初始化

kubeadm init --apiserver-advertise-address=192.168.6.100 --kubernetes-version=v1.23.5 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=all --v=6

如果没问题,就会提示这个

看到这个说明初始化成功了,将join命令保存好,在node服务器执行

7.2 执行命令

将上面的命令在服务器执行一下

mkdir -p $HOME/.kube

sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

  sudo chown $(id -u):$(id -g) $HOME/.kube/config

8. Node节点安装

Node节点和上面方式一样安装,只需要安装到第5步就行了,不需要安装kubeadm。然后执行join命令加入集群。

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

扶朕去网吧

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值