1. 概述编辑
1.1 版本说明
工具版本 | 功能变动 |
---|---|
FineKey 1.0 | - |
1.2 应用场景
容器化部署工具 FineKey 内置了最新版本的 docker 容器,包含 FR/BI 业务工程的镜像、各类组件镜像、Tomcat 镜像的镜像仓库。
但随着时间推移,为满足客户需求,产品会不断进行版本迭代,容器化部署的应用和组件也需要进行迭代。
本文将简单介绍 FineKey 如何升级容器化部署的应用和组件。
2. 升级准备编辑
2.1 确认节点联通
确认待升级节点与FineKey所在节点是否可以联通,若目标节点与FineKey不连通,则无法使用本文升级方法。
2.2 确认剩余磁盘空间
确认待升级节点剩余磁盘空间是否大于200GB,如不足200GB,则无法使用本文升级方法。
2.3 确认待升级节点是否容器化部署
确认待升级节点是否是由FineKey部署的工程,非FineKey部署的工程无法使用本文升级方法。
2.4 确认是否需要升级
确认待升级节点是否存在需要升级的容器,如不存在需要升级的容器,则无法使用本文升级方法。
2.5 注意事项
本文升级方法,单次只支持升级一套环境。
例如用户有五个工程,其中四个工程为FineKey部署的一套集群,另一个工程为FineKey部署的单节点工程。
那么需要升级两次,一次升级四个工程的集群,一次升级单节点工程。
3. 上传FineKey编辑
3.1 获取最新工具
「运维平台」目前仍处于内测阶段。
如需试用运维平台,请填写表单申请:运维平台申请表
或微信扫描下方二维码,进入运维平台产品试用报名入口。
3.2 上传最新工具
获得工具包后,需要将它上传到 Linux,上传文件的方法请自行查阅相关资料。
本文示例是将工具包上传到了 CentOS 7.6.1810 的 /home/test 路径下,如下图所示:
3.3 解压工具
先使用 cd 命令进入工具包所在文件夹下,再键入如下命令进行解压:
tar zxvf finekey-fr-release11.0.tar.gz
3.4 文件说明
解压后的文件如下表所示:
文件夹/文件 | 文件说明 | |
---|---|---|
finekey/bin | 运行finekey的可执行文件 | |
finekey/conf | finekey.yaml | 新部署工程应用所需的配置文件 |
finekey.migrate.yaml | 迁移配置文件,修改了配置,运行finekey时则优先读取该文件 | |
finekey/resources | 资源文件 |
4. 配置yaml文件编辑
yaml 文件指的是工具解压目录下 conf 文件夹里的 finekey.yaml,该文件是控制后面整个升级流程的。
1)替换yaml文件
从原finekey部署工具finekey/conf目录下获取finekey.yaml文件,替换到新finekey部署工具finekey/conf目录下。
2)修改yaml文件
yaml文件中需要新增以下待升级节点的ip、用户名、密码,其他均由finekey自动识别。
update:
nodes:
- ip: localhost #机器ip
port: 22 #机器ssh端口
user: #节点ssh用户
password: #节点ssh密码
# - ip: 192.168.101.145
# port: 22
# user: xxx
# password: xxx
5. 启动升级编辑
用户需要使用语句启动升级。
5.1 升级语句
升级内容 | 启动命令 |
---|---|
全部升级 | finekey update |
升级单类组件 | finekey update -c 组件1,组件2 注1:组件间用逗号隔开,不能空格。 注2:组件不区分大小写,例如升级Nginx,可以写finekey update -c nginx |
升级所有运维工具 | finekey update -c opsall |
升级所有工程依赖组件 | finekey update -c projectall |
只拉取镜像不更新 | finekey update -p |
直接拉取镜像并更新 | finekey update --pull |
只更新指定的容器名称带有tag的组件 (适用于升级某一套工程的容器) | finekey update -t tag |
5.2 升级流程
步骤 | 内容 |
---|---|
检查升级前提 | FineKey工具会优先检查第二章的升级前提是否达成。 如不达成升级前提,则直接结束升级步骤。 如达成升级前提,则进行下一步。 |
检查组件版本 | FineKey工具会自动检测待升级组件和FineKey内镜像版本是否一致。 如版本一致,则没有升级必要,直接结束升级步骤。 如版本不一致,则进行下一步。 |
自动备份组件 | 1)FineKey工具会自动备份需要升级的组件挂载的数据 2)FineKey工具会自动备份finekey部署的配置库 注:升级指定组件时,可能会关闭/备份关联组件。 比如升级fr时,fr使用了mysql外接库,那么就会关闭并备份mysql |
替换升级镜像 | FineKey工具会自动更换镜像进行升级 |
重启工程 | FineKey工具会自动重启组件 若重启成功,则升级成功 若重启失败,则自动回滚,取消升级 |