为ASM实例添加入口网关后,即可部署应用到该实例。本文介绍如何将一个应用示例部署到ASM实例中。

前提条件

背景信息

本文所使用应用示例是一个名为Bookinfo的书评应用。微服务架构如下图所示:
该应用由以下4个微服务构成:
  • Productpage:该微服务会调用Details和Reviews两个微服务,用来生成页面。
  • Details:该微服务包含了书籍的信息。
  • Reviews:该微服务包含了书籍相关的评论,同时会调用Ratings微服务。
  • Ratings:该微服务包含了由书籍评价组成的评级信息。
Reviews微服务有3个版本:
  • v1版本不会调用Ratings服务。
  • v2版本会调用Ratings服务,并使用1到5个黑色星形图标来显示评分信息。
  • v3版本会调用Ratings服务,并使用1到5个红色星形图标来显示评分信息。

操作步骤

  1. 登录容器服务控制台
  2. 在控制台左侧导航栏中,单击集群
  3. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的详情
  4. 在集群管理页左侧导航栏中,单击命名空间
  5. 命名空间页面,单击default命名空间右侧操作列下的编辑
  6. 编辑命名空间对话框中,为该命名空间添加标签,单击添加
    1. 变量名称文本框中输入istio-injection
    2. 变量值文本框中输入enabled
    说明 您也可以通过kubectl执行以下命令为命名空间添加标签。
    kubectl label namespace default istio-injection=enabled
  7. Github的Istio项目库中下载Bookinfo的YAML文件。
  8. 通过kubectl执行以下命令,将Bookinfo应用部署到ASM实例的集群中。
    kubectl apply -f bookinfo.yaml

执行结果

查看Bookinfo应用的部署情况。

  1. 登录容器服务控制台
  2. 在控制台左侧导航栏中,单击集群
  3. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的应用管理
  4. 在工作负载页面单击容器组页签。
  5. 容器组页面,从命名空间下拉列表中选择default,查看到Bookinfo应用部署所对应的Pod信息。
    说明 单击对应Pod 操作列的详情,您可以查看Pod的详细信息。