devops
后台使用的 layui 模板来自这个项目 master 分支的 a806fd0a 版本
依赖
- os:Linux
- jdk:11
- maven:3.9
- mysql:5.7
架构
devops 项目模块:
- agent
> 代理节点, 用于管理机器
- common
> 公共依赖
- deployer
> 用来部署 mgr 和 agent 的工具
- logstash
> 日志收集器
- mgr
> 管理节点
devops-mgr 和 devops-agent 之间的关系如下图所示:

agent 和 mgr 之间使用 websocket 进行通信
每台被管理的机器上都需要且只能一个部署 agent 实例
在 agent 的配置文件中指定 mgr 的地址
agent 使用 Linux 的 /etc/machine-id 文件中字符串作为 machineId 在 mgr 中唯一地标识一台机器
如果 VirtualBox 中使用的 vdisk 是通过 clonehd 得到, 那么多台 VM 中 /etc/machine-id 文件的内容是相同的, 此时需要在 VM 中执行 devops/zzz/reset_machine_id.sh 脚本来重置 machine-id
只能部署一个 mgr 实例
初始化 MySQL
- 1.devops/zzz/schema.sql 文件是系统的初始数据
- 2.执行 devops/zzz/init_schema.sh 脚本可完成数据库的创建和初始化
> 需要自行指定脚本中的 host, username, password, db 等变量值
- 3.然后可以开始构建和部署系统
构建
构建 jar 包流程:
- 1.使用 cd 命令切换到 devops/zzz 目录
- 2.执行 build_jar.sh 脚本
- 3.构建完成后, 生成的 jar 包会存放在 devops/mgr/bin 和 devops/agent/bin 目录中
部署
部署 devops-mgr 流程:
- 1.修改 devops/mgr/bin/devopsmgr.yml 文件中的配置
> mysql 配置
>
> app.baseDir 指定 mgr 产生的数据存放的位置
- 2.使用 cd 命令切换到 devops/mgr/bin 目录
- 3.执行 start.sh 脚本
部署 devops-agent 流程:
- 1.修改 devops/agent/bin/devopsagent.json 文件中的配置
- 2.使用 cd 命令切换到 devops/agent/bin 目录
- 3.执行 start.sh 脚本