本地开发的Spring Cloud应用或者Dubbo应用托管到SAE时,您可以使用SAE的注册中心,也可以自建Nacos提供服务注册与发现功能。本文介绍如何搭建Nacos注册中心,并将应用部署在SAE进行托管。

前提条件

  • 已安装yum。
  • 执行应用程序前,请确保您Nacos注册中心的访问端口(如8848)已添加至您的安全组。

背景信息

某创业公司现在需要将微服务应用托管至SAE,但期望使用自建Nacos注册中心,不使用SAE注册中心。

如果是集群部署,请参见集群部署说明

说明 服务注册中心使用优先级:SAE服务注册中心>MSE的Nacos服务注册中心>自建Nacos。与SAE服务注册中心和MSE的Nacos服务注册中心相比,自建Nacos不仅需要购买各种搭建所需的资源,还需要投入尽力进行维护,耗费资源,增加运维成本。

步骤一:配置Nacos

Nacos依赖Java环境来运行。如果您是从代码开始构建并运行Nacos,还需要为此配置Maven环境。Nacos安装启动后,提供了服务注册发现功能,需要在应用侧指定服务注册中心。在应用程序执行后,系统会依据所设的服务注册中心,自动进行服务注册与发现。

具体操作,请参见Nacos快速开始

步骤二:应用托管至SAE

将本地服务Provider和Consumer应用程序编译为WAR包、JAR包或者镜像,并部署到SAE。具体操作,请参见以下文档:
说明
  • 使用自建Nacos时请确保SAE的网络与自建Nacos的网络互通。
  • 使用自建Nacos为服务注册中心,在部署应用时建议使用镜像方式或者JAR包方式,并配置启动参数-Dnacos.use.endpoint.parsing.rule=false-Dnacos.use.cloud.namespace.parsing=false
    • 如采用镜像方式,请将-Dnacos.use.endpoint.parsing.rule=false-Dnacos.use.cloud.namespace.parsing=false配置在镜像文件中。关于Docker镜像制作方法,请参见制作应用容器Docker镜像
    • 如采用JAR包方式,请在控制台启动命令设置区域的options设置文本框输入-Dnacos.use.endpoint.parsing.rule=false -Dnacos.use.cloud.namespace.parsing=false

如果应用托管失败,请参见以下文档定位问题: