EDAS 专有网络ECS集群应用数据采集实践

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:

对于云上的EDAS用户来说,后端监控日志及调用链信息对定位和应用诊断及其重要,EDAS目前主要分ECS集群和K8S集群,K8S集群部署应用通过ARMS收集应用日志。ECS集群因为大部分ECS都是专有网络,因vpc天然网络环境隔离,所以EDAS针对专业网络ECS集群提供了一个特殊的解决方案:日志采集器(鹊桥)。本文将就日志采集器进行介绍和技术支持遇到的经典案例进行分享

日志采集器示意图

日志采集器分为 Server 端和 Client 端。SProxy 是安装在您应用实例上的日志采集器 Client。Cproxy是安装在EDAS后端集群。通过cproxy->sproxy->hblog 获取日志
image

image

日志采集器排查

现象:
在 EDAS 的服务中,如果获取不到数据,所有和视图以及调用链相关的服务均变得不可用;这部分功能包括监控(基础监控、服务监控),报警,调用链
重要排查方向:
1.8002和8182重要端口,安装日志采集服务器执行命令'netstat -ant|grep 8002'检测端口(8002)是否建立成功。应用服务器执行命令'netstat -ant|grep 8182'查看 8182 端口是否处于监听状态且有连接信息。
2.核实sproxy和hblog日志是否异常

  默认安装目录:/root/sproxy   

sproxy日志目录:/root/sproxy/log/console.log

                        /root/sproxy/log/error.log

hblog日志目录:/usr/alisys/dragoon/log/hblog.log
3.网络应用服务器和日志采集器的网络、日志采集器到后端cproxy的网络
4.日志采集器安装所在ecs服务器的性能,应用服务器性能

日志采集器相关问题

1.VPC 中安装日志采集器大致建议比例
• 需要根据日志量、服务器性能等综合判断,目前个人建议40-50台ECS的应用需要找一个ECS安装日志采集器
2.应用部分某种类型调用链获取不到或者监控无数据。
• 调用链和监控数据需要有访问请求流量才会产生,如果无客户访问网站或者并不是hsf等服务,则不会有数据
3.手动安装命令:
• 以北京为例 wget -q -O /root/ins.sh http://edas-bj.vpc100-oss-cn-beijing.aliyuncs.com/agent/prod/install_scripts/install_sproxy_entry.sh && sh /root/ins.sh -vpcid "客户的vpc id" 其中域名注意变化
4.日志采集器配置

image

配置文件是 sproxy/priv/queqiao_sproxy.config,配置内容:
{vpc_instance_id, "vpc-bpxxxxxvn"}, %% 当前sproxy所在的vpc的标识,内容为空表示使用ip地址判断

{version, "2.0.0"}, %% 当前sproxy所在的vpc的标识,内容为空表示使用ip地址判断
{cproxy_info,
    [{
        {cproxy_addr, "100.x.x.31"}, %% 配置cproxy的地址信息
        {cproxy_reg_port, 8002}, %% cproxy的监听注册端口
        {cproxy_conn_retry_counts, 10000000000}, %% 每个sproxy尝试与cproxy尝试建立链接的次数
        {cproxy_conn_retry_interval, 5}, %% 尝试建立链接的秒间隔
        {cproxy_conn_heartbeat_interval, 20} %%保持链接, 单位秒
    },{
        {cproxy_addr, "100.x.x.31"}, %% 配置cproxy的地址信息
        {cproxy_reg_port, 8002}, %% cproxy的监听注册端口
        {cproxy_conn_retry_counts, 10000000000}, %% 每个sproxy尝试与cproxy尝试建立链接的次数
        {cproxy_conn_retry_interval, 5}, %% 尝试建立链接的秒间隔
        {cproxy_conn_heartbeat_interval, 20} %%保持链接, 单位秒
    },{
        {cproxy_addr, "100.100.19.32"}, %% 配置cproxy的地址信息
        {cproxy_reg_port, 8002}, %% cproxy的监听注册端口
        {cproxy_conn_retry_counts, 10000000000}, %% 每个sproxy尝试与cproxy尝试建立链接的次数
        {cproxy_conn_retry_interval, 5}, %% 尝试建立链接的秒间隔
        {cproxy_conn_heartbeat_interval, 20} %%保持链接, 单位秒
    },{
        {cproxy_addr, "100.x.x.32"}, %% 配置cproxy的地址信息
        {cproxy_reg_port, 8002}, %% cproxy的监听注册端口
        {cproxy_conn_retry_counts, 10000000000}, %% 每个sproxy尝试与cproxy尝试建立链接的次数
        {cproxy_conn_retry_interval, 5}, %% 尝试建立链接的秒间隔
        {cproxy_conn_heartbeat_interval, 20} %%保持链接, 单位秒
    }]
},

5.操作命令
停止: ./run_sproxy_rel.sh stop
启动: ./run_sproxy_rel.sh start
重装:sh /root/install_sp.sh -force

