更新时间:2024-09-25 18:24:16

proton-cli precheck 安装前环境检查

  • 检查操作系统发行版,若为NO PASS则不支持该操作系统,若为PASS则支持该操作系统,具体支持的操作系统,请查看《Proton Runtime 2.18.x 兼容性列表》

    检查操作系统发行版.png

  • 检查内核,若为NO PASS则不支持该内核,若为PASS则支持该内核

    检查内核.png

  • 检查内存,推荐大于等于64GB,若为WARN则小于64GB,若为PASS则大于等于64GB

    检查内存.png

  • 检查CPU核数,推荐大于等于32GB,若为WARN则小于32GB,若为PASS则大于等于32GB

    检查CPU核数.png

  • 检查磁盘/目录可用空间,推荐大于等于300GB,若为WARN则小于300GB,若为PASS则大于等于300GB

    检查磁盘目录可用空间.png

  • 检查DNS,文件/etc/resolv.conf不能存在search XXX,若存在则NO PASS,若不存在则PASS

    检查DNS.png

  • 检查/etc/hosts 必须存在127.0.0.1 的别名,若该文件中有别名则PASS,没有则NO PASS

    检查etc、hosts .png

  • 检查SELinux状态,SELinux状态必须为disabled,SUSE操作系统跳过该项检查。若SELinux状态为Disabled则PASS,若为NO PASS,则需要去文件/etc/selinux/config中修改状态为disabled,修改保存后重启节点

    检查SELinux状态.png

  • 检查swap,必须是off,若为off状态则PASS,若为on状态则NO PASS,需要编辑/etc/fstab注释swap一行并保存

    检查swap.png

  • 检查默认网关,必须存在默认网关,若没有默认网关为NO PASS,若有为PASS

    检查默认网关.png

  • 检查端口占用,下图所示的端口必须没有占用,若没被占用为PASS,若被占用为NO PASS

    检查端口占用.png

  • 检查Chronyd状态,若chronyd状态为running则PASS;若chronyd检查为NO PASS,可通过命令systemctl status chronyd查看状态,若状态为关闭,执行systemctl start chronyd开启,若显示没有chronyd则需要安装proton依赖,安装完成后执行systemctl start chronyd开启

    检查Chronyd状态.png

  • 检查CPU速度,推荐小于等于3s,若为WARN则大于3s,若为PASS则小于等于3s

    检查CPU速度.png

  • 检查IO速度,测试环境推荐20MB/s~100MB/s,生产环境环境推荐>=100MB/s,大于等于100MB/s则为PASS,小于20MB/s则为WARN

    检查IO速度.png

  • 检查时间,节点时间和ntp服务器时间误差在10s内,若小于10s,则为PASS,若大于10s,则为NO PASS,需要更新时间

    检查时间.png

  • 检查ssh配置,节点能够ssh到自己执行ls命令,若可以执行成功则为PASS,若执行失败则NO PASS

    检查ssh配置.png

proton-cli check 安装后环境检查

  • 检查kubernetes证书是否过期,若没有过期状态为OK,若低于30天或者已过期则状态为Warn

    检查kubernetes证书是否过期.png

  • 检查节点状态,若节点状态都为ready则为OK,若有一个节点not ready则为Warn

    检查节点状态.png

  • 检查kube-system命名空间下的pod状态,若pod状态均为Running且status为Ready则为OK,若存在一个pod状态异常或status不为ready则为Warn

    检查kube-system命名空间下的pod状态.png

  • 检查etcd member状态,若所有节点均在线则为OK,若存在一个节点离线则为Warn

    检查etcd member状态.png

  • 检查etcd是否超过配额 2G,若所有节点均未超过则为OK,若超过1.8G或有节点离线则为Warn

    检查etcd是否超过配额 2G.png

  • 检查endpoint raft index 是否一致,若基本同步则为OK,若不同步或有节点离线则为Warn

    检查endpoint raft index 是否一致.png

  • 检查节点时间,若节点时间误差在3s以内则为OK,若节点时间误差大于3s则为Error

    检查节点时间.png

  • 检查ip_forward转发是否开启,若所有节点均开启则为OK,若存在节点未开启则为Error

    检查ip_forward转发是否开启.png

  • 检查/var/log/messages中是否存在oom日志,若不存在则为OK,若存在则为Warn

    检查messages中是否存在oom日志.png

  • 检查文件/etc/resolv.conf是否存在search XXX,若所有节点均不存在则为OK,若有节点存在则为Error

    检查文件resolv.conf是否存在search XXX.png

  • 检查节点是否都配置了DNS,若所有节点均配置DNS则为OK,若有节点未配置则为Error

    检查节点是否都配置了DNS.png

  • 检查根目录的空间,若未超过80%则为OK,若超过80%则为Warn

    检查根目录的空间.png

  • 检查mariadb的pod状态,若pod状态均为running且status为ready则为OK,若存在pod状态或者status异常则为Error

    检查mariadb的pod状态.png

  • 检查mariadb的galera 缓存,若节点间信息基本同步则为OK,若节点间信息差距过大则为Error

    检查mariadb的galera 缓存.png

  • 检查mariadb的galera核心文件,若不存在核心文件则为OK,若存在核心文件则为Error

    检查mariadb的galera核心文件.png

  • 检查数据目录空间使用率是否超过 80%,若未超过则为OK,若超过则为Warn

    检查数据目录空间使用率是否超过 80%.png

proton-cli apply 安装/更新配置

安装或者更新依赖配置:proton-cli apply -f <配置文件路径>

参数说明: -f conf.yaml 即配置文件在当前路径;-f /path/conf.yaml 即配置文件不在当前路径时,需要指定配置文件路径

​ -l debug 可输出debug日志

proton-cli get 获取配置

获取默认配置模板(默认使用内置组件):proton-cli get template

获取默认配置模板(使用内置组件):proton-cli get template --type internal

获取默认配置模板(使用外置组件):proton-cli get template --type external

获取已有配置信息:proton-cli get conf

proton-cli images 管理镜像

清除镜像(默认保留三个版本的镜像):proton-cli images delete

注意:清除镜像命令只支持proton-cr仓库,会删除本地镜像和仓库镜像,只删除通用tag镜像,不是所有镜像支持删除。

若要保留的版本数自定义,提供参数-n

proton-cli package 包管理

推送目录下镜像文件到镜像仓库 ,推送目录下应用部署包到上层应用部署管理服务

proton-cli package push --package /path/to/directory

注意:推送目录下应用部署包到上层应用部署管理服务时,使用的命名空间为非默认命名空间(默认命名空间为anyshare),即指定参数 -n 命名空间。

备注:

  1. 镜像格式为skopeo打包后的tar文件;
  2. 上层应用部署包到部署管理服务;

该工具原理为穷尽以上两种格式解析方式判断文件类型,并根据类型进行上传。

为了减少重复上传的额外开销。对于部署应用包的重复上传会触发警告。

对于上传成功的文件,会将文件路径记录在指定工作目录的 .upload.txt文件中, 如果有需要可自行从中移出。

过程中出现解析失败的文件(即错误格式文件),会触发报错,但不会终止,并且在程序结束时将会再次统一打印错误文件。

如果存在上传失败会立即停止程序, 并打印报告。

proton-cli server 启动初始化向导

启动初始化向导界面,初始化平台:proton-cli server

备注:端口号 (default "8888")