部署并访问 Bookinfo
作为开源的服务网格解决方案,Istio 为微服务提供了强大的流量管理功能。KubeSphere 服务网格扩展组件集成了 Istio,为用户提供一致的微服务管理体验。
本节演示了如何部署由四个独立的微服务组成的示例应用程序 Bookinfo,以及如何通过 NodePort 访问该应用。
Bookinfo 简介
Bookinfo 应用会显示一本书的信息页面,类似于在线书店的一个品类。 此页面上会显示一本书的描述、书籍的细节(ISBN、页数等)以及这本书相关的几条评论。
Bookinfo 应用由以下四个独立的微服务组成。
-
productpage 微服务会调用 details 和 reviews 用来生成页面。
-
details 微服务中包含了书籍的信息。
-
reviews 微服务中包含了书籍相关的评论,它还会调用 ratings 微服务。
-
ratings 微服务中包含了由书籍评价组成的评级信息。
reviews 微服务有 3 个版本:
-
v1 版本不会调用 ratings 服务。
-
v2 版本会调用 ratings 服务,并使用 1 到 5 个黑色星形图标来显示评分信息。
-
v3 版本会调用 ratings 服务,并使用 1 到 5 个红色星形图标来显示评分信息。
下图展示了这个应用的端到端架构。有关更多详细信息,请参见 Bookinfo 应用。
前提条件
操作步骤
1. 部署 Bookinfo
-
使用 project-regular 用户登录 KubeSphere 企业版 Web 控制台,点击企业空间管理并进入项目所在的企业空间,在项目列表中点击 demo-project。
-
在左侧导航栏,选择服务网格 > 自制应用,点击右侧的部署示例应用。
-
在出现的对话框中点击下一步。服务设置页签已经预先填好四个部署(productpage、reviews、details、ratings)的必填字段,您无需修改设置,只需在路由设置页签中点击创建。
2. 验证 Bookinfo 是否部署成功
在左侧导航栏,选择应用负载 >工作负载,检查部署页签中这四个部署的运行状态,若状态都为运行中,则表明 Bookinfo 应用部署成功。
3. 通过 NodePort 访问 Bookinfo
-
在左侧导航栏,选择应用负载 > 服务。
-
点击
productpage
右侧的,选择编辑外部访问。
-
在访问模式中选择 NodePort,点击确定。
-
点击 productpage 进入详情页,在资源状态页签下的端口区域,您可以查看暴露的节点端口。
-
在浏览器中输入
<节点 IP>:<节点端口>
,即可从集群的外部访问 Bookinfo,如下图所示。说明 取决于您的 Kubernetes 集群的部署环境,您可能需要在安全组中放行端口并配置相关的端口转发规则。
-
点击页面左下角的 Normal user,查看 Bookinfo 的完整页面。