企业运维训练营之云上网络原理与实践课程 - 第四讲配套实验:使用ALB实现灰度发布

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 灰度发布(又称为金丝雀发布)是一种平滑过渡的发布方式,将老版本应用与新版本应用同时部署在环境中,让一部分用户继续使用老版本应用,一部分用户开始使用新版本应用,然后根据用户使用情况调整新版本流量占比,逐步把所有用户都迁移到新版本应用。

企业运维训练营之云上网络原理与实践课程

第四讲配套实验:使用ALB实现灰度发布

 

视频地址:

https://developer.aliyun.com/learning/course/991/detail/14982

 

一、实验概述

 

灰度发布(又称为金丝雀发布)是一种平滑过渡的发布方式,将老版本应用与新版本应用同时部署在环境中,让一部分用户继续使用老版本应用,一部分用户开始使用新版本应用,然后根据用户使用情况调整新版本流量占比,逐步把所有用户都迁移到新版本应用。

 

实验网址

https://developer.aliyun.com/adc/scenario/exp/765f8b2b28554f518e2eaf0c1ddcda32

 

二、实验目的

 

  • 掌握ALB监听配置
  • 掌握ALB实现灰度发布

 

三、实验步骤

 

1.  创建资源。

 

a.  在体验实验室页面左侧,单击创建资源,创建所需资源。

b.  在页面左侧导航栏中,单机云产品资源列表,查看本次实验资源相关信息。

 

说明:

资源创建过程需要1~3分钟。完成实验资源的创建后,您可以在云产品资源列表查看已创建的资源信息,例如:IP地址、用户名和密码等。

 

2.  了解实验架构。

实验之前需要理解相关理论概念,然后了解整体的实验架构:

 image.png

 

3.  实验准备。

 

注:后台会默认创建好对应的云产品资源,这里仅了解和核实环境和相关配置。

不同学员会有属于自己的ECS实例,请以实际配置中实例的id为准。系统默认资源自动创建过程需要1~3分钟。完成实验资源的自动创建后,您可以在“云产品资源”列表查看已创建的资源信息,例如:IP地址、用户名和密码等(注意:本实验中两台ECS密码相同)。

如下仅供学员了解和参考,不需要去手动创建(如了解,可跳过):


本实验环境已经提前创建ALB实例和2台可以访问公网的ECS实例。ALB已经创建了两个服务器组ALB-APP-V1ALB-APP-V2,将ECS1加入服务器组ALB-APP-V1,将ECS2加入服务器组ALB-APP-V2,监听端口都为80端口。


说明:用于本实验演示所创建的ALB公网域名是alb-1ta6kknir3839pxmip.cn-hangzhou.alb.aliyuncs.com

 image.png

用于本实验演示中两台ECS内网分别是172.16.1.163172.16.41.238

用于本实验演示中两台ECS公网分别是47.100.x.x47.98.x.x

image.png

 

4.  在两台ECS内安装Nginx软件。

 

  • 使用yum安装Nginx应用:

yum -y install nginx

 

  • 安装成功后执行如下两个命令,启用nginx

systemctl start nginx

systemctl enable nginx

 

  • 执行如下命令查看Nginx运行状态是否为running

systemctl status nginx

image.png

 

5.  在两台服务器上部署新老两套应用。

 

ECS1上部署老版本应用,在ECS2上部署新版本应用。

 

/usr/share/nginx/html 目录下创建alb.html文件,本实验以不同的html文件内容区分新旧版本应用来演示。

ECS1文件内容为:APP-Old

ECS2文件内容为:APP-New

 

ECS1

image.png

 

ECS2

image.png

 

6.  创建服务器组,添加服务器。

 

由于资源创建权限限制,本步骤后台已经提前帮助学员完成,已创建两个服务器组ALB-APP-V1ALB-APP-V2,将ECS1加入服务器组ALB-APP-V1,将ECS2加入服务器组ALB-APP-V2,监听端口都为80端口。

 

请学员点击服务器组,核实是否已正确添加ECS和对应的端口。

 image.png

image.png

 

7.  创建HTTP监听,监听端口为80

 

  • 点击ALB实例,进入ALB实例页面;

 image.png

 

  • 点击 监听 标签栏 ,然后点击创建监听;

 image.png

 

  • 创建HTTP监听,监听端口为80,添加ALB-APP-V1服务器组为监听服务器组;

 image.png

image.png

 

8.  访问老版本应用。

 

浏览器输入ALB分配的域名加上对应的html页面进行访问,示例URLhttp://alb-xxx.cn-hangzhou.alb.aliyuncs.com/alb.html,此时可以访问到老版本业务;

 image.png

 

 

9.  配置监听转发规则,基于HTTP标头实现灰度发布。

 

  • 点击对应监听,进入监听界面;

image.png

 

  • 点击转发规则标签页,然后点击插入新规则;

 image.png

 

  • 插入新规则,选择条件为“HTTP标头,输入键为:User-Agent,值为:*Firefox*,则转发到ALB-APP-V2服务器组,此服务器组为新版本应用;

 image.png

 

  • 使用firefox浏览器访问到新版本应用,使用其他浏览器访问依然是老版本应用;

 image.png

 

