查看原文
其他

Amas:基于大数据平台技术开发的统一监控平台

EaconTang Python中文社区 2022-09-09

EaconTang

基于大数据平台技术开发的统一监控平台Amas开源项目核心开发者。 

GitHub ID:EaconTang

https://github.com/amas-eye/amas


Amas是什么

Amas是基于大数据平台技术开发的统一监控平台,其特点包括:

  1. 全维度监控指标,覆盖从操作系统、中间件、大数据平台(Hadoop/Spark/HBase/Kakfa等)到代码级别

  2. 可扩展、自定义的采集框架,支持不同语言(Python/Perl/Shell/...)开发的采集器

  3. 基于OpenTSDB/HBase的海量数据存储架构,可快速读写大量监控指标,满足真实生产环境

  4. 清新简约的Web界面,功能强大但简单易用

  5. 基于Python原生multiprocess和async/await实现的分布式异步告警引擎,可水平扩展系统处理能力

  6. 多渠道、可自定义的通知方式(微信/邮件/Slack/API...)

  7. 可分组聚合的告警信息,避免海量数据监控场景下的告警风暴

  8. 基于Jagger的分布式链路追踪数据提取和展示,历史事件可追溯

  9. 可对接基于机器学习的异常检测服务,落地AIOps智能运维

  10. 微服务架构,支持docker和docker-compose方式的部署 ...

技术栈

  • 编程语言:

    • (Backend)Python

    • (Web)Javascript

  • Web服务:

    • Vue, ECharts, Webpack

    • Express(NodeJS)

  • 后台服务:

    • HBase, OpenTSDB, MongoDB, Redis

    • Spark, Kafka...

    • Jagger, Tornado

    • Pandas, Scikit-learn

    • Docker, Swarm


服务端运行情况

  • Linux(内核版本2.6+)

  • Centos7(推荐)

Docker快速部署

目前Amas的代码已经通过DockerHub实现自动构建,推荐使用docker来快速体验:

1、安装docker 

2、保存如下shell脚本并执行:

  1. #!/usr/bin/env bash

  2. # 创建docker网络

  3. docker network create amas

  4. # 运行数据库服务

  5. # opentsdb(v2.3.0+)

  6. # mongo(v3.10.0+)

  7. # redis(v3.10.0+)

  8. docker run -d -p 4242:4242 --name opentsdb --network amas eacon/docker-opentsdb

  9. docker run -d -p 27017:27017 --name mongo --network amas mongo

  10. docker run -d -p 6379:6379 --name redis --network amas redis

  11. # 运行采集Agent(含Agent Manager):

  12. docker run -d --name collector --network amas -p 8001:8001 eacon/argus_collector

  13. # 运行告警模块:

  14. docker run -d --name alert --network amas eacon/argus_alert

  15. # 运行统计模块:

  16. docker run -d --name statistics --network amas eacon/argus_statistics

  17. # 运行Web服务:

  18. docker run -d --name web --network amas -p 8080:8080 eacon/argus-web

3、访问界面:本地8080端口(通过127.0.0.1而不是localhost):http://127.0.0.1:8080 

4、初始化:执行web容器的命令,初始化默认账户(用户名/密码:admin/123):

  1. docker exec -it web init_user

Docker-Compose

如果你使用了docker-compose,可以通过如下方式快速运行:

1、git clone本仓库:

  1. git clone https://github.com/amas-eye/amas.git; cd amas/docker/compose/

或者直接获取文件:

  1. mkdir amas; cd amas; curl https://raw.githubusercontent.com/amas-eye/amas/master/docker/compose/docker-compose.yml > docker-compose.yml

2、执行:

  1. docker-compose up -d

指标说明 

详见 Metrics.md。

部分功能截图 

Dashboard

监控图表

告警规则和记录

Slack通知

调用链

架构

模块划分(对应repo)

  • Web服务:argus-web

  • 后台:

    采集器:arguscollector

  • 告警:argusalert

    调用链:arguschain

    统计中心:argusstatistics

    AIOps框架:argus_aiops


    项目成员

    Amas现由@Eacon和他的开发团队负责维护

    其他

    Amas的内部开发代号为argus,这也会保留在开源项目的源码中。

    ToDoList

    • 告警引擎,支持DSL语言定义规则

    • 集成开源的Zabbix、Nagios等监控数据

    • 基于AspectJ的Java字节码注入监控

    • 基于pyrasite的python字节码注入监控 更多AIOps方案的落地...




Python中文社区

全球Python中文开发者的

精神部落


为促进Python中文开发者的开源项目的发展,Python中文社区全平台将定期报导华人Python开发者开源项目的发展情况,让更多的开发者关注和参与您的开源项目,并且我们将凭借在业界的影响力努力开拓更多资源,为开源项目开发者提供更多支持,欢迎开源项目开发者踊跃报名,也欢迎您推荐优秀的开源项目,请点击阅读原文报名。

Python中文社区作为一个去中心化的全球技术社区,以成为全球20万Python中文开发者的精神部落为愿景,目前覆盖各大主流媒体和协作平台,与阿里、腾讯、百度、微软、亚马逊、开源中国、极客邦、CSDN等业界知名公司和技术社区建立了广泛的联系,拥有来自十多个国家和地区数万名登记会员,会员来自以公安部、工信部、清华大学、北京大学、北京邮电大学、中国人民银行、中科院、中金、华为、BAT、谷歌、微软等为代表的政府机关、科研单位、金融机构以及海内外知名公司,全平台近20万开发者关注。


往期开源项目介绍

Python开源项目介绍:用zmail简单地发邮件

Python开源项目介绍:网站日志分析工具

Python中文社区开源项目计划:ImagePy


点击下方阅读原文参与报名或推荐

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存