EDAS staragent 排查

简介: 浅谈 staragent 是什么?部署在 ECS 上的一个组件,两个主要功能: 数据功能,上报 ECS 上的系统日志 命令功能,接收控制台的下发指令,上报心跳状态,记录执行任务过程等功能。 主要目录结构 主要的目录都统计出来,不重要的目录这里就不过介绍。

浅谈

staragent 是什么?部署在 ECS 上的一个组件,两个主要功能:

  • 数据功能,上报 ECS 上的系统日志
  • 命令功能,接收控制台的下发指令,上报心跳状态,记录执行任务过程等功能。

主要目录结构

主要的目录都统计出来,不重要的目录这里就不过介绍。


├── bin
│   ├── agent.sh
│   ├── agent_start_cmd.txt
│   ├── dnsresolver
│   ├── fakeStaragentctl7u
│   ├── pluginctl
│   ├── pluginplatform
│   ├── post_install.sh
│   ├── sa_healthCheck.sh
│   ├── sa_install_lock.sh
│   ├── sa_install.sh
│   ├── sa_recovery.sh
│   ├── staragent2
│   ├── staragentctl
│   ├── staragentctl7u
│   ├── staragentd
│   └── unzip
 |
├── conf
│   ├── channels.conf
│   └── staragent.conf
 |
├── log
│   ├── dbscanner.log
│   ├── dbscanner.log.20181118195157
│   ├── staragent_channels.log
│   ├── staragent_channels.log.20181116175937
│   ├── staragent_core.log
│   ├── staragent_core.log.20181111214336
│   ├── staragent_core.log.20181117070750
│   ├── staragent_ctl.log
│   ├── staragent_master.log
│   └── staragent_tasks.log
└── 

主要配置文件如下

1)/home/staragent/conf/staragent.conf,配置 staragent 注册的服务地址

{
"Common":
    {
           "LogLevel"      : "debug"     //error,warn,info,debug
    },
"Sub_Core": {
    "ConfServer":{
        "ConfServer" : [
            "http://staragent-edas.aliyuncs.com"  //服务端域名
        ]
     }
}
}

2)/home/staragent/conf/channels.conf 服务端的备份 IP

100.100.27.142  80
100.100.36.55   80

排查命令

  • ps aux | grep -E "staragentd|staragent-core|staragent-ppf" | grep -v grep
    检查 staragent 进程是否存活
  • sudo /home/staragent/bin/agent.sh {start|stop|restart}
    启动、停止、重启Agent
  • /home/staragent/bin/staragent2 -e GetStatus
/home/staragent/bin/staragent2 -e GetStatus
------agent running ok------
  StartTime           : 2016-08-30 19:03:34 CST
  RegisterTime        : 2016-08-30 19:03:44 CST
  ServiceTag          : 94a2a7e7-5baa-4623-95f4-ef2f22741bff
  ServerConnected     : 1
  ServerAddr          : 10.125.250.64:8000
  LocalAddr           : 10.101.94.148
  Max Core count      : 0
  Total CPU Count     : 2
  Total CPU Rate      : 1.01%
  Total MEM Rate      : 12.85%
  Process CPU Rate    : 0.00%
  Load Avg (1,5,15)   : 6,4,5
  Virtual Memory      : 397MB
  Physical Memory     : 11MB
检查
 1) ServerConnected 是否为 1
  如果ServerConnected为1,表示已连接,agent已工作正常。
  • 重启 logagent 插件
    /home/staragent/plugins/logAgent/logagentctl.sh restart
  • wget -q -O /root/install.sh http://edas-sz.oss-cn-shenzhen-internal.aliyuncs.com/install.sh && sh /root/install.sh -full -force
    强制重新安装 agent 脚本,其中 sz 代表深圳,可以替换成你自己的 region 比如 hz 就是杭州。shenzhen 替换成你的 region ,其他的不用变。

使用遇到的问题

案例:

