HCIE云服务实验第八期-公有云应用架构设计体验3-weathermap微服务搭建
【摘要】 1 Fork代码到DevCloud中https://hd.devcloud.huaweicloud.com/codehub/project/fc4fd3f3f8274066abc5d9e5e4bfe0ec/codehub/5270841/home 2 创建RDS数据库新建数据库,输入数据库名称为“weathermap_user_db”输入以下SQL命令。执行完成后,返回数据库管理界面,刷新界...
1 Fork代码到DevCloud中
https://hd.devcloud.huaweicloud.com/codehub/project/fc4fd3f3f8274066abc5d9e5e4bfe0ec/codehub/5270841/home
2 创建RDS数据库
新建数据库,输入数据库名称为“weathermap_user_db”
输入以下SQL命令。
执行完成后,返回数据库管理界面,刷新界面,看到已创建一个名为“t_user”的数据表。
3 K8S集群
返回微服务云应用平台K8S集群界面,看到已存在两个节点,对已有弹性IP的节点设置标签,点击“标签管理”
在“标签管理”对话框中,点击“添加标签”,输入键信息为“ip”,值信息为“public”,然后点击“确认”
4 构建天气预报微服务应用
在微服务云应用平台上选择“持续交付>构建>基于源码构建”。
6个微服务应用fusionweather、forecast、weather、weather-beta、userservice、edge构建方法相同:
weathermap-weathermapweb:
5 部署天气预报微服务应用
在微服务云应用平台“应用管理>应用列表”界面下点击“创建应用”
选择应用类型为“ServiceComb”
按上述方法部署微服务weather、weather-beta、fusionweather
为fusionweather添加外部访问方式
按上述方法部署微服务userservice
部署微服务edge,为edge添加内网访问方式
部署微服务weathermapweb
返回应用页面,点击weathermapweb的域名,在弹出页面中输入任意用户名和电话号码
看到天气预报微服务应用已部署完成
6 ServiceStage服务治理
6.1 负载均衡
选择“fusionweather”微服务
在“fusionweather”微服务界面,点击右上角“治理”
点击“负载均衡>新增”,选择微服务为“weather”,会话保持时间“300”,失败次数阈值“5”,点击“确定”。
此时回到servicestage微服务云应用平台,在应用列表中,停止刚刚进行会话粘滞(不带紫外线版本)的weather微服务
返回到天气预报应用的界面,并进行刷新,可以看到weather模块的界面切换到了有紫外线版本上面。
返回服务治理界面,删除刚刚设置的负载均衡策略
6.2降级
在服务治理界面,点击“降级>新增”,填写以下参数后,点击“确定”。
降级对象:forecast
降级对象方法:forecase.getForecast
降级策略:开启
weathermapweb服务的页面,可看到中间forecast微服务对应的模块已无法显示,说明降级策略生效。
返回服务治理界面,删除刚刚创建的降级策略
6.3 熔断
在服务治理界面,选择“熔断”,点击“新增”。填写以下熔断参数后,点击“确定”。
熔断对象:weather
熔断对象方法:weather.showCurrentWeather
触发条件:手动熔断
weathermapweb服务的页面,可以看到weather模块的显示出现错误。
返回服务治理界面,删除刚刚设置的熔断
6.4 错误注入
在服务治理界面,选择“错误注入”,点击“新增”。填写以下错误注入参数后,点击“确定”。
注入对象:weather
注入对象方法:weather.showCurrentWeather
类型:错误
协议:Rest
http错误码:404
触发概率50%
weathermapweb服务的页面,可以看到weather模块的显示出现错误,当刷新时恢复正常,正常页面和错误页面交替出现。
返回服务治理界面,删除刚刚设置的错误注入
6.5 限流
在服务治理界面,双击forecast服务
点击“限流>新增”,填写以下参数后,点击“确定”。
限流对象:fusionweather
QPS:10
打开加压工具jmeter
修改HTTP请求中的“服务器名称或IP”以及“端口号”,输入fusionweather服务对应的外部访问地址及端口号
打开weathermapweb服务的页面,可以看到当流量上升时,forecast模块已无法显示。
当停止加压工具运行时,刷新页面,可以发现页面恢复正常
返回服务治理界面,删除刚刚设置的限流策略。
6.6 灰度发布
进入“weather”服务界面,选择“灰度发布”,点击“添加灰度发布规则”
打开weathermapweb服务的页面,在搜索栏中输入“hangzhou”。可以看到杭州的天气有紫外线模块,其他城市天气无紫外线模块。说明灰度发布已生效。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)