首页
/ Anteon Self Hosted 自托管部署与使用指南

Anteon Self Hosted 自托管部署与使用指南

2025-07-07 01:24:22作者:裴麒琰

项目概述

Anteon Self Hosted(原Ddosify)是一款专为Kubernetes环境设计的性能监控与测试工具。它通过创新的eBPF技术实现对K8s集群的深度监控,能够自动生成服务拓扑图,并帮助用户快速定位高延迟的服务调用问题。

核心特性

  1. 多架构支持:全面兼容Arm64和Amd64架构,支持Linux和MacOS系统
  2. 容器化部署:提供Docker Compose和Helm Chart两种部署方式
  3. K8s监控能力:集成eBPF Agent(Alaz)实现集群深度监控
  4. 分布式测试:支持横向扩展测试引擎,满足大规模测试需求
  5. 全栈监控:从基础设施到应用层的全方位性能指标采集

系统要求

基础要求

  • Git版本控制系统
  • Docker引擎(版本20.10.0+)
  • Docker Compose(版本1.29.0+)

推荐配置

  • 操作系统:macOS 10.15+或Linux(Ubuntu 20.04+/Debian 10+/CentOS 8+)
  • 处理器:四核2.5GHz或更高(支持Apple M1/M2等ARM架构)
  • 内存:8GB或更大
  • 存储:5GB以上SSD空间

注意:目前不支持Windows系统

部署方案

方案一:Docker Compose快速部署(开发/测试环境)

执行以下命令即可完成一键部署:

curl -sSL https://raw.githubusercontent.com/getanteon/anteon/master/selfhosted/install.sh | bash

部署完成后,可通过 http://localhost:8014 访问控制面板。

方案二:Kubernetes部署(生产环境推荐)

建议使用官方提供的Helm Chart进行K8s集群部署,这种方式支持:

  • 服务高可用
  • 自动扩缩容
  • 资源隔离
  • 更完善的监控体系

核心组件详解

组件名称 功能描述
Hammer引擎 负载生成引擎,可水平扩展
Hammer Manager 引擎管理服务,负责任务调度和资源分配
后端服务 处理性能测试和K8s监控的核心逻辑
Alaz后端 处理eBPF Agent采集的指标、追踪和日志数据
InfluxDB 存储性能指标的时间序列数据库
PostgreSQL 存储测试结果的关联型数据库
RabbitMQ 消息队列,实现各组件间通信
分布式对象存储 存储测试数据文件(如CSV)
Nginx 反向代理,提供统一的API入口
Prometheus 采集和存储K8s监控指标

高级配置指南

1. 分布式测试引擎扩展

在生产环境中,可以通过添加多个Hammer引擎来提升测试能力:

# 在同主机添加引擎
NAME=anteon_hammer_1
docker run --name $NAME -dit \
    --network anteon \
    --restart always \
    ddosify/selfhosted_hammer:1.4.3

# 在不同主机添加引擎
SERVICE_ADDRESS=主节点IP
IP_ADDRESS=引擎节点IP
NAME=anteon_hammer_1

docker run --name $NAME -dit \
    --env SERVICE_ADDRESS=$SERVICE_ADDRESS \
    --env IP_ADDRESS=$IP_ADDRESS \
    --restart always \
    ddosify/selfhosted_hammer:1.4.3

2. K8s监控配置

要启用K8s集群监控功能,需要在每个节点部署Alaz DaemonSet。该组件基于eBPF技术实现,能够:

  • 自动发现服务拓扑
  • 监控网络流量
  • 采集系统调用数据
  • 提供细粒度的性能指标

3. 数据持久化配置

默认情况下,所有数据存储在Docker卷中。如需自定义存储位置,可以:

  1. 修改docker-compose.yml中的volumes配置
  2. 为InfluxDB和PostgreSQL指定外部存储卷
  3. 配置定期备份策略

运维管理

服务启停

# 停止服务
cd $HOME/.anteon/selfhosted
docker compose down

# 彻底删除(包括数据)
docker compose down --volumes

日志查看

docker-compose logs -f

性能调优建议

  1. 为InfluxDB分配足够的内存(建议4GB+)
  2. 对高频测试场景,增加RabbitMQ的资源配额
  3. 分布式部署时,确保网络延迟低于50ms

数据收集说明

Anteon默认会收集匿名使用数据以改进产品,包含:

  • 集群基本信息(不包含敏感数据)
  • 资源使用情况
  • 组件运行状态

如需禁用,可在docker-compose.yml中设置:

backend:
    environment:
      - ANONYMOUS_TELEMETRY_ENABLED: "False"

最佳实践

  1. 生产环境部署

    • 使用K8s Helm部署
    • 配置资源限制和请求
    • 启用持久化存储
    • 设置定期备份
  2. 性能测试建议

    • 先进行小规模测试验证
    • 逐步增加负载
    • 关注系统资源使用情况
    • 结合K8s监控数据综合分析
  3. 问题排查

    • 检查各组件日志
    • 验证网络连通性
    • 监控系统资源使用
    • 查看服务拓扑图定位瓶颈

总结

Anteon Self Hosted为Kubernetes环境提供了一套完整的性能监控和测试解决方案。通过本文介绍的部署方法和使用技巧,您可以快速搭建起自己的性能监控平台,有效提升系统可靠性和性能表现。无论是开发测试还是生产环境,Anteon都能提供有价值的性能洞察。