开源交流丨一站式大数据平台运维管家ChengYing安装原理剖析
课件获取:关注公众号“数栈研习社”,后台私信 “ChengYing” 获得直播课件
视频回放:点击这里
ChengYing开源项目地址:github 丨 gitee 喜欢我们的项目给我们点个__ STAR!STAR!!STAR!!!(重要的事情说三遍)__
技术交流钉钉 qun:30537511
本期我们带大家回顾一下漫路同学的直播分享《ChengYing安装原理剖析》。
本期内容多为实战演示,欢迎有兴趣的同学去B站配合视频观看,便于理解。
一、ChengYing安装原理
ChengYing安装主要分为下面八个模块的内容,下面为大家介绍一下每个模块主要能做的事情:
1、主机编排
一个组件包里面有很多服务,指定服务安装到哪些主机。
2、冲突校验
根据组件包之间的依赖关系,校验编排结果是否符合部署条件。
3、依赖配置
获取依赖服务的配置信息,注入到自身服务。
(图片为:DTUic依赖DTBase组件包的mysql服务)
4、自定义配置
获取用户自定义的配置,替换组件包内已有的配置:
1)获取自定义配置
2)根据编排信息设置ip
5、卸载老服务
编排记录更新,旧服务需要更换服务器安装,需要先执行卸载操作:
1)停止服务
matrix通过http stopSync接口调用agent-server,sidecar收到如下消息,停止服务。
2)卸载脚本内容
3)卸载服务
4)执行post_undeploy
6、配置解析
根据配置信息,渲染用户的配置文件。
● 解析规则
● 渲染案例
7、安装服务
执行下载组件包的脚本,并下发配置文件:
1)下载解压安装包
(图上为:insgall_agentx.sh内容)
2)下发配置
3)执行post_deploy
4)启动服务
matrix通过http startSyncWithParam接口调用agent-server,sidecar收到如下消息,启动服务。
8、滚动更新
编排记录未变化的主机,执行滚动更新。
二、ChengYing卸载原理
了解完ChengYing安装原理后,我们来为大家分享ChengYing卸载原理:
● 根据依赖关系,先卸载最外层依赖
● 查看服务的状态,看是否需要先停止,然后再卸载服务