k8s自动化安装脚本(二进制)的操作步骤

本站所有内容来自互联网收集,仅供学习和交流,请勿用于商业用途。如有侵权、不妥之处,请第一时间联系我们删除!Q群:迪思分享

免费资源网 – https://freexyz.cn/
目录介绍部署结构操作步骤环境准备部署包下载总结

介绍

通过ansible脚本+shell实现自动化部署k8s基础集群(v1.25.0)

部署结构

k8s自动化安装脚本(二进制)的操作步骤插图

1. 通过二进制部署包镜像安装k8s集群、目录etcd节点只支持1-3个节点、最多三个etcd节点

2. 因k8s版本相对较新、需要升级内核来支持后台程序、当前版本只支持Cento7,内核版本(5.19.4-1.el7.elrepo.x86_64)

3. 采用k8s二进制安装,通过system进行管理,采用本地yum仓库,版本是:1.25.0

4. 部署节点安装docker的yum源是基于Centos7.5/7.6,版本是:19.03.14

5. 部署节点安装ansible时,使用离线安装,版本:2.9.27

操作步骤

环境准备

作用IP地址操作系统配置k8s-master01192.168.1.13CentOS7最低配置2C2Gansible192.168.1.140CentOS7最低配置1C1G node节点可以填写多个,根据实际情况确认,但是不能超出单master节点的限制master节点至少是三个少一个都不是高可用版本高可用部署时需要为keepalived提前确认好vip的信息

备注

单独找一台机器用于部署ansible服务,升级内核时需要重启服务器部署节点部署重启,否则会导致执行报错但是需要确保机器资源充足,且相关的端口不会冲突(38081【yum】、38082【registry】)相关的网络关系需要提前确认

解压部署包

#上传部署包(xshell) yum -y install lrzsz rz install_k8s_binary_20220905.tar.gz #解压 tar -xvf install_k8s_binary_20220905.tar.gz -C /opt

修改host文件

#部署机器,初始脚本、安装包镜像 [deploy_server] 192.168.1.11 ansible_user=”root” ansible_ssh_pass=”1″ ansible_ssh_port=22 hostname=”Ansible” #apiserver、controller、scheduler、通过下面的install_kubelet_enable来确认是否在master节点上安装kubelet、proxy服务 [kubernetes_master] 192.168.1.12 ansible_user=”root” ansible_ssh_pass=”1″ ansible_ssh_port=22 hostname=”k8s-master01″ #kubelet、proxy,可任意添加节点数,只要不超出k8s本身的限制即可 [kubernetes_node] #192.168.1.13 ansible_user=”root” ansible_ssh_pass=”1″ ansible_ssh_port=22 hostname=”k8s-node01″ #单节点或者三节点其他的暂时不支持,通过脚本解析主机信息,目前只支持1-3个节点 [etcd] 192.168.1.12 ansible_user=”root” ansible_ssh_pass=”1″ ansible_ssh_port=22 ETCD_NAME=”k8s-master01″ #不填写,则不安装镜像仓库、目前尚未完成(待完善) [docker_repositry] #192.168.1.136 ansible_user=”root” ansible_ssh_pass=”1″ ansible_ssh_port=22 hostname=”k8s-node01″ #双节点 [haproxy_keepalived] #192.168.1.12 ansible_user=”root” ansible_ssh_pass=”1″ ansible_ssh_port=22 hostname=”k8s-haproxy” #192.168.1.12 ansible_user=”root” ansible_ssh_pass=”1″ ansible_ssh_port=22 hostname=”k8s-haproxy” [nodes:children] kubernetes_master kubernetes_node haproxy_keepalived etcd [all:vars] #interface=”ens33″ #部署机器的网卡名称 master_vip=”192.168.1.120″ #高可用 #布尔值 true or false install_kubelet_enable=”true” #master节点是否安装kubelet、kube-proxy network_enable=”false” #联网状态下,加载网络yum仓库 Basic_enable=”true” #安装基础软件包 clear_cert_data=”false” #清理上一次生成的证书及清理cfssl的安装包 #k8s 组件服务 dashboard_enable=”false” #安装dashboard服务 prometheus_enable=”false” #安装Prometheus服务,尚未完成 ingress_enable=”false” #安装ingress服务,尚未完成

初始化环境

[root@registry]# cd /opt/install_k8s_binary [root@registry install_k8s_binary]# sh Run.sh 1) 初始化环境(ansible)) 2) 安装k8s集群(v1.25.0)(二进制) —————————————————————————- 请输入对应的数字编号:1 请输入部署机的地址(192.168.1.11): #部署机的地址,通过脚本获取的地址,确认无误后直接回车即可

执行结果

k8s自动化安装脚本(二进制)的操作步骤插图1

安装docker服务安装ansible服务,修改ansible.cfg配置准备离线yum仓库挂载点是:部署包的下的yum目录准备离线registry仓库,相关挂载点是:/var/images/

安装k8s集群

登录部署机器上执行Run.sh脚本

执行结果如下:

k8s自动化安装脚本(二进制)的操作步骤插图2

登录master的节点

k8s自动化安装脚本(二进制)的操作步骤插图3

因本地虚拟机限制,目前使用单节点测试部署,一主一从的也测试可行高可用版本尚未测试,虚拟机测试电脑容易死机
免费资源网 – https://freexyz.cn/


© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
点赞6 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容