10. 配置监听转发规则,基于不同服务器组实现灰度发布。

 

  • 删除上一步创建的转发规则,插入新转发规则,匹配条件是路径为/alb.html80%请求转发到老服务器,20%请求转发到新服务器;

 image.png

 

  • 使用Firefox浏览器访问业务网站,访问10次,有8次访问到旧版本应用,2次访问到新版本应用,大概是4:1的比例。

 image.png

 

 

 

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
23天前
|
安全 网络安全 网络虚拟化
优化大型企业网络架构:从核心到边缘的全面升级
大型企业在业务运作中涉及多种数据传输,涵盖办公应用、CRM/ERP系统、数据中心、云环境、物联网及安全合规等多个方面。其复杂的业务生态和全球布局要求网络架构具备高效、安全和可靠的特性。网络设计需全面考虑核心层、汇聚层和接入层的功能与冗余,同时实现内外部的有效连接,包括广域网连接、远程访问策略、云计算集成及多层次安全防护,以构建高效且可扩展的网络生态系统。
优化大型企业网络架构:从核心到边缘的全面升级
|
2天前
|
存储 安全 网络安全
网络安全与信息安全:构建安全防线的多维策略在当今数字化时代,网络安全已成为维护个人隐私、企业机密和国家安全的关键要素。本文旨在探讨网络安全漏洞的本质、加密技术的重要性以及提升公众安全意识的必要性,以期为构建更加坚固的网络环境提供参考。
本文聚焦于网络安全领域的核心议题,包括网络安全漏洞的现状与应对、加密技术的发展与应用,以及安全意识的培养与实践。通过分析真实案例,揭示网络安全威胁的多样性与复杂性,强调综合防护策略的重要性。不同于传统摘要,本文将直接深入核心内容,以简洁明了的方式概述各章节要点,旨在迅速吸引读者兴趣,引导其进一步探索全文。
|
7天前
|
云安全 安全 网络安全
探索云计算与网络安全的共生之道在数字化浪潮席卷全球的今天,云计算作为信息技术的一大革新,正重塑着企业的运营模式与服务交付。然而,随着云服务的普及,网络安全与信息安全的挑战也日益凸显,成为制约其发展的关键因素。本文旨在深入探讨云计算环境下的网络安全问题,分析云服务、网络安全及信息安全之间的相互关系,并提出相应的解决策略,以期为构建一个更安全、可靠的云计算生态系统提供参考。
本文聚焦于云计算环境中的网络安全议题,首先界定了云服务的基本概念及其广泛应用领域,随后剖析了当前网络安全面临的主要威胁,如数据泄露、身份盗用等,并强调了信息安全在维护网络空间秩序中的核心地位。通过对现有安全技术和策略的评估,包括加密技术、访问控制、安全审计等,文章指出了这些措施在应对复杂网络攻击时的局限性。最后,提出了一系列加强云计算安全的建议,如采用零信任架构、实施持续的安全监控与自动化响应机制、提升员工的安全意识教育以及制定严格的合规性标准等,旨在为云计算的安全可持续发展提供实践指南。
25 0
|
27天前
|
存储 编解码 监控
云端加密代码库问题之企业设置网络隔离如何解决
云端加密代码库问题之企业设置网络隔离如何解决
|
4月前
|
负载均衡 算法 应用服务中间件
面试题:Nginx有哪些负载均衡算法?Nginx位于七层网络结构中的哪一层?
字节跳动面试题:Nginx有哪些负载均衡算法?Nginx位于七层网络结构中的哪一层?
110 0
|
4月前
|
负载均衡 应用服务中间件 API
Nginx配置文件详解Nginx负载均衡Nginx静态配置Nginx反向代理
Nginx配置文件详解Nginx负载均衡Nginx静态配置Nginx反向代理
126 4
|
3月前
|
缓存 负载均衡 算法
解读 Nginx:构建高效反向代理和负载均衡的秘密
解读 Nginx:构建高效反向代理和负载均衡的秘密
92 2
|
2月前
|
负载均衡 算法 应用服务中间件
nginx自定义负载均衡及根据cpu运行自定义负载均衡
nginx自定义负载均衡及根据cpu运行自定义负载均衡
32 1
|
2月前
|
运维 负载均衡 算法
SLB与NGINX的异同是什么
SLB与NGINX的异同是什么
120 2
|
4月前
|
负载均衡 应用服务中间件 nginx
解决nginx配置负载均衡时invalid host in upstream报错
在Windows环境下,配置Nginx 1.11.5进行负载均衡时遇到问题,服务无法启动。错误日志显示“invalid host in upstream”。检查发现上游服务器列表中,192.168.29.128的主机地址无效。负载均衡配置中,两个服务器地址前误加了"http://"。修正方法是删除上游服务器列表和proxy_pass中的"http://"。问题解决后,Nginx服务应能正常启动。
310 4
解决nginx配置负载均衡时invalid host in upstream报错