MSE 诊断利器上线

本文涉及的产品
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: mseutil 未来还会支持更多的MSE子产品以及更细粒度的,更智能的诊断能力,包括客户端到 MSE 实例的网络报文分析,客户端负载状态分析,具体应用的资源占用水平以及 GC 分析等能力,帮助用户更便捷的排查在使用 MSE 产品过程中遇到的问题,提升运维效率。

背景


在日常开发和生产环境中,可能会遇到由于网络或者其他因素导致客户端连接 MSE 集群出现异常,此时需要排查集群以及客户端状态,通常需要通过文档查询对应的异常解释来定位问题,排查问题的链路比较长,比较耗时。因此 MSE 提供了一键诊断工具,发现 client -> server 链路上的问题并提供建议,使得问题排查更加快捷。


轻松上手


在日常使用中可能会遇到 MSE 实例端口不通,客户端出现端口不可用的异常日志

image.png

此时我们就可以通过 mseutil 快速诊断网络问题。


1. 通过文档下载对应平台的 mseutil 工具,工具是独立的二进制包可完全独立运行。之后通过 mse 实例详情页面获得 MSE 实例的 serverAddr

image.png

2. 通过以下命令进行快速诊断:

mseutil {子产品名} inspect --serverAddr mse-xxxxx.aliyuncs.com


诊断分为基础网络诊断以及 API 诊断,网络诊断会测试客户端环境和 MSE 实例之间的网络连接是否可达,端口是否可访问。API 诊断针对不同子产品的 API 进行测试,主要测试接口的可用性以及接口调用延时等信息。

mseutil zookeeper inspect --serverAddr mse-xxx-p.zk.mse.aliyuncs.com
mseutil nacos inspect --serverAddr mse-xxx-p.zk.mse.aliyuncs.com


image.png

此时我们可知 DNS 解析正常,但是网络连接出现问题,此时我们根据文档中的错误描述可排查到公网白名单未配置,此时只需要配置公网白名单即可。


如果一切正常会输出以下结果:

image.png

通过诊断结果我们可知客户端环境到 MSE 实例之间的网络不通,之后可通过 MSE 对应文档排查具体原因,Nacos 诊断步骤和 ZooKeeper 一致。


MSE 实例操作


mseutil 提供对 MSE 实例的数据操作能力,兼容 zkCli,并且提供四字命令查询能力,具体使用可使用 -h 子命名查询使用方法,并且支持查询修改 Nacos 服务信息以及配置信息,使得线上环境排查问题更加便捷,mseutil 可完全独立在 x86 以及 arm64 环境的Windows,Linux,OSX 运行,避免繁琐的环境配置,上手即用。


支持四字命令查询 Server 状态并且兼容 zkCli


mseutil 支持 ZooKeeper 四字命令,例如可通过以下方式进行四字命令查询 Server 当前状态的摘要:

mseutil zookeeper 4lw --serverAddr mse-xxx.aliyuncs.com stat


image.png

mseutil 支持所有的 ZooKeeper 四字命令,可通过 mseuitl zookeeper 4lw -h 查看具体使用。


mseutil 兼容 zkCli,支持对 MSE ZooKeeper 中的数据进行查询和修改。


例如可通过以下命令快捷查询实例中对应 Path 的 Znode 数据:

mseutil zookeeper get --serverAddr=mse-xxxx.aliyuncs.com /zookeeper

类似的 mseutil 还支持(set,delete,ls,stat)等命令通过 mseutil zookeeper -h 获取更多帮助。


支持对Nacos实例的服务信息查询和更新能力


mseutil 支持对 Naocs 一键诊断,支持查询基础的实例查询注册功能。


一键诊断

mseutil nacos inspect --serverAddr ${实例连接地址}

image.png

查询服务实例列表


mseutil nacos get instance -n ${namespaceId} -s ${serviceName} -g ${groupName}

注册对应服务的实例

mseutil nacos create instance <IP>:<PORT> -n ${namespaceId} -s ${serviceName} -g ${groupName} -c ${clusterName}

此外,诊断工具支持 Nacos 1.x 客户端协议和 Nacos 2.x 客户端协议,可通过参数切换:

mseutil nacos get instance -s ${serviceName} --v2

从而可以完全覆盖客户端侧所有基本场景,减少问题定位的成本。


未来规划


mseutil 未来还会支持更多的MSE子产品以及更细粒度的,更智能的诊断能力,包括客户端到 MSE 实例的网络报文分析,客户端负载状态分析,具体应用的资源占用水平以及 GC 分析等能力,帮助用户更便捷的排查在使用 MSE 产品过程中遇到的问题,提升运维效率。


相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
Cloud Native 安全 Java
云原生网关MSE-Higress测评报告
MSE-Higress是遵循开源Ingress/Gateway API标准的下一代网关产品,将传统的流量网关、微服务网关、安全网关合三为一,具有高集成、易使用、易扩展、热更新的特点。本报告将从流量调度、服务治理、插件市场等方面对MSE-Higress进行详细测评,并对比其他网关如Nginx、APISIX、Spring Cloud Gateway等,分析其在功能、性能、架构、可扩展性、运维、价格等方面的优势和不足。
716 48
|
Kubernetes Cloud Native Java
阿里云 MSE + ZadigX ,无门槛实现云原生全链路灰度发布
阿里云 MSE + ZadigX ,无门槛实现云原生全链路灰度发布
608 11
|
Cloud Native 安全 应用服务中间件
MSE-Higress阿里云产品测评
微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力
224 2
|
弹性计算 安全 UED
MSE-Higress产品体验测评
MSE-Higress产品体验测评
93 2
|
弹性计算 安全 搜索推荐
MSE-Higress应用场景测评
MSE-Higress应用场景测评
113 2
|
Kubernetes Cloud Native 安全
|
运维 网络协议 Java
MSE 诊断利器上线
因此 MSE 提供了一键诊断工具,发现 client -> server 链路上的问题并提供建议,使得问题排查更加快捷。
MSE 诊断利器上线
|
运维 Prometheus 监控
《阿里云可观测最佳实践》——阿里云可观测产品介绍
《阿里云可观测最佳实践》——阿里云可观测产品介绍
451 0
|
数据可视化 Dubbo Java
MSE 微服务测试---自动化回归最佳实践|学习笔记
快速学习 MSE 微服务测试---自动化回归最佳实践
MSE 微服务测试---自动化回归最佳实践|学习笔记
|
Java 中间件 测试技术
全链路灰度新功能:MSE上线配置标签推送
微服务场景下,全链路灰度作为一种低成本的新功能验证方式,得到了越来越广泛的应用。除了微服务实例和流量的灰度,微服务应用中的配置项也应该具备相应的灰度能力,以应对灰度应用对特殊配置的诉求。
全链路灰度新功能:MSE上线配置标签推送

相关产品

  • 微服务引擎