云服务器内容精选
-
概述 应用程序升级面临最大挑战是新旧业务切换,将软件从测试的最后阶段带到生产环境,同时要保证系统不间断提供服务。如果直接将某版本上线发布给全部用户,一旦遇到线上事故(或BUG),对用户的影响极大,解决问题周期较长,甚至有时不得不回滚到前一版本,严重影响了用户体验。 灰度发布,是版本升级平滑过渡的一种方式,其本质就是根据请求、比例或其他混合条件切分流量,其核心工作是实现多个版本同时在线,并通过一定的流量策略将部分流量切分到灰度版本上,当版本升级时,使部分用户使用新版本,其他用户继续使用老版本,待新版本稳定后,逐步扩大范围把所有用户流量都迁移到新版本上面来。 这样可以最大限度地控制新版本发布带来的业务风险,降低故障带来的影响面,同时支持快速回滚。 图1 灰度发布流程 父主题: 灰度发布
-
YAML编辑基于条件的分流 当前数据选择YAML,在编辑栏进行编辑。YAML设置示例如下(根据实际需求调整配置参数): apiVersion: v1 kind: VirtualService metadata: name: ratings-route spec: hosts: - ratings.prod.svc.cluster.local http: - match: - headers: end-user: exact: jason uri: prefix: "/ratings/v2/" route: - destination: host: ratings.prod.svc.cluster.local
-
创建虚拟私有云 虚拟私有云(Virtual Private Cloud,简称VPC)是用户在华为云上申请的隔离的、私密的虚拟网络环境。用户可以自由配置VPC内的IP地址段、子网、安全组等子服务,也可以申请弹性带宽和弹性IP搭建业务系统。 登录 虚拟私有云VPC 控制台。 单击右上角的“创建虚拟私有云”。 如果无特殊需求,界面参数均可保持默认,单击“立即创建”。 详细参数说明可参考创建虚拟私有云和子网。
-
购买网格 登录应用服务网格ASM控制台,单击“购买网格”进入购买网格页面。 参考购买基础版网格中的指导,创建名称为“asmtest”的网格,选择在创建集群中创建的名称为“cluster-test”的集群,并选择安装Istio控制面的节点,建议选择两个或以上不同可用区的节点。 选择在中创建的名称为“cluster-test”的集群,并选择安装Istio控制面的节点,建议选择两个或以上不同可用区的节点。 展开高级配置,在“命名空间注入配置”中勾选名称为“default”的命名空间,选择重启已有服务。其余参数根据需要设置即可。 图3 基础版网格参数 在可观测性配置中勾选“启用应用指标”,已默认选中“ AOM 服务”。其他可观测性配置根据需要配置即可。 设置完成后,在页面右侧配置清单确认网格配置,确认无误后,单击“提交”。 创建网格预计需要1~3分钟,请耐心等待。当网格状态从“安装中”变为“运行中”,表示网格创建成功。
-
创建密钥对 新建一个密钥对,用于远程登录节点时的身份认证。 登录 数据加密 服务DEW控制台。 选择左侧导航中的“密钥对管理”,单击“创建密钥对”。 输入密钥对名称,单击“确定”。 密钥对名称由两部分组成:KeyPair-4位随机数字,使用一个容易记住的名称,如KeyPair-xxxx_asm。 图1 创建密钥对 您的浏览器会提示您下载或自动下载私钥文件。文件名是您为密钥对指定的名称,文件扩展名为“.pem”。请将私钥文件保存在安全位置。然后在系统弹出的提示框中单击“确定”。 为保证安全,私钥只能下载一次,请妥善保管,否则将无法登录节点。
-
修改灰度版本的流量策略 修改基于流量比例的策略 选择基于流量比例的策略时,一般会逐步加大灰度版本的流量配比,这样可以避免直接切换带来的业务风险。修改流量配比的方法如下: 登录应用服务网格控制台,单击服务网格的名称,进入网格详情页面。 在左侧导航栏选择“灰度发布”,单击金丝雀发布任务的名称。 在“配置流量策略”页面,重新输入灰度版本的流量配比。 假设将灰度版本流量配比调整至x,那么原版本的流量配比自动调整为100-x。 单击“策略下发”。 修改基于请求内容的策略 目前支持基于Cookie内容、自定义Header、Query、操作系统和浏览器的规则约束,只有满足规则约束的流量才可访问到灰度版本。实际应用时,可能会多次修改规则,从而充分验证灰度版本运行效果。 登录应用服务网格控制台,单击服务网格的名称,进入网格详情页面。 在左侧导航栏选择“灰度发布”,单击金丝雀发布任务的名称。 在“配置流量策略”页面,重新配置Cookie内容、自定义Header、Query、允许访问的操作系统或允许访问的浏览器。 单击“策略下发”。
-
切换灰度策略类型 您可以在“基于请求内容”和“基于流量比例”的策略之间切换。策略完成切换后,之前配置的规则将全部失效,所有的流量会根据配置的新策略重新分配。 只有状态为“运行中”的任务才支持流量策略变更,版本发布完成后(即新版本完全接管旧版本流量,且旧版本已下线),将不支持重新配置流量策略。 登录应用服务网格控制台,单击服务网格的名称,进入网格详情页面。 在左侧导航栏选择“灰度发布”,单击金丝雀发布任务的名称。 在“配置流量策略”页面,切换策略类型。 单击“策略下发”。
-
结束灰度任务 当新创建的灰度版本接管全部流量后,您可以选择结束灰度任务。结束灰度任务将下线原版本,其中包含的工作负载和Istio相关配置资源会全部删除。 登录应用服务网格控制台,单击服务网格的名称,进入网格详情页面。 在左侧导航栏选择“灰度发布”,单击灰度发布任务的名称。 在“监测与处理”页面,单击灰度版本后的“全流量接管”。 单击右下角“结束灰度任务”。 在弹出的“结束灰度任务”窗口单击“确定”。 结束的灰度任务可以前往“已结束灰度任务”页签查看,状态显示为“发布成功”。
-
取消灰度任务 当原版本接管全部流量后,您可以选择取消灰度任务。 登录应用服务网格控制台,单击服务网格的名称,进入网格详情页面。 在左侧导航栏选择“灰度发布”,单击灰度发布任务的名称。 在“监测与处理”页面,单击原版本后的“全流量接管”。 单击右下角“取消灰度任务”。也可以在灰度任务列表,单击任务右上角的图标。 在弹出的“取消灰度任务”窗口单击“确定”。 取消的灰度任务可以前往“已结束灰度任务”页签查看,状态显示为“发布取消”。
-
创建蓝绿发布 登录应用服务网格控制台,在左侧导航栏中选择“灰度发布”。在蓝绿发布下,单击“创建”。 配置灰度版本基本信息。 蓝绿发布服务 单击“选择服务”,选择待发布服务。 部署集群 灰度发布服务所属的集群。 发布任务名称 系统自动生成,可根据实际需求进行修改。 版本号 新增服务中灰度版本号。 版本描述 灰度版本描述信息。 根据界面提示的流程图,熟悉灰度发布版本流程,单击“创建”。 部署灰度版本。 实例数量 灰度版本的实例数量。灰度版本可以有一个或多个实例,用户可根据实际需求进行修改。每个灰度版本的实例都由相同的容器部署而成。 镜像名称 默认为该服务的镜像。 镜像版本 请选择需要添加灰度的镜像版本。 单击“部署新版本”,新版本开始创建。 请确保灰度版本的实例状态为正常时,再开始下一步进行灰度策略的配置。 单击“蓝绿策略配置与监控”,您可以在监测灰度运行状态页面,观察灰度版本的运行状态。
-
创建金丝雀发布 登录应用服务网格控制台,在左侧导航栏中选择“灰度发布”。在金丝雀发布下,单击“创建”。 配置灰度版本基本信息。 灰度发布服务 单击“选择服务”,选择添加灰度版本的服务。 部署集群 灰度发布服务所属的集群。 发布任务名称 系统自动生成,可根据实际需求进行修改。 版本号 新增服务中灰度版本号。 版本描述 灰度版本描述信息。 根据界面提示的流程图,熟悉灰度发布版本流程,单击“创建”。 部署灰度版本。 实例数量 灰度版本的实例数量。灰度版本可以有一个或多个实例,用户可根据实际需求进行修改。每个灰度版本的实例都由相同的容器部署而成。 镜像名称 默认为该服务的镜像。 镜像版本 请选择需要添加灰度的镜像版本。 单击“部署灰度版本”,灰度版本开始创建。 请确保灰度版本的实例状态为正常时,再开始下一步进行灰度策略的配置。 单击“配置灰度策略”,进行灰度策略配置(可选)。 策略类型:分为“基于请求内容发布”和“基于流量比例发布”两种类型,通过页签选择确定。 基于请求内容发布 对当前版本配置相应的请求内容规则,服务流量在满足此规则的情况下,会走此版本。例如http请求,请求头cookie必须满足“访问条件”走版本A。 Cookie内容: 正则匹配:此处需要您使用正则表达式来匹配相应的规则。 自定义Header: 完全匹配:当且仅当表达式完全符合此情况时,流量才会走到这个版本。 正则匹配:此处需要您使用正则表达式来匹配相应的规则。 可以自定义请求头的key和value,value支持完全匹配和正则匹配。 允许访问的操作系统:请选择允许访问的操作系统,包括iOS、android、windows、macOS。 允许访问的浏览器:请选择允许访问的浏览器,包括Chrome、IE。 灰度策略规则描述:当前服务的流量转发的规则描述信息及Yaml的查看。 基于流量比例发布 对当前版本配置相应的流量权重,服务流量将会按照权重比率以对应的概率分发当前版本。例如10%的流量走版本A,90%的流量走版本B。 版本流量配比:根据输入的流量配比来确定流量分发的比重。 范围限制为[0,默认版本权重w]。例如,当您配置为10,则10%的服务流量会走向此版本,(w-10)%的流量会走向默认版本,即从默认版本分走一部分流量。 灰度策略规则描述:当前服务的流量转发的规则描述信息及Yaml的查看。 如果当前服务已有灰度版本并配置了灰度策略,则策略类型不可选(灰度版本只能配置一种策略类型),默认为已经配置的策略类型。 基于请求内容发布策略只对直接访问的入口服务有效。如果希望对所有服务有效,需要业务代码对HTTP请求的header信息进行传播。 例如:如果您基于review组件,配置了基于请求内容的灰度发布策略,通过访问productpage组件的界面,是无法看到效果的。 原因为,您的客户端访问productpage组件携带了HTTP请求的header信息,而productpage组件请求reviews组件时,将这些header信息丢失了(详情可参考如何使用Istio调用链埋点),从而失去了基于请求内容的灰度发布效果。 设置完成后,单击“策略下发”。 灰度策略的生效需要几秒时间,您可以在监测灰度运行状态页面,观察灰度版本的运行状态。
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格