ECS 进行集群转移,报错 "issue config fail on ecu"

1

image

排查:

1)先看下要迁移的源 ECS 是否还在应用中,确认是已经摘除掉应用的才能进行迁移;

2)源机器的 VPC 和目标机器的 VPC 必须是同一个;

3)客户端上执行下 /home/staragent/bin/staragent2 -e GetStatus 看下 ServerConnected 的状态是否为 1 ,如果不为 1 说明 agent 的状态异常,可以重启下 agent /home/staragent/bin/agent.sh restart

4)执行 ps aux | grep -E "staragentd|staragent-core|staragent-ppf" | grep -v grep
如果进程一直起不来,说明 agent 本身就有问题。要手动执行脚本重装 agent ;

5)第 3 步没有效果的话,再继续看下 /home/staragent/conf/ 目录下的配置文件 channels.conf staragent.conf;

  • 5.1)先看下 staragent.conf 配置的服务端注册地址是否正确,有的客户把这里固定 IP 协议,结果 IP 更换后这里没有更换导致网络不通。
"ConfServer" : [
          "http://staragent-edas.aliyuncs.com"
      ]
  • 5.2)看下 channels.conf 文件中配置的地址的 IP 能否 ping 通,telnet 80 是否能通
[root@hanli-edas-01 plugins]# cat /home/staragent/conf/channels.conf 
100.100.27.142    80
100.100.36.55    80
[root@hanli-edas-01 plugins]# ping -c 4 100.100.27.142
PING 100.100.27.142 (100.100.27.142) 56(84) bytes of data.
64 bytes from 100.100.27.142: icmp_seq=1 ttl=46 time=27.4 ms
64 bytes from 100.100.27.142: icmp_seq=2 ttl=46 time=26.9 ms
64 bytes from 100.100.27.142: icmp_seq=3 ttl=46 time=26.9 ms
64 bytes from 100.100.27.142: icmp_seq=4 ttl=46 time=26.9 ms
--- 100.100.27.142 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 26.924/27.082/27.477/0.229 ms
[root@hanli-edas-01 plugins]# telnet 100.100.27.142 80
Trying 100.100.27.142...
Connected to 100.100.27.142.
Escape character is '^]'.
^]
Connection closed by foreign host.
[root@hanli-edas-01 plugins]#

5)第 4 步还是解决不了的话就需要查看 agent 的异常日志的,进去我们上面说的日志目录,找到 staragent_core.log ,这个是 agent 的启动、上报健康状态、注册的核心日志。这里就用到之前说的 grep error 关键

image

排查到这里基本上我们就知道问题了,接下来我们再客户端上部署下 tcpdump 抓包,然后看下超时的原因:

5.1)nohup tcpdump -i <网卡出口> -s0 host staragent-edas.aliyuncs.com &

image

通过抓包发现客户端发去的 request 后服务端没有响应,这时大致可以判断了是 staragent 在服务端注册失败,这种情况我们重新执行下安装脚本即可解决这个问题。

相关实践学习
通过EDAS实现K8s微服务应用的金丝雀发布
本实验旨在通过使用分布式应用服务EDAS纳管容器服务ACK Serverless,体验微服务应用的部署、访问和高级发布能力。
SpringMVC框架入门
Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。在使用Spring进行WEB开发时,可以选择使用Spring的SpringMVC框架或集成其他MVC开发框架,如Struts2等。 相关的阿里云产品企业级分布式应用服务 EDAS:企业级分布式应用服务 EDAS(Enterprise Distributed Application Service)是一个应用托管和微服务管理的 PaaS 平台,提供应用开发、部署、监控、运维等全栈式解决方案,同时支持 Spring Cloud、Apache Dubbo(以下简称 Dubbo )等微服务运行环境,助力您的各类应用轻松上云。产品详情: https://www.aliyun.com/product/edas&nbsp;
目录
相关文章
|
消息中间件 存储 弹性计算
EDAS发布单工作原理及问题排查
EDAS发布单工作原理及问题排查
EDAS发布单工作原理及问题排查
|
弹性计算 应用服务中间件 Docker
EDAS docker staragent 异常
背景 客户端在 EDAS 控制台操作应用时出现 staragent 异常。 排查 遇到类似问题,需要知晓, staragent 是命令下发通道,所有在控制台上操作的指令都要通过 staragent 下载,由 edas-agent 执行,现在 staragent 异常如何验证; 执行 ps -...
EDAS docker staragent 异常
|
弹性计算 监控 Java
EDAS 基础排查
案例:应用发布失败 jvm crash 1) 先看下发布失败应用对应的变更记录发现发布应用失败是因为卡在了健康检查失败。健康检查的 URL 必须是返回 200 的才可以,通过报错可以知道后端的 tomcat 返回了 502。
2803 0
|
弹性计算 应用服务中间件 Docker
EDAS内网SLB超时问题排查
##问题: XX客户反馈,部署的edas应用不定时的总有请求超时的问题。而在本地调试和轻量配置中心内,调用都是正常的。就是发布到线上后出现timeout。 ##分析: 客户的线下环境执行正常,线上出现问题。可以先基本排除代码上的问题,多半跟网络配置相关。 调查客户的业务架构,为: 客户端-->公网SLB-->ECSA(Edas应用 http)--> 内网SLB-->ECSB(Edas
3012 0
|
监控 应用服务中间件
如下请问EDAS的这个问题怎么解决? 应用id:2b0e6935-47fb-40ec-a11d-7dac320aecc1 集群中的节点内存是足够的,部署跑不起来 可以帮忙看看吗,以前集群下应用发布都是正常的,最近集群下应用部署基本都报错跑不起来,提示节点不可用
如下请问EDAS的这个问题怎么解决? 应用id:2b0e6935-47fb-40ec-a11d-7dac320aecc1 集群中的节点内存是足够的,部署跑不起来 可以帮忙看看吗,以前集群下应用发布都是正常的,最近集群下应用部署基本都报错跑不起来,提示节点不可用
137 2
|
Kubernetes 负载均衡 Serverless
通过EDAS部署并访问应用
本实验旨在通过使用分布式应用服务EDAS纳管容器服务ASK,掌握微服务应用的部署和访问。
|
Kubernetes Serverless 应用服务中间件
通过EDAS实现K8s微服务应用的金丝雀发布
本实验旨在通过使用分布式应用服务EDAS纳管容器服务ASK,体验微服务应用的部署、访问和高级发布能力。
|
弹性计算 Kubernetes Cloud Native
云原生微服务应用平台 EDAS 2022 年度报告
最近一年来,随着我们的客户对于云技术的诉求从资源快速交付的服务,转变为对资源精益运用的服务。EDAS 团队结合公共云上所服务的企业类客户的几万个应用,选取了 8 个最具代表性的指标,进行了一次系统性的分析整理和总结,希望可以给当前正在从事软件架构的从业人员一个侧面的视角,来了解一些当下发生在身边的技术现象。
411 1
云原生微服务应用平台 EDAS 2022 年度报告
|
弹性计算 Kubernetes Cloud Native
云原生微服务应用平台 EDAS 2022 年度报告
最近一年来,随着我们的客户对于云技术的诉求从资源快速交付的服务,转变为对资源精益运用的服务。EDAS 团队结合公共云上所服务的企业类客户的几万个应用,选取了 8 个最具代表性的指标,进行了一次系统性的分析整理和总结,希望可以给当前正在从事软件架构的从业人员一个侧面的视角,来了解一些当下发生在身边的技术现象。
云原生微服务应用平台 EDAS 2022 年度报告
|
应用服务中间件 开发者
EDAS 应用创建、启动和停止|学习笔记
快速学习 EDAS 应用创建、启动和停止
350 0
EDAS 应用创建、启动和停止|学习笔记

热门文章

最新文章

下一篇
DataWorks