关于本实验
天气预报微服务应用可以提供天气预报、紫外线和天气湿度展示等功能。本实验通过天气预报应用,展示了微服务架构设计理念的应用场景,以及使用ServiceStage管理运行环境、搭建流水线的最佳实践。
天气预报由前端应用和后端应用组成。前端应用weathermapweb采用Node.js进行开发,通过Mesher技术接入微服务引擎,实现前端应用发现后端应用。后端应用采用Java微服务开发框架实现,包括fusionweather、forecast、weather、weather-beta等微服务。
说明:本实验以“北京四”区域为例,学员可以根据实际情况选择相应区域进行实验。环境中涉及多个微服务组件,建议相关名称参照实验手册中的名称进行配置。
实验目的
理解微服务架构设计的理念和应用场景。
掌握使用ServiceStage管理运行环境、搭建流水线的配置方式。
掌握通过ServiceStage进行微服务构建、部署的配置方式和设计原理。
软件介绍
fusionweather是一个聚合微服务,通过访问weather和forecast服务,提供全方位的天气预报功能。forecast服务实现未来几天天气预报查询功能。weather服务实现天气湿度查询功能。weather-beta微服务是weather微服务的新版本,新增了查询指定城市紫外线情况的功能(灰度发布使用,本次实验可以不部署)
微服务部署 对资源准备时获取的 AK/SK 分别进行 base64 编码。请在 Linux 环境下,使用 echo -n '编码内容' | base64 命令。 echo -n ‘4JcP4HEJctjaSomljTguPe6q4FM4EilsiyuGqjNa’ | base64 登录 ServiceStage 控制台,选择“应用管理>应用配置>密钥>创建密钥”。 创建方式:可视化 密钥名称:mesher-secret 所在集群:cluster-servicestage 命名空间:default 密钥类型:Opaque 密钥数据: cse_credentials_accessKey|编码后的 AK; cse_credentials_secretKey|编码后的 SK 准备天气预报源码 需要先登录 GitHub 官网进行账号注册。 登录 GitHub 帐号,在个人主页中点击“Repositories”页签。 点击“New”按钮创建新组织 按照以下配置创建仓库,并点击“Create repository”创建仓库。 在弹出的页面中点击“Import code”按钮导入源码。 在弹出的页面中输入源码地址:https://github.com/servicestage-demo/weathermap.git,点击“Begin import”按钮。 可以看到在仓库中已经成功导入了天气预报服务的相应源码文件。 设置 GitHub 仓库授权 登录 ServiceStage 控制台,选择“持续交付>仓库授权>新建授权”。 授权名称:auth-github 仓库类型:GitHub 授权方式:OAuth|使用 OAuth 授权 登录 ServiceStage 控制台,选择“软件中心>组织管理” 微服务构建 登录 ServiceStage 控制台,选择“持续交付>构建”,单击“基于源码构建”。