k8s v1.18.0 二进制安装部署

k8s v1.18.0 二进制安装部署

首页模拟经营我的世界国际服1.18.0.02更新时间:2024-04-29

k8s v1.18.0 二进制安装部署

一:基础资源准备

1.CentOS Linux release 7.7.1908 (Core)

2.服务器规划

IP 主机名(Hostname) 角色(Role) 组件(Component)

192.168.10.10 k1 Master kube-apiserver,kube-controller-manager,kube-scheduler,etcd,(kubectl),docker,flannel

192.168.10.11 k2 Node kubelet,kube-proxy,docker,flannel,etcd

192.168.10.12 k3 Node kubelet,kube-proxy,docker,flannel,etcd

3.软件版本

docker 版本 19.03.5

k8s版本 1.18.0

etcd版本 v3.3.18

flannel v0.11.0

SSL 工具 最新版

软件包查看step1

4.节点软件包拷贝

cd /root

scp -r * root@192.168.10.12:/root

scp -r * root@192.168.10.13:/root

二:基础环境配置

1.配置固定IP

配置固定IP,修改对应IP信息

sh -x set_ip.sh

2.确保各机器MAC地址及UUID唯一

ip link or ifconfig -a

cat /sys/class/dmi/id/product_uuid

3.环境配置脚本

根据信息进行修改ip,hostname,user pwd

sh -x set_env.sh

三:软件安装

1.docker 安装

可直接使用rpm包安装

需先删除旧版本

yum remove docker \

docker-client \

docker-client-latest \

docker-common \

docker-latest \

docker-latest-logrotate \

docker-logrotate \

docker-selinux \

docker-engine-selinux \

docker-engine>&/dev/null

yum list docker-ce --showduplicates|grep "^doc"|sort -r

rpm -ivh docker-ce-18.09.5-3.el7.x86_64.rpm

配置服务,启动及检测状态

systemctl enable docker && systemctl start docker && systemctl status docker

2.部署ETCD集群

a.配置CA证书,服务请求串,在master上执行一次即可,其他各节点共享

根据信息进行修改ip,hostname,user pwd

#执行脚本

sh -x master_config_ca_etcd.sh

b.启动etcd服务 (启动时互相等待,需要3个节点同时启动最终成功)

部署脚本,需要在etctd 各个节点上执行脚本

①需要3个节点构造集群,修改节点名称 ETCD_NAME

②需要修改网卡标识 ens33

③需要修改节点IP ETCD01 ETCD02 ETCD03

④需要上传etcd文件 etcd-v3.3.18

⑤需要拷贝主节点上的 /etc/etcd/ssl/ server.pem server-key.pem ca.pem文件

#执行安装(3个节点)

sh -x install_etcd.sh

#如果有报错,检查 ETCD_NAME="etcd-01" 是否修改正确

#检测etcd是否正常 根据信息进行修改ip,hostname

sh show_etcd_status.sh

3.部署Flannel 集群网络

由于Flannel需要使用etcd存储自身的一个子网信息,所以要保证能成功连接Etcd,写入预定义子网段。写入的Pod网段${CLUSTER_CIDR}必须是/16段地址,必须与kube-controller-manager的–-cluster-cidr参数值一致。一般情况下,在每一个Node节点都需要进行配置

#执行脚本

sh -x install_flannel.sh

确保docker0 和flannel.1 同属一个网段

ip addr |grep -E "docker0|flannel.1"|grep inet

4.创建CA证书及部署服务

a. kube-apiserver和kube-proxy 的CA证书

apisvr 请求节点IP地址: 192.168.10.10 192.168.10.11 (负载均衡时多IP)

#执行脚本 master 节点

sh -x master_config_ca_kube_api_proxy.sh

b.配置kube-api 服务

多节点配置时,token要保持一致性

#执行脚本 master节点上

sh -x master_install_kube_api.sh

c.配置 kube-scheduler 服务

#执行脚本 master节点上

sh -x master_install_kube_schedule.sh

d.配置 kube-controller 服务

#执行脚本 master 节点

sh -x master_install_kube_controller.sh

e.创建bootstrap和kube-proxy的kubeconfig文件(为node节点准备)

Master apiserver启用TLS认证后,Node节点kubelet组件想要加入集群,必须使用CA签发的有效证书才能与apiserver通信,当Node节点很多时,签署证书是一件很繁琐的事情,因此有了TLS Bootstrapping机制,kubelet会以一个低权限用户自动向apiserver申请证书,kubelet的证书由apiserver动态签署

Master节点 创建bootstrap.kubeconfig和kube-proxy.kubeconfig

#执行脚本 master 节点

sh -x master_config_kubeconfig.sh

f.节点上配置并启动kube-proxy和kubelet服务

#执行脚本 各node上

sh -x node_install_proxy_kubelet.sh

5.授信Node节点

master 上执行

检查状态

kubectl get csr

#执行脚本 master节点上

sh -x master_approve_node.sh

6.查看节点状态

kubectl get nodes

kubectl get cs

7.检测版本

kubectl version

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved