阿里云服务网格ASM公测来袭系列之五:部署应用到ASM的数据面集群中

前面的系列文章中已经提到Istio社区网站提供了一个适合于初学者的Bookinfo示例,通过这个示例可以很快了解它的一些基础概念和能力。同样地,在阿里云服务网格ASM产品中也提供了一个如何部署该Bookinfo示例的快速入门。
本文介绍如何将一个应用示例部署到服务网格ASM 实例中的数据面集群中。

欢迎扫码入群进一步交流:
阿里云服务网格ASM公测来袭系列之五:部署应用到ASM的数据面集群中

前提条件

  • 已创建至少一个 ASM 实例,并已添加至少一个 ACK 集群到该实例中。
  • 已通过 Kubernetes 命令行客户端 kubectl 连接到 ASM 实例中新添加的 ACK 集群,详情参见通过 kubectl 连接 Kubernetes 集群
  • 本文中的应用示例需要对外暴露访问,因此需要提前为集群添加入口网关。

背景信息

本文所使用应用示例是一个名为 Bookinfo 的书评应用。微服务架构如下图所示:

阿里云服务网格ASM公测来袭系列之五:部署应用到ASM的数据面集群中

该应用由以下 4 个微服务构成:

  • Productpage:该微服务会调用 Details 和 Reviews 两个微服务,用来生成页面。
  • Details:该微服务包含了书籍的信息。
  • Reviews:该微服务包含了书籍相关的评论,同时会调用 Ratings 微服务。
  • Ratings:该微服务包含了由书籍评价组成的评级信息。

Reviews 微服务有 3 个版本:

  • v1 版本不会调用 Ratings 服务。
  • v2 版本会调用 Ratings 服务,并使用 1 到 5 个黑色星形图标来显示评分信息。
  • v3 版本会调用 Ratings 服务,并使用 1 到 5 个红色星形图标来显示评分信息。

部署应用

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

执行结果

查看 Bookinfo 应用的部署情况。

  • 登录容器服务控制台,在左侧导航栏中选择应用 > 容器组。
  • 在容器组(Pod)页面,从集群下拉列表中选择对应的集群,从命名空间下拉列表中选择default。
    在容器组(Pod)页面可以查看到 Bookinfo 应用部署所对应的 Pod 信息。
  • 如需查看详细信息,单击对应 POD 操作列的详情。
    阿里云服务网格ASM公测来袭系列之五:部署应用到ASM的数据面集群中
上一篇:阿里云服务网格ASM公测来袭!


下一篇:阿里云服务网格ASM助力实现零信任、强化应用服务安全性