作者:草谷
前言
微服务引擎 MSE 全新发布!新版本带来了一系列令人振奋的特性和改进,让您更轻松、高效地构建和管理微服务应用程序。从快速入门到迁移优化,MSE 为开发人员提供了全方位的支持和解决方案。无论您是刚刚接触微服务还是已经深耕其中,MSE 都将为您带来独特的体验和突破。让我们一同探索 MSE 的全新特性,开启微服务开发的新篇章!
快速入门,带你 15 分钟体验 MSE
MSE 注重用户体验,我们为您提供了全新的快速入门指南。只需 15 分钟,您就可以轻松了解 MSE 的基本概念和核心功能,体系化认识 MSE,企业可以更加科学、系统地进行微服务架构的评估和选型,提高决策的准确性和成功率,为企业的数字化转型提供强有力的支持。
部署微服务应用
观看《部署微服务应用》视频演示:https://help.aliyun.com/zh/mse/getting-started/mse-quick-start#f814392035lp6
将引导您部署 Demo 应用 A(consumer)和应用 B(provider)。
- Demo 中应用 A 调用应用 B,您可前往 Github 查看 Demo 代码
- Demo 同时融合 SpringCloud 和 Dubbo 框架,引擎类型为 Nacos
微服务查询与配置
观看《微服务查询与配置》视频演示:https://help.aliyun.com/zh/mse/getting-started/mse-quick-start#18c3af7035n4n
- 服务将自动注册至您选择的 MSE Nacos 实例,因此我们将引导您查询第一步部署成功的服务
- 提供了统一配置管理的能力,因此我们将引导您体验发布配置的过程,应用 A(consumer) 会不断得监听您发布的配置
对外暴露服务
观看《对外暴露服务》视频演示:https://help.aliyun.com/zh/mse/getting-started/mse-quick-start#31c97a4035tpd
- MSE 云原生网关是兼容 K8s Ingress 标准的下一代网关产品,将传统的流量网关和微服务网关功能合并,更稳定、更安全、更高性能
- 我们将引导您通过「云原生网关」将服务暴露到公网,并进行路由调试
体验全链路灰度
观看《体验全链路灰度》视频演示:https://help.aliyun.com/zh/mse/getting-started/mse-quick-start#4435f82035lx5
- MSE 服务治理提供无损上下线、全链路灰度、流量治理等全生态能力,帮助您更低成本开发、消除变更风险、增强运行稳定性
- 我们将引导您通过「服务治理」实现全链路灰度发布,实现基线应用和灰度应用的全链路流量隔离
提供免费试用(Freetier)
在快速入门的体验中,涉及到注册配置中心,云原生网关,微服务治理,ACK 4 款体验产品,阿里云将提供免费试用活动,让您可以免费体验我们产品!无需支付费用即可尝试我们的核心功能和特性。无论您是个人用户、学生、开发者还是初创企业,都能满足您的需求:
点击链接申请:https://free.aliyun.com/?product=9564559
全新上云迁移体验
微服务迁移工具
微服务架构的应用程序已经成为许多企业的首选,然而,随着业务的快速发展和技术的不断演进,微服务架构的迁移却成为一个严峻的挑战。现在,我们为您带来 MSE(Microservices Engine) Sync,这是一款专为微服务迁移而设计的强大工具,让微服务迁移变得轻松自如。
支持多种引擎数据模型转换
MSE Sync 提供了强大的模型转换功能。它可以自动将 Eureka,Nacos,ZooKeeper 互相转换,您可以大大减少手动重构的工作量,提高迁移效率。
迁移任务可视化
MSE 迁移工具现在具备可视化功能,提供了直观的操作界面,让您可以直接在图形化界面中执行迁移操作,创建和管理迁移任务,为您的迁移过程带来了极大的便利和直观性,同时 MSE Sync 提供支持同步任务数,状态等重要可视化数据。
自动生成迁移配置
MSE 将迁移过程划分为清晰的步骤和任务,让您能够按部就班地完成迁移配置的生成。无需繁琐的命令行操作,您只需在直观的界面中完成相应设置和配置。
用户迁移案例
MSE 提供的微服务迁移工具,已经帮助多个企业顺利迁移上云:
案例一:某教育行业企业
某教育行业企业是一家在线教育机构,专注于中学生在线教育领域,在使用 MSE 之前,自建了一套 Eureka 集群,用于注册中心,由于长期人力运维成本大,技术投入不足,问题无法快速响应解决,基于此原因进行业务改造将自建 Eureka 注册中心成功迁移到 MSE Nacos,迁移过程中使用 MSE Sync 进行自检集群和 MSE 集群的数据同步,迁移过程平滑。
案例二:某物流行业企业
某物流行业企业是一个货运调度平台,专注于公路物流领域,在使用 MSE 之前使用 Eureka 作为注册中心,自建 Eureka 维护成本高,并且经常出现稳定性问题,导致服务不稳定,基于此原因迁移到 MSE,迁移过程中通过 MSE Nacos 支持 Eureka 协议直接通过修改客户端配置迁移到 MSE,通过 MSE Sync,同步自建集群和 MSE 集群的数据,在迁移过程中平滑过度,业务无感。
网关白屏化迁移功能
MSE Ingress 是在 MSE 云原生网关之上提供更为强大的 Ingress 流量管理方式。MSE Ingress 将流量网关、微服务网关和安全网关三合一,兼容 K8s Ingress 标准 API,解决了三层网关架构独立设计和独立运维导致的资源消耗大、性能损耗大、稳定性难控、安全防护复杂等难题。MSE 提供了白屏化迁移工具将自建 Nginx Ingress 迁移至 MSE Ingress,有如下两种迁移方式:
复用 Nginx Ingress SLB
原理:在 MSE Ingress 中复用 ACK 集群中 Nginx Ingress Controller 的 Service 创建的 SLB,MSE Ingress 的节点自动添加到原 SLB 的已有监听的虚拟服务器组中,最终通过设置流量权重完成流量迁移。
在保留原有流量链路可用的前提下完成 MSE Ingress 复用已有 SLB,以及自动同步原有的 Nginx Ingress 规则。最后在验证无误后,逐步切流到 MSE Ingress,整个过程可保留原有流量入口 SLB 不变,不需要变更 DNS 切流。
基于 DNS 解析
原理:在 DNS 服务器中对于所有 Nginx Ingress 中关联的业务域名添加 MSE SLB 的解析结果,部分 DNS 服务商提供权重方式控制 Nginx SLB 和 MSE SLB 的流量比。
ACK 快速接入
此次更新将为 ACK(阿里云容器服务)提供全新的微服务治理接入体验升级。提供简化的接入流程,使企业能够更快速、更轻松地将微服务应用接入到 MSE 治理中心,通过几个简单的步骤,即可实现微服务应用的无损上下线,全链路灰度,流量治理等关键功能。
一键安装 ack-onepilot 组件
ACK 应用接入的流程主要是安装治理组件 ack-onepilot,MSE 将之前繁琐的手动步骤,集成到一个接入页面中,可以在这里完成接入 ack-onepilot 的一键安装,大大简化了接入流程:
支持命名空间接入
MSE 支持在指定命名空间下开启 MSE 微服务治理后,该命名空间下的 pod 都会接入到 MSE 微服务治理中,您无需再手动逐个接入:
升级服务自治体系
MSE 升级了 MSE 服务自治体系,提供一套全面而灵活的工具和机制,赋予您自主诊断和排查问题的能力,让您能够自主、快速地识别、定位和解决问题,提高系统的稳定性和可靠性。
统一事件中心
MSE 统一事件中心,这是一款强大的事件管理工具,可以实时响应和全面掌握您的业务关键事件,高效地监控、处理和分析各种事件,确保业务的高可用性和稳定性。
MSE 事件中心的独特功能和优势:
- 实时监控和响应:MSE 事件中心可以实时监控您的业务中发生的各种事件,例如异常、警报、用户操作等。无论是关键性的故障事件还是重要的用户行为,您都能够第一时间获得通知,并且可以通过 MSE 提供的解决方案,自闭环完成风险解除,以确保业务的连续性和稳定性。
- 多渠道通知:MSE 事件中心支持多种通知渠道,包括邮件、短信、即时消息等,让您可以根据个人偏好接收事件通知, 以便及时处理和响应。
- 统一的事件管理:MSE 事件中心提供了一个统一的事件管理平台,让您可以集中处理和管理所有的 MSE 产品事件,包括云原生网关,Nacos,ZooKeeper,服务治理。不再需要在不同的系统和工具之间来回切换,您可以在 MSE 事件中心中一站式处理和跟踪事件。
网关自助排查功能
网关自助排查工具。您可以自助通过错误码,域名,请求路径等多维度线索,快速定位原因,快速定位和解决问题。更高效地解决问题并提高开发效率。排查示例:新创建的服务关联了一条路由,但请求 /get 路由时发现服务无法调通,收到以下返回体:
< HTTP/1.1 503 Service Unavailable
< content-length: 114
< content-type: text/plain
< date: Fri, 11 Aug 2023 08:27:57 GMT
< server: istio-envoy
<
* Connection #0 to host xxx.xxx.xxx.xxx left intact
upstream connect error or disconnect/reset before headers. retried and the latest reset reason: connection failure%
1、进入网关详情页 > 问题排查
2、输入调试时返回的错误码 “503” 和请求路径 “/get” ,查询到了异常请求的记录:
3、发现错误的请求原因是“服务端拒绝连接”,点击详情后看到了对应的解决方案:
通过指引文档检查,发现确实没有为 /get 路由关联的服务进行安全组授权,导致网关无法正常访问到后端服务。
在根据指引完成安全授权后,再次对路由进行调试,得到了正常的状态码 200:
< HTTP/1.1 200 OK
< server: istio-envoy
< date: Fri, 11 Aug 2023 08:39:28 GMT
< content-type: application/json
< content-length: 357
< access-control-allow-origin: *
< access-control-allow-credentials: true
< req-cost-time: 1
< req-arrive-time: 1691743168391
< resp-start-time: 1691743168393
< x-envoy-upstream-service-time: 1
<
MseUtil 问题排查工具
在日常开发和生产环境中,可能会遇到由于网络或者其他因素导致客户端连接 MSE 集群出现异常,此时需要排查集群以及客户端状态,通常需要通过文档查询对应的异常解释来定位问题,排查问题的链路比较长,比较耗时。因此 MSE 提供了一键诊断工具,发现 client -> server 链路上的问题并提供建议,使得问题排查更加快捷。
支持四字命令查询 Server 状态并且兼容 zkCli
mseutil 支持 ZooKeeper 四字命令,例如可通过以下方式进行四字命令查询 Server 当前状态的摘要:
mseutilzookeeper4 lw--serverAddrmse-xxx.aliyuncs.comstat
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 一键诊断,支持查询基础的实例查询注册功能。
mseutilnacos inspect --serverAddr ${实例连接地址}
查询服务实例列表:
mseutilnacos 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 客户端协议,可通过参数切换:
mseutilnacos get instance -s ${serviceName}--v2
从而可以完全覆盖客户端侧所有基本场景,减少问题定位的成本。
MSE Serverless 规划
为了满足用户不断增长的需求,MSE 近期将引入 Serverless 领域。这将使 MSE 更加灵活且易于扩展,为企业提供更多选择和支持。
MSE Serverless 版本的开发计划将致力于以下几个关键方面:
- 强大的弹性和自动扩展:借助 Serverless 架构的优势,MSE 将能够根据实际需求自动进行弹性扩展,以适应流量的变化。这将大大提高服务的可靠性和性能。
- 简化部署和维护:Serverless 架构将使 MSE 的部署和维护更加简单和自动化。用户无需关心底层基础设施的管理,只需专注于业务逻辑的开发和优化。
- 低成本高效率:MSE Serverless 版本将采用按需付费的模式,用户只需按实际使用的资源付费,避免了闲置资源的浪费,降低了成本。同时,Serverless 架构的自动伸缩特性也将提高资源的利用效率。
MSE Serverless 版本的规划将是我们持续创新和满足用户需求的重要一步。我们相信,通过引入 Serverless 架构,MSE 将为企业带来更加灵活、高效的微服务体验,助力企业在快速变革的数字化时代中保持竞争优势。
敬请期待 MSE Serverless 版本的到来!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。