更新时间:2022-05-12 GMT+08:00
分享

自动化部署工具介绍

自动化工具简介

AutoK8SforKunpeng是专门为鲲鹏服务器开发的自动化集群部署的工具,可以支持离线集群部署,支持Windows和Linux多平台运行。支持命令行交互模式部署和一键式自动部署。日志功能可以方便地回溯部署的全过程及失败信息。

自动化K8s部署工具支持多元的部署方式,可以选择组件版本以及工具执行平台。

部署脚本使用python3编写,主机间通信采用SSH方式,意味着脚本执行机可以是Windows系统,Linux系统,可以跟部署机在一起,也可以分开。部署机可以是Linux虚拟机、PC或服务器。

自动化部署脚本目前只支持Kubernetes 1.14.2版本。

自动化部署可用组网

图1 自动化部署工具可用组网

角色

需求

备注

脚本执行环境

可以支持python3,并且支持第三方库paramiko,不限操作系统或执行平台,与部署机网络可达

运行KunpengAutoKube.py的平台,可以使用部署机或其他网络可达需求满足的平台

部署机

Linux系统,与集群网络可达,离线安装包remoteparts.zip已保存在本地,与集群所有主机已建立SSH信任,可以使用虚拟机

如需要在部署机上制作离线安装包,则需要部署机可以访问互联网,与集群主机采用相同架构

K8s管理节点

修改/etc/hosts文件,包含整个集群信息

集群所有主机需统一使用root用户,设置统一的密码

K8s计算节点

工具使用限制

  1. 必须使用python3运行,并需要提前安装SSH库paramiko,详见准备脚本执行环境
  2. 脚本执行平台可以是Windows或Linux,但安装包的压缩文件必须放置在对应部署机的工作目录下。
  3. 集群所有主机的用户名和密码都需保持一致并明文保存在配置文件中。
  4. 文件包传输,需要提前通过ssh-keygen ssh-copy-id建立部署机和被部署机的信任关系。
  5. 需要提前修改集群内的所有主机的/etc/hosts文件,添加集群内各个主机的IP和hostname。
  6. 网络协议目前只支持Flannel模式。
  7. 安装方式为离线安装,各组件版本固定,需要提前通过取包脚本在可以联网的主机上下载。
  8. 目前不支持多master。

离线包下载工具使用说明

使用自动化部署工具时需要Docker和K8s离线安装包用于部署,可以使用提供的remoteparts下载工具进行制作。在一个没有安装过K8s组件且可以访问互联网的TaiShan服务器(CentOS7.6)上即可完成下载安装包,如果部署机可以连通网络,可以直接在部署机上下载。

使用方法:

  1. 在服务器中解压该文件,进入remoteparts文件夹,运行packget.sh脚本,如果服务器没有安装Docker,运行脚本的时候需要带参数install。

    1
    2
    3
    unzip remoteparts.zip
    cd remoteparts
    ./packget.sh install
    
    图2 运行packget.sh脚本

  2. 如果Docker已经安装,执行命令:

    1
    2
    3
    unzip remoteparts.zip
    cd remoteparts
    ./packget.sh
    

  3. 运行完毕以后,退到上一级文件夹,将remoteparts文件夹重新压缩为remoteparts.zip格式。

    1
    zip -r remoteparts.zip remoteparts
    
    图3 压缩remoteparts文件夹

    此时这个remoteparts.zip文件就可以满足自动化部署脚本的要求。

分享:

    相关文档

    相关产品

close