配置原因导致无法采集数据案例(步骤分析)

问题现象:用户正常安装采集器后,页面监控大盘数据还是无法查看,具体现象如截图:
image

排查步骤:
1.登录服务器核实8182端口是否建立成功,netstat -ant|grep 8182
2.根据问题截图确认了应用服务器的安全组配置,确认安全组对采集器放开了8182端口(排出网络原因)
image

3.登录采集器服务器 执行 netstat -ant|grep 8002没有建立连接
image

4.定位是否没有成功安装采集器,重新重新安装后,再次确认8002没有建立连接。

image

5.定位sproxy日志信息, 查看/root/sproxy/log/console.log 发现报错提示cproxy地址127.0.0.1链接失败
image

6.日志采集器应该是后端服务器,不应该是本地ip的,核实queqiao_sproxy.config配置cproxy的地址错误
解决方案:
1、保留原有配置mv queqiao_sproxy.config queqiao_sproxy.config.bak
2、复制sproxy/priv下queqiao_sproxy_hz文件,新命名queqiao_sproxy.config: cp queqiao_sproxy_hz.config queqiao_sproxy.config
3.停止重启采集器 ./run_sproxy_rel.sh stop && ./run_sproxy_rel.sh

正常现象

image

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
25天前
|
弹性计算 Kubernetes jenkins
如何在 ECS/EKS 集群中有效使用 Jenkins
本文探讨了如何将 Jenkins 与 AWS ECS 和 EKS 集群集成,以构建高效、灵活且具备自动扩缩容能力的 CI/CD 流水线,提升软件交付效率并优化资源成本。
407 0
|
2月前
|
存储 弹性计算 网络协议
阿里云服务器ECS实例规格族是什么?不同规格CPU型号、处理器主频及网络性能参数均不同
阿里云ECS实例规格族是指具有不同性能特点和适用场景的实例类型集合。不同规格族如计算型c9i、通用算力型u1、经济型e等,在CPU型号、主频、网络性能、云盘IOPS等方面存在差异。即使CPU和内存配置相同,性能参数和价格也各不相同,适用于不同业务需求。
|
5月前
|
存储 消息中间件 弹性计算
阿里云服务器ECS计算型c7和通用算力型u1在适用场景、计算性能、网络与存储性能等方面的对比
阿里云ECS服务器u1和c7实例在适用场景、性能、处理器特性等方面存在显著差异。u1为通用算力型,性价比高,适合中小企业及对性能要求不高的场景;c7为企业级计算型,采用最新Intel处理器,性能稳定且强大,适用于高性能计算需求。u1支持多种CPU内存配比,但性能一致性可能受底层平台影响;c7固定调度模式,确保高性能与稳定性。选择时可根据预算与性能需求决定。
288 23
|
12月前
|
SQL 机器学习/深度学习 分布式计算
大数据-81 Spark 安装配置环境 集群环境配置 超详细 三台云服务器
大数据-81 Spark 安装配置环境 集群环境配置 超详细 三台云服务器
537 1
|
7月前
|
消息中间件 分布式计算 资源调度
基于云服务器的数仓搭建-集群安装
本文介绍了大数据集群的安装与配置,涵盖Hadoop、Zookeeper、Kafka和Flume等组件。主要内容包括: 1. **数据模拟** 2. **Hadoop安装部署**:详细描述了HDFS和YARN的配置,包括NameNode、ResourceManager的内存分配及集群启动脚本。 3. **Zookeeper安装**:解压、配置`zoo.cfg`文件,并创建myid文件 4. **Kafka安装**:设置Kafka环境变量、配置`server.properties` 5. **Flume安装**:配置Flume采集日志到Kafka,编写启动脚本进行测试。
|
11月前
|
弹性计算 监控 数据库
制造企业ERP系统迁移至阿里云ECS的实例,详细介绍了从需求分析、数据迁移、应用部署、网络配置到性能优化的全过程
本文通过一个制造企业ERP系统迁移至阿里云ECS的实例,详细介绍了从需求分析、数据迁移、应用部署、网络配置到性能优化的全过程,展示了企业级应用上云的实践方法与显著优势,包括弹性计算资源、高可靠性、数据安全及降低维护成本等,为企业数字化转型提供参考。
294 5
|
12月前
|
消息中间件 分布式计算 监控
大数据-78 Kafka 集群模式 集群的应用场景与Kafka集群的搭建 三台云服务器
大数据-78 Kafka 集群模式 集群的应用场景与Kafka集群的搭建 三台云服务器
267 6
|
12月前
|
SQL 分布式计算 NoSQL
大数据-170 Elasticsearch 云服务器三节点集群搭建 测试运行
大数据-170 Elasticsearch 云服务器三节点集群搭建 测试运行
248 4
|
XML 分布式计算 资源调度
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(一)
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(一)
434 5
|
12月前
|
分布式计算 Hadoop Shell
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
256 4

热门文章

最新文章

下一篇
日志分析软件