feat: initialize tbos code
TBOS是腾讯自研的机房动环监控系统,采用微服务架构设计,包含边缘采集、数据处理、告警计算、配置管理等多个核心模块,支持大规模机房的统一监控管理。
┌──────────────────────────────────────────────────────────────┐ │ 配置流 │ │ Web → CGI → CMDB → MySQL ← Scheduler │ │ ↓ │ │ ┌───────────────┼───────────────┐ │ │ ↓ ↓ ↓ │ │ Agent-GW Data-Compute Alarm-Compute │ └──────────────────────────────────────────────────────────────┘ ┌──────────────────────────────────────────────────────────────┐ │ 数据流 │ │ 物理设备 → Agent → Collector → Kafka → Data-Cache/Store │ │ ↑ ↓ │ │ Data-Compute (读取Data-Cache计算) Data-Query │ └──────────────────────────────────────────────────────────────┘ ┌──────────────────────────────────────────────────────────────┐ │ 告警流 │ │ Alarm-Compute (读取Query) → Kafka(告警+日志) │ │ ↓ │ │ ┌───────────┴───────────┐ │ │ ↓ ↓ │ │ Alarm-Manage(入库) Alarm-Server(生效率) │ └──────────────────────────────────────────────────────────────┘
备注:单模组总资源不低于 52核心,资源规划建议 CPU:内存 = 1:4
# 1. 克隆项目 git clone <repository_url> cd tbos # 2. 编译所有服务 ./tbos.sh build # 3. 初始化数据库 mysql -u root -p < ddl.sql # 4. 启动所有服务 ./tbos.sh start # 5. 停止所有服务 ./tbos.sh stop
# 1. 构建所有镜像 ./tbos.sh build image # 2. 启动所有服务 ./tbos.sh start image # 3. 停止所有服务 ./tbos.sh stop image
编辑 server.cfg 文件配置环境变量:
server.cfg
# 数据库配置 MYSQL_HOST=localhost MYSQL_PORT=3306 MYSQL_USER=root MYSQL_PASSWORD=password MYSQL_DATABASE=tbos MYSQL_ADDR=${MYSQL_HOST}:${MYSQL_PORT} # Redis配置 REDIS_HOST=localhost REDIS_PORT=6379 REDIS_PASSWORD= REDIS_ADDR=${REDIS_HOST}:${REDIS_PORT} # Kafka配置 KAFKA_HOST=localhost KAFKA_PORT=9092 KAFKA_ADDR=${KAFKA_HOST}:${KAFKA_PORT} KAFKA_POINT_TOPIC=tbos_point_data KAFKA_ALARM_TOPIC=tbos_alarm_msg # InfluxDB配置 INFLUXDB_HOST=localhost INFLUXDB_PORT=8086 INFLUXDB_USER=admin INFLUXDB_PASSWORD=password INFLUXDB_DBNAME=tbos INFLUXDB_ADDR=${INFLUXDB_HOST}:${INFLUXDB_PORT} INFLUXDB_POINT_MEASUREMENT=points # 本机IP LOCAL_IP=127.0.0.1 # 服务端口 PORT_CGI=8080 PORT_SCHEDULER=8081 PORT_ALARM_COMPUTE=8082 PORT_ALARM_MANAGE=8083 PORT_DATA_CACHE=8084 PORT_DATA_STORE=8085 PORT_ALARM_SERVER=8086 PORT_CMDB=8087 PORT_COLLECTOR=8088 PORT_DATA_COMPUTE=8089 PORT_DATA_QUERY=8090 PORT_AGENT=61000
每个服务目录下的 trpc_go.yaml 为服务配置文件,包含:
trpc_go.yaml
etrpc
global
server.service
client.service
plugins
使用 ddl.sql 初始化数据库:
ddl.sql
mysql -u root -p < ddl.sql
t_alarm_active
t_alarm_history
t_alarm_strategy
t_alarm_worker
t_collector_device
t_collector_template
t_collector_template_point
t_device_entity
t_device_point
t_mozu_info
T-Block-Operation-System (TBOS)
系统简介
TBOS是腾讯自研的机房动环监控系统,采用微服务架构设计,包含边缘采集、数据处理、告警计算、配置管理等多个核心模块,支持大规模机房的统一监控管理。
适用场景
核心特性
系统架构
整体架构图
数据流简图
技术栈
模块说明
核心服务模块
快速开始
环境要求
最小化部署
硬件要求
操作系统
本地编译运行
Docker 部署
集群化部署建议
配置说明
环境变量配置
编辑
server.cfg文件配置环境变量:服务配置文件
每个服务目录下的
trpc_go.yaml为服务配置文件,包含:etrpcglobalserver.serviceclient.serviceplugins服务端口分配
数据库说明
初始化
使用
ddl.sql初始化数据库:核心表说明
t_alarm_activet_alarm_historyt_alarm_strategyt_alarm_workert_collector_devicet_collector_templatet_collector_template_pointt_device_entityt_device_pointt_mozu_info