数据管理平台开发实战(1)

发布时间:2024年01月10日

前言

什么是SRE?

SRE即Site Reliability Engineering(网站可靠性工程),是一种源于Google的工作理念和方法。它旨在确保产品和服务的高可用性和可靠性。

  • SRE团队的成员通常是拥有软件开发背景的工程师,他们不仅设计和实施自动化工具和流程,还参与构建、部署和运行大规模复杂系统。SRE需要同时具备运维能力和开发能力

  • 运维方面:之前文章已经介绍过服务器基础 、CPU、内存、硬盘等相关的硬件知识,感兴趣可以去看下历史文章,其他运维实例将在后续文章发布

  • 开发方面:本人之前在某某云厂商用Go开发过数据平台,用于对批量云计算服务器进行全流程信息统计;因此计划更新简化版服务器管理平台开发实战教程,本篇文章会先对该平台进行整体介绍

1、背景需求

  • 针对机房服务器采集操作系统等相关数据,如CPU、内存、PCI设备、登录日志、机器位置等信息,解决故障服务器定位难、服务器信息监控不完善等痛点
  • 实现定时采集、自主上报、落地存储、报表展示、界面可视化curd的全链路流程一体化,构建自动化运维告警监控工具,即服务器数据管理平台

2、整体架构

2.1、架构图

2.2、设计思路

  1. **定时上报:**Shell脚本比Agent更加轻量化,无侵入式实现定时采集、自主上报,对业务几乎无影响,用户侧无感知

  2. 稳定后端:Go-web后端借鉴Gin框架,后台服务更稳定、更轻量

  3. 落地存储:MySQL单库多表进行永久化数据存储

  4. 报表展示:Grafana定制化模版多样数据展示

  5. **可视化curd:**layUI框架搭建前端系统,界面可视化增删改查操作

  6. **钉钉告警:**SQL配置告警规则,定时轮询进行钉钉告警

  7. 文件存储:HTTPD文件服务器稳定上传下载

2.3、选型指南

Gin框架

  • Go开源轻量级Web框架、简单易用

  • 官方文档齐全、社区活跃

  • 支持中间件、路由分组

  • 支持JSON验证、错误分级管理

LayUI

  • 开源模块化前端UI框架、拿来即用

  • 遵循原生态的 HTML/CSS/JavaScript 开发模式

  • 只需面向浏览器本身、无需涉足各类构建工具

  • 文档齐全、示例众多

Postman调试工具

  • 自动化API接口调试工具

  • 模拟HTTP Request如GET、POST 、DELETE等请求

  • 模拟发送文件(图片、TXT等) 等特定接口测试

3、环境准备

3.1、环境参数

Centos7.9
MySQL8.0.20
go1.19.3
Gin
Grafana8.3.3
httpd
LayUI2.8.11
GoLand2022.2

3.2、安装教程

HTTPD文件服务器

https://blog.csdn.net/stalin_/article/details/90200173

Golang

https://blog.csdn.net/super_xyo/article/details/128210788

Grafana

https://blog.51cto.com/u_15735145/5546596

MySQL

https://blog.csdn.net/qq_36539042/article/details/125385002

LayUI

https://layui.dev/

Ansible

https://blog.csdn.net/Shyllin/article/details/123690458

4、成品简介

Grafana

LayUI

钉钉

End

公众号平台更改了推送规则,如果不想错过内容,请点击 “在看” 和 “赞”,感谢支持!

文章来源:https://blog.csdn.net/qq_29893385/article/details/135507835
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。