云原生下的微服务实践 | 注册中心管理 & Serverless 编排

本文涉及的产品
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
函数计算FC,每月15万CU 3个月
简介:

本文整理自阿里云容器平台技术专家冬岛和阿里云高级工程师草谷的直播分享。

微服务注册中心治理的难点

微服务架构的一个核心理念就是让微服务之间解耦,每一个微服务都可以独立的横向扩展,但这也带来了一定的复杂性。

例如,当业务达到一定的规模之后,微服务的数量和单个微服务实例的数就会变的很多,从而导致微服务注册中心需要管理很多服务地址,同时还需要给所有的上下游提供服务注册和服务发现的能力。这无疑增加了微服务注册中心的维护难度。同时,微服务架构对注册中心的性能和稳定性提出了更高的要求,这给注册中心的运维开发人员,带来了不少的挑战。

此外,在服务升级的过程中需要手动的做灰度的迭代。而传统的部署模式存在一个很大的弊端,就是需要提前准备好资源并部署好应用,传统的部署模式不能很好的根据业务的实时请求做自动弹性,那么这部分提前准备的冗余资源就是极大的浪费。

可见,托管一个基于微服务架构的业务需要解决注册中心的问题,还需要解决应用实例弹性和流量管理的问题,最好还能让资源按需使用、按量付费。

针对上面的这些问题,今天我们给大家带来两款云产品:阿里云微服务引擎 MSE 和 阿里云容器服务 Knative。MSE 给您带来稳定可靠的注册中心服务,让您免去运维注册中心的烦恼。Knative 给您带来云原生应用 Serverless 编排的能力,让您的应用可以按需使用、按量付费,节省您的 IaaS 成本。

微服务引擎 MSE

MSE,是 Microservice Engine 的缩写,名字叫微服务引擎,顾名思义,是解决微服务领域问题的一款产品。

微服务引擎地址:
https://www.aliyun.com/product/mse

他是微服务注册中心和配置中心的一个免运维全托管平台,可以提供给用户独享型的实例集群,并且带有丰富的管理页面。

目前,它支持多种主流的微服务引擎,例如 ZooKeeper,Nacos,Eureka,完全兼容开源引擎标准接口。也可以在阿里云官网首页搜索栏中搜索关键字 MSE,也可进入产品介绍页。

MSE 主要应用在以下 3 个场景:

  • 作为微服务的注册中心,提供微服务应用的服务注册和发现功能。这个是微服务引擎应用最广泛的场景,也是大家最为熟悉的场景;
  • 为分布式应用提供一个中心化的配置管理功能。比如将应用的 DB 链接信息存储在配置中心里;
  • 为分布式应用中提供一致性协调的功能。例如基于 MSE 完成一个分布式锁。

1

Knative (云原生的应用 Serverless 编排引擎)

Knative 是一款基于 Kubernetes 的应用 Serverless 编排引擎。Knative 一个很重要的目标就是制定云原生、跨平台的应用 Serverless 编排标准。Knative 是通过整合容器构建(或者函数)、工作负载管理(弹性)以及事件模型这三者来实现的这一应用 Serverless 标准。Knative 社区的主要贡献者有 Google、Pivotal、IBM、Red Hat。可见其阵容强大。阿里云容器服务已经提供了[ Knative 能力](https://cs.console.aliyun.com/#/k8s/knative/component
),可以到这里查看文档获取帮助信息。

2

Knative Serving 核心能力就是其简洁、高效的应用托管服务,这也是其支撑 Serverless 能力的基础。Knative 提供的应用托管服务可以大大降低直接操作 Kubernetes 资源的复杂度和风险,提升应用的迭代和服务交付效率。当然作为 Severlesss Framework 就离不开按需分配资源的能力,阿里云容器服务 Knative 可以根据您应用的请求量在高峰时期自动扩容实例数,当请求量减少以后自动缩容实例数,可以非常自动化的帮助您节省成本。

Serving 还提供了强大的流量管理能力和灵活的灰度发布能力。流量管理能力可以根据百分比切分流量,灰度发布能力可以根据流量百分比进行灰度,同时灰度发布能力还能通过自定义 tag 的方式进行上线前的测试,非常便于和自己的 CICD 系统集成。

MSE + Knative 实操演练

这部分请请大家尽量看视频,直接感受 Knative 对应用 Serverless 编排的效果。

knative-mse-实操演练,详情请点击这里

小结

MSE 作为一款云产品可以给您提供稳定、可靠的注册中心服务。相对于您自建注册中心而言,MSE 有专业的人员帮助您管理集群,并且可以做到费用比您自建集群使用的 ECS 要低。与此同时还提供了丰富的运维、监控能力,是您注册中心上云的最佳选择。

Knative 作为最流行的云原生应用 Severlesss 编排引擎,其中一个核心能力就是其简洁、高效的应用托管服务(MicroPaaS),这也是其支撑应用 Serverless 能力的基础。Knative 提供的应用托管服务(MicroPaaS) 可以大大降低直接操作 Kubernetes 资源的复杂度和风险,提升应用的迭代和服务交付效率。当然作为应用 Severlesss 编排引擎就离不开按需分配资源的能力,阿里云容器服务 Knative 可以根据您应用的请求量在高峰时期自动扩容实例数,当请求量减少以后自动缩容实例数,可以非常自动化的帮助您节省成本。

希望 MSE + Knative 能在微服务上云过程中帮您减少成本、提升效率。



福利放送

《Knative 云原生应用开发指南》电子书下载地址,点击传送门

欢迎加入 Knative 交流群:

934b9fd9dfc205e6b4a323d2181e3fdf2c10f9ac.jpeg

作者信息:

冬岛,阿里云容器平台技术专家,2014年 深度参与了阿里巴巴全面容器化、连续多年支持双十一容器化链路。专注于容器、Kubernetes、Service Mesh 和 Serverless 等云原生领域。致力于构建新一代 Serverless 平台。当前主导阿里云容器服务 Knative 相关工作。

草谷,阿里云高级工程师,目前负责阿里集团内软负载分布式组件TaoKeeper,商业化产品MSE,分布式服务注册中心及高可用架构领域的相关工作。

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
1天前
|
运维 Cloud Native 持续交付
云原生架构的演进与实践####
【10月更文挑战第16天】 云原生,这一概念自提出以来,便以其独特的魅力和无限的可能性,引领着现代软件开发与部署的新浪潮。本文旨在探讨云原生架构的核心理念、关键技术及其在实际项目中的应用实践,揭示其如何帮助企业实现更高效、更灵活、更可靠的IT系统构建与管理。通过深入剖析容器化、微服务、持续集成/持续部署(CI/CD)等核心技术,结合具体案例,本文将展现云原生架构如何赋能企业数字化转型,推动业务创新与发展。 ####
80 47
|
1天前
|
Kubernetes Cloud Native 持续交付
云计算的转型之路:云原生技术的崛起与实践####
【10月更文挑战第16天】 本文深入探讨了云原生技术在现代IT架构变革中的核心作用,不同于传统概述,本摘要将聚焦于云原生如何促进企业实现敏捷开发、弹性伸缩及高效运维,通过具体案例分析展现其在实际业务场景中的创新应用,揭示这一技术趋势对企业数字化转型的深远影响。 ####
13 2
|
2天前
|
负载均衡 监控 Cloud Native
云原生架构下的微服务治理策略与实践####
在数字化转型加速的今天,云原生技术以其高效、灵活、可扩展的特性成为企业IT架构转型的首选。本文深入探讨了云原生环境下微服务治理的策略与实践路径,旨在为读者提供一个系统性的微服务治理框架,涵盖从服务设计、部署、监控到运维的全生命周期管理,助力企业在云端构建更加稳定、高效的业务系统。 ####
|
6天前
|
敏捷开发 运维 Cloud Native
云端新篇章:云原生技术的崛起与实践
在数字化转型的浪潮中,云原生技术以其独特的优势成为企业实现敏捷开发、弹性扩展和高效运维的关键驱动力。本文将深入探讨云原生的概念、核心组件及其在不同行业的应用案例,揭示其如何赋能业务创新,引领云计算进入新纪元。
|
2天前
|
Cloud Native 持续交付 云计算
云原生技术在现代软件开发中的实践与挑战####
【10月更文挑战第15天】 本文深入探讨了云原生技术的定义、核心组件及其在现代软件开发中的应用,并分析了企业在实施过程中面临的主要挑战及应对策略。通过案例分析,揭示了云原生架构如何助力企业实现敏捷开发、高效运维和成本优化,同时指出了安全性、人才短缺和多云管理等关键问题,为读者提供了全面的理解和实用的建议。 ####
13 1
|
3天前
|
运维 监控 Cloud Native
云原生架构下,微服务治理的艺术与实践####
【10月更文挑战第14天】 在数字化转型的大潮中,云原生技术以其高效、灵活与可扩展性成为企业IT架构的首选。本文深入探讨了云原生架构的核心理念,聚焦于微服务治理的策略与实践,揭示了如何通过精细化管理提升系统的响应速度、稳定性和可维护性。不同于传统的摘要概述,本文摘要旨在直接触及读者关注的核心——即如何在复杂多变的云环境中,实现微服务的高效协同与治理,为读者提供一个清晰的行动指南。 ####
11 1
|
10天前
|
Kubernetes Cloud Native 持续交付
云原生技术在现代应用开发中的实践与展望
【10月更文挑战第7天】随着技术的不断演进,云计算已从简单的资源租用模式转变为支持复杂、高效、灵活的云原生应用架构。本文将深入探讨云原生技术的核心概念及其在现代应用开发中的应用,通过分析Kubernetes容器编排和微服务架构的实践案例,揭示云原生技术如何推动软件开发的现代化进程。文章旨在为开发者和架构师提供一套实用的云原生应用开发指南,同时展望未来云原生技术的发展方向。
20 8
|
12天前
|
Cloud Native 测试技术 持续交付
云原生时代的微服务架构实践
【10月更文挑战第5天】随着云计算的普及,云原生概念逐渐深入人心。微服务架构作为云原生的重要组成部分,它强调服务的小型化、自治性和弹性,以适应快速变化的市场需求。本文将探讨如何在云原生环境中设计并实现高效、可靠的微服务架构,包括选择合适的技术栈和最佳实践,以及如何通过持续集成和持续部署(CI/CD)流程来优化开发和运维工作。
|
9天前
|
Kubernetes Cloud Native Serverless
批处理系统:Batch批量计算与云原生Serverless Argo Workflows
本文对比了Batch批量计算与Serverless Argo Workflows在容器化批处理任务中的应用,分析了两者在任务定义、依赖关系、规模并发、高级编排、可移植性等方面的异同,帮助技术决策者根据自身需求选择合适的平台。
|
9天前
|
Kubernetes Cloud Native 微服务
探索云原生:从理论到实践
【10月更文挑战第8天】本文将带你深入了解云原生技术,从其核心概念和优势出发,逐步过渡到如何实际应用这些理念。我们将通过一个实际的代码示例,展示如何在云平台上部署和管理容器化应用,从而帮助你更好地理解云原生架构的实际应用价值。
19 0

相关产品

  • 函数计算