云服务器内容精选

  • 创建虚拟私有云 虚拟私有云(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”。请将私钥文件保存在安全位置。然后在系统弹出的提示框中单击“确定”。 为保证安全,私钥只能下载一次,请妥善保管,否则将无法登录节点。
  • 创建灰度发布 登录应用服务网格控制台,使用以下任意一种方式进入创建灰度任务页面。 (快捷方式)在网格右上方,单击图标。 (快捷方式)在网格中心位置,单击“创建灰度任务”。 在网格详情页创建。 单击网格名称,进入网格详情页,单击左侧导航栏的“灰度发布”。 如果当前不存在发布中的灰度任务,请在金丝雀发布或蓝绿发布中单击“立即发布”;如果当前存在发布中的灰度任务,请单击右上角“灰度发布”。 配置灰度发布基本信息。 灰度类型 选择创建灰度发布的类型,可根据实际需求选择金丝雀发布和蓝绿发布,两者的区别可参考灰度发布概述。 灰度任务名称 自定义灰度任务的名称。输入长度范围为4到63个字符,包含小写英文字母、数字和中划线(-),并以小写英文字母开头,小写英文字母或数字结尾。 命名空间 服务所在的命名空间。 灰度发布服务 在下拉列表中选择待发布的服务。正在进行灰度任务的服务不可再进行选择,列表中已自动过滤。 工作负载 选择服务所属的工作负载。 版本号 当前服务版本号,版本号不支持修改。 图1 灰度发布基本信息 部署灰度版本信息。 部署集群 灰度发布服务所属的集群。 版本号 输入服务的灰度版本号。 实例数量 灰度版本的实例数量。灰度版本可以有一个或多个实例,用户可根据实际需求进行修改。每个灰度版本的实例都由相同的容器部署而成。 镜像名称 默认为该服务的镜像。 镜像版本 请选择灰度版本的镜像版本。 自定义镜像 用户可通过自定义镜像自行配置本地或第三方镜像地址,灰度发布镜像将采用所配置镜像。注意需确保自定义镜像地址有效,镜像可拉取。 图2 灰度版本信息 单击“发布”,灰度版本开始创建。 请确保灰度版本的实例状态正常,且启动进度为100%时,再开始下一步进行流量策略的配置。发布之后进入观察灰度状态页面,可查看Pod监控,包括启动日志和性能监控信息。 (仅金丝雀发布涉及)单击“配置流量策略”,进行流量策略配置。 策略类型:分为“基于流量比例”和“基于请求内容”两种类型,通过页签选择确定。 基于流量比例 根据流量比例配置规则,从默认版本中切分指定比例的流量到灰度版本。例如75%的流量走默认版本,25%的流量走灰度版本。实际应用时,可根据需求将灰度版本的流量配比逐步增大并进行策略下发,来观测灰度版本的表现情况。 图3 基于流量比例 流量配比:可以为默认版本与灰度版本设置流量配比,系统将根据输入的流量配比来确定流量在两个版本间分发的比重。 基于请求内容 目前支持基于Cookie内容、自定义Header、Query、操作系统和浏览器的规则约束,只有满足规则约束的流量才可访问到灰度版本。例如,仅Cookie满足“User=Internal”的HTTP请求才能转发到灰度版本,其余请求仍然由默认版本接收。 图4 基于请求内容 Cookie内容 正则匹配:此处需要您使用正则表达式来匹配相应的规则。 自定义Header 完全匹配:只有完全匹配上才能生效。例如:设置Header的Key=User,Vaule=Internal,那么仅当Header中包含User且值为Internal的请求才由灰度版本响应。 正则匹配:此处需要您使用正则表达式来匹配相应的规则。 可以自定义请求头的key和value,value支持完全匹配和正则匹配。 Query 完全匹配:只有完全匹配上才能生效。例如:设置Query的Key=User,Vaule=Internal,那么仅当Query中包含User且值为Internal的请求才由灰度版本响应。 正则匹配:此处需要您使用正则表达式来匹配相应的规则。 可以自定义Query的key和value,value支持完全匹配和正则匹配。 允许访问的操作系统:请选择允许访问的操作系统,包括iOS、Android、Windows、macOS。 允许访问的浏览器:请选择允许访问的浏览器,包括Chrome、IE。 流量管理Yaml信息:根据所设置的参数自动生成规则YAML。 基于请求内容流量策略只对直接访问的入口服务有效。如果希望对所有服务有效,需要业务代码对HTTP请求的Header信息进行传播。 例如:如果您基于reviews服务,配置了基于请求内容的灰度发布策略,通过访问productpage服务的界面,是无法看到效果的。 原因是,您的客户端访问productpage服务携带了HTTP请求的Header信息,而productpage服务请求reviews服务时,将这些Header信息丢失了(详情可参考如何使用Istio调用链埋点),从而失去了基于请求内容的灰度发布效果。 设置完成后,单击“策略下发”。 灰度策略的生效需要几秒时间,您可以查看服务的流量监控,以及对原始版本及灰度版本的健康监控。
  • 基本概念 灰度版本 一个服务仅支持发布一个灰度版本,可以对灰度版本配置相应的灰度策略。 灰度策略 当您需要在生产环境发布一个新的待上线版本时,您可以选择添加一个灰度版本,并配置相应的灰度策略,将原有的生产环境的默认版本的流量引流一部分至待上线版本。经过评估稳定后,可以将此灰度版本接管所有流量,下线原来的版本,从而接管原有的生产环境的版本上的流量。 暂不支持对已定义delegate VirtualService的服务创建灰度发布。
  • 操作步骤 登录UCS控制台,在左侧导航栏中单击“服务网格”。 单击服务网格名称,进入详情页。 在左侧导航栏,单击“服务中心”下的“网格服务”,进入网格服务列表页面。 单击服务名,进入服务详情页下的“灰度发布”页签。 单击“创建灰度发布”。 设置灰度发布参数: HTTP协议服务路由 表1 HTTP协议服务路由参数 匹配条件参数 URI StringMatch类型,统一资源标识符,可选完全匹配/前缀匹配/正则匹配 输入URI,复选框可选择是否忽略大小写 Scheme StringMatch类型,表示协议采集,可选完全匹配/前缀匹配/正则匹配 输入Scheme Method StringMatch类型,表示请求方法,可选完全匹配/前缀匹配/正则匹配 输入Method Authority StringMatch类型,表示权限配置,可选完全匹配/前缀匹配/正则匹配 输入Authority 头域 Cookie内容 基于HTTP Cookie 计算哈希,可选完全匹配/前缀匹配/正则匹配 输入值 自定义Header 基于HTTP Header 计算哈希,可选完全匹配/前缀匹配/正则匹配 输入键值对 用户代理 根据所需操作系统,选择用户代理 端口 表示请求的服务端口,下拉列表中选择一个可用的端口号 参数 表示匹配URL中的请求参数,可选完全匹配/前缀匹配/正则匹配 输入键值对 源负载标签 map类型的键值对,表示请求来源的负载匹配标签 源命名空间 匹配源服务的命名空间 服务目标参数 版本 选择服务子集版本 流量权重 可以控制实例上接收的流量比例,输入值必须在0到100之间 TLS 协议服务路由 表2 TLS协议服务路由参数 匹配条件参数 sniHost 用于匹配TLS请求的SNI。SNI的值必须是服务路由的hosts的子集 目标子网 目标IP地址匹配的IP子网 端口 访问的目标端口 源负载标签 map类型的键值对,表示请求来源的负载匹配标签 源命名空间 匹配源服务的命名空间 服务目标参数 版本 选择服务子集版本 流量权重 可以控制实例上接收的流量比例,输入值必须在0到100之间 TCP 协议服务路由 表3 TCP协议服务路由参数 匹配条件参数 目标子网 目标IP地址匹配的IP子网 端口 访问的目标端口 源负载标签 map类型的键值对,表示请求来源的负载匹配标签 源命名空间 匹配源服务的命名空间 服务目标参数 版本 选择服务子集版本 流量权重 可以控制实例上接收的流量比例,输入值必须在0到100之间 设置完成后,单击右下角“提交”。 系统自动跳转到服务详情页下的“灰度发布”页签,可以查看到创建的灰度版本、协议类型等详细信息。
  • 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
  • 创建蓝绿发布 登录应用服务网格控制台,在左侧导航栏中选择“灰度发布”。在蓝绿发布下,单击“创建”。 配置灰度版本基本信息。 蓝绿发布服务 单击“选择服务”,选择待发布服务。 部署集群 灰度发布服务所属的集群。 发布任务名称 系统自动生成,可根据实际需求进行修改。 版本号 新增服务中灰度版本号。 版本描述 灰度版本描述信息。 根据界面提示的流程图,熟悉灰度发布版本流程,单击“创建”。 部署灰度版本。 实例数量 灰度版本的实例数量。灰度版本可以有一个或多个实例,用户可根据实际需求进行修改。每个灰度版本的实例都由相同的容器部署而成。 镜像名称 默认为该服务的镜像。 镜像版本 请选择需要添加灰度的镜像版本。 单击“部署新版本”,新版本开始创建。 请确保灰度版本的实例状态为正常时,再开始下一步进行灰度策略的配置。 单击“蓝绿策略配置与监控”,您可以在监测灰度运行状态页面,观察灰度版本的运行状态。
  • 创建金丝雀发布 登录应用服务网格控制台,在左侧导航栏中选择“灰度发布”。在金丝雀发布下,单击“创建”。 配置灰度版本基本信息。 灰度发布服务 单击“选择服务”,选择添加灰度版本的服务。 部署集群 灰度发布服务所属的集群。 发布任务名称 系统自动生成,可根据实际需求进行修改。 版本号 新增服务中灰度版本号。 版本描述 灰度版本描述信息。 根据界面提示的流程图,熟悉灰度发布版本流程,单击“创建”。 部署灰度版本。 实例数量 灰度版本的实例数量。灰度版本可以有一个或多个实例,用户可根据实际需求进行修改。每个灰度版本的实例都由相同的容器部署而成。 镜像名称 默认为该服务的镜像。 镜像版本 请选择需要添加灰度的镜像版本。 单击“部署灰度版本”,灰度版本开始创建。 请确保灰度版本的实例状态为正常时,再开始下一步进行灰度策略的配置。 单击“配置灰度策略”,进行灰度策略配置(可选)。 策略类型:分为“基于请求内容发布”和“基于流量比例发布”两种类型,通过页签选择确定。 基于请求内容发布 对当前版本配置相应的请求内容规则,服务流量在满足此规则的情况下,会走此版本。例如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调用链埋点),从而失去了基于请求内容的灰度发布效果。 设置完成后,单击“策略下发”。 灰度策略的生效需要几秒时间,您可以在监测灰度运行状态页面,观察灰度版本的运行状态。