Web服务端
整体架构采用前后端分离形式,后端使用Golang实现,参考Gin框架
1、后端服务
1.1、服务端架构
- 代码可参考Github开源项目:https://github.com/pbrong/hrms
1.2、服务地址
http://x.x.x.x:8000/api/v1/meta/info
http://x.x.x.x:8000/api/v1/logicDisk
http://x.x.x.x:8000/api/v1/pciDevice
http://x.x.x.x:8000/api/v1/macAddress
http://x.x.x.x:8000/api/v1/product
http:// x.x.x.x:8000/api/v1/loginInfo
-
后端接口使用Token鉴权,shell脚本、web访问使用不同Token名称
-
为防止数据误删,Shell脚本、Web访问调用Delete接口,默认返回调用成功,但并不做删除操作,如需删除可由管理员操作(删除前需做备份,按照clone日期命名)
2、代码架构
2.1、API目录
该目录功能为启动Http服务,暴露服务地址,并对各接口实现get、post、put、delete等功能
2.2、config目录
该目录功能为web后端服务配置,包括数据库地址、端口、密码、后端服务接口等信息
2.3、model目录
该目录为实体层,功能为数据库结构解析,记录MySQL数据库表
2.4、其他目录
- notify目录对接钉钉,实现告警检测及告警通知功能
- service为中间服务层
- shell目录则对应相关脚本,如CPU、内存等相关信息采集脚本、告警信息模版等
- ssh目录为ansible和expect进行批量服务器ssh登录,实现批量命令执行等
- util为工具包目录,提供时间戳转换、结构体差异对比等必要功能
- README.md 项目说明
- go.mod 为go依赖列表文件
- go.sum 为 go依赖校验文件
- sql 为所用到的sql文件
3、接口功能测试
- 按照sql文件建立更新数据库,数据库表必须含有create_at、update_at、deleted_at三个字段
- 更新conf配置文件
- sh build.sh 执行脚本编译可执行文件执行 或 直接启动main.go运行
3.1、GET
3.2、POST
3.3、PUT
3.4、DELETE
End
公众号平台更改了推送规则,如果不想错过内容,请点击 “在看” 和 “赞”,感谢支持!