快速入门:将 Hello World 部署到 Service Fabric 网格

重要

Azure Service Fabric 网格的预览版已停用。 不允许再通过 Service Fabric 网格 API 进行新的部署。 对现有部署的支持将会持续到 2021 年 4 月 28 日。

有关详细信息,请参阅 Azure Service Fabric 网格预览版停用

使用 Service Fabric 网格,可以轻松在 Azure 中创建和管理微服务应用程序,不需要预配虚拟机。 在本快速入门中,你将在 Azure 中创建一个 Hello World 应用程序并将其公开到 Internet。 此操作通过单个命令完成。 只需要几分钟时间,便可以在浏览器中看到此视图:

浏览器中的 Hello World 应用

Service Fabric 网格当前为预览版。 需同意补充使用条款才可使用预览版。 在正式版 (GA) 推出之前,此功能的某些方面可能会有所更改。

如果还没有 Azure 帐户,请在开始前创建一个免费帐户

设置 Service Fabric 网格 CLI

可以使用 Azure Cloud Shell 或 Azure CLI 的本地安装完成本快速入门。 根据这些说明安装 Azure Service Fabric 网格 CLI 扩展模块。

登录 Azure

登录到 Azure 并设置订阅。

az login
az account set --subscription "<subscriptionID>"

创建资源组

创建要将应用程序部署到其中的资源组。 可以使用现有资源组并跳过此步骤。

az group create --name myResourceGroup --location eastus 

部署应用程序

注意

自 2020 年 11 月 2 日起,下载速率限制将应用于 Docker 免费计划帐户对 Docker Hub 发出的匿名和经过身份验证的请求,并且由 IP 地址强制执行。

这些模板使用 Docker Hub 中的公共映像。 请注意,速率可能会受到限制。 有关更多详细信息,请参阅通过 Docker Hub 进行身份验证

使用 az mesh deployment create 命令在资源组中创建应用程序。 运行以下内容:

az mesh deployment create --resource-group myResourceGroup --template-uri https://raw.githubusercontent.com/Azure-Samples/service-fabric-mesh/master/templates/helloworld/helloworld.linux.json --parameters "{'location': {'value': 'eastus'}}" 

上面的命令使用 linux.json 模板部署 Linux 应用程序。 若要部署 Windows 应用程序,请使用 windows.json 模板。 Windows 容器映像大于 Linux 容器映像,可能需要更多时间进行部署。

此命令将生成如下所示的 JSON 代码片段。 在 JSON 输出的 outputs 部分下,复制 publicIPAddress 属性。

"outputs": {
    "publicIPAddress": {
    "type": "String",
    "value": "40.83.78.216"
    }
}

此信息来自 ARM 模板中的 outputs 节。 如下所示,此节引用网关资源来获取公共 IP 地址。

  "outputs": {
    "publicIPAddress": {
      "value": "[reference('helloWorldGateway').ipAddress]",
      "type": "string"
    }
  }

打开应用

在应用程序成功部署后,从 CLI 输出中复制服务终结点的公共 IP 地址。 在 Web 浏览器中打开该 IP 地址。 此时将显示包含 Azure Service Fabric 网格徽标的网页。

检查应用程序详细信息

可以使用 az mesh app show 命令来验证应用程序的状态。 此命令提供你可以跟进的有用信息。

对于本快速入门,应用程序名称为 helloWorldApp,若要收集该应用程序的详细信息,请执行以下命令:

az mesh app show --resource-group myResourceGroup --name helloWorldApp

查看应用程序日志

使用 az mesh code-package-log get 命令查看所部署的应用程序的日志:

az mesh code-package-log get --resource-group myResourceGroup --application-name helloWorldApp --service-name helloWorldService --replica-name 0 --code-package-name helloWorldCode

清理资源

在准备好删除应用程序后,运行 az group delete 命令删除资源组及其包含的应用程序和网络资源。

az group delete --name myResourceGroup

后续步骤

若要了解有关创建和部署 Service Fabric 网格应用程序的详细信息,请继续学习教程。