README.md 1.9 KB

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 脚本