云服务器内容精选

  • 解决方案 在连接池中配置idleTimeout,确保网关的idleTimeout数值略低于服务侧的空闲连接保持时间。比如:服务的idletimeout是20s,网关设置15s即可。具体操作请参考连接池配置。 以服务侧的网络代理为Tomcat为例: Tomcat的两个参数keepAliveTimeout和connectionTimeout配置的值都不能小于应用网关中配置的idleTimeout值,配置说明请参考Apache Tomcat 9 Configuration Reference。 配置Tomcat两个参数值,有两种场景: 当为独立的springboot.jar包时,在“application.properties”文件中配置。 当为springboot.war包时,在“server.xml”文件中配置。 在路由中配置重试策略,具体操作请参考配置重试策略。 重试只对幂等请求生效。比如:POST请求无法触发重试策略。
  • 查看应用网关信息 登录微服务引擎控制台。 在左侧导航栏选择“应用网关”。 在实例列表页面,可查看实例“运行状态”。 实例的状态包括: 创建中 可用 不可用 配置中 删除中 升级中 变更中 创建失败 删除失败 升级失败 变更失败 未知(即实例处于未知状态) 单击待查看的实例名称。 只有实例运行状态为“可用”才可单击实例名称进入基础信息页面。 查看如表1所示的应用网关信息。 表1 网关详细信息说明 信息类型 参数 说明 基础信息 名称 创建应用网关时输入的实例名称,单击可复制。单击可以修改网关名称,名称以字母开头,由字母、数字和-组成,且不能以-结尾,长度为3~64个字符。 ID 引擎的ID,单击可复制。 企业项目 创建应用网关时选择的企业项目。 计费方式 创建应用网关时选择的计费方式。 版本 创建的应用网关的版本号。 容量规格 创建应用网关时选择的规格,当网关为小规格时,可单击右侧的“扩容”对网关规格扩容,具体操作请参考扩容应用网关。 节点数 创建应用网关时选择的节点数量。 运行状态 实例的状态。 创建时间 创建应用网关的时间。 可用区 创建应用网关的选择的可用区。 连接信息 内网地址 当创建的负载均衡器开通了IPv4私网,则会显示内网地址。 公网地址 当创建的负载均衡器开通了IPv4公网,则会显示公网地址。 虚拟私有云 创建应用网关时选择的虚拟私有云。 子网 创建应用网关时选择的子网。 负载均衡器名称 创建应用网关时选择的负载均衡器名称,可单击名称进入负载均衡器详细信息页面。 负载均衡器ID 创建应用网关时选择的负载均衡器ID,单击可复制。 访问端口 应用网关的访问端口,默认是支持80和443,也可自定义端口,具体操作请参考编辑访问端口。 负载均衡器 负载均衡器名称/ID 创建应用网关时选择的负载均衡器,可单击负载均衡器ID后的复制。 内网地址 当创建的负载均衡器开通了IPv4私网,则在“内网地址”列显示内网地址。 公网地址 当创建的负载均衡器开通了IPv4公网,则在“公网地址”列显示公网地址。 操作 可对创建应用网关时选择的ELB进行解绑或绑定多个ELB操作。具体操作请参考绑定/解绑负载均衡器。 更多设置 维护时间窗 运维操作时间。单击参数后的可以修改时间窗。具体操作请参考修改应用网关维护时间窗。 标签 显示为应用网关添加的标签,也可单击“标签管理”,根据需要对标签进行相应操作,具体操作可参见管理标签。
  • 操作步骤 在GRPC获取路径下载生产者端geeter_server和消费端greeter_client的代码。 在本地go环境构建出二进制软件包grpc-provider和 grpc-consumer,执行命令如下。 GOOS=linux go build -o grpc-provider main.go GOOS=linux go build -o grpc-consumer main.go 登录Linux弹性云服务器。 请参考Linux弹性云服务器登录方式概述选择相应方式登录弹性云服务器。 将构建好的软件包上传到E CS 上合适的路径下,如根目录“/”。 执行如下命令对grpc-provider和grpc-consumer赋予可执行权限。 chmod +x grpc-provider chmod +x grpc-consumer 执行命令启动生产者。 ./grpc-provider 此时gRpc的生产者端已经被启动了,监听端口是50051。 参考创建服务创建来源类型为“固定IP”的服务。其中“服务地址”为ECS的IP地址,端口为grpc-provider的监听端口,即50051。 参考创建路由在应用网关中创建如下路由。 “路由名称”为“unit-consumer-route”。 “ 域名 ”为“*”的路由, 在路由规则中,添加如下路由规则: “服务地址”的匹配类型选择“前缀匹配”,服务地址输入“/”。 “请求方法”选择选择“POST”、“GET”、“DELETE”和“PUT”。 添加目标服务,“目标服务”为7中创建的服务;“分组”分别选择“ou1”或者“ou2”;“权重”为100。 执行命令使用consumer端进行访问。 ./grpc-consumer {网关IP}:50051 其中网关IP是网关的私网IP,访问成功则有以下结果。
  • 创建应用网关 进入购买应用网关页面。 参考下表设置参数,参数前面带*号的是必须设置的参数。 参数 说明 *企业项目 选择网关所在的项目,可在下拉框中搜索和选择需要的企业项目。 企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。 参考开通企业项目,创建并启用新的企业项目后可以使用,默认选择default。 *引擎名称 输入应用网关名称,名称以字母开头,由字母、数字和-组成,且不能以-结尾,长度为3~64个字符。 *产品版本 目前只支持专业版。 *规格 选择实例规格。当前支持规格有:小型、中型、大型和超大型。 可用区 您可根据实际情况选择可用区。 *版本 只能创建最新版本。 *节点数 选择网关的节点数量,节点数量不少于2个。 *入口网络 为应用网关选择虚拟私有云及子网,此子网作为入口网络,用于选择可用的弹性负载均衡,需与后端VPC子网网络互通,具体操作请参考对等连接。 使用已创建的VPC,可在下拉列表中搜索和选择当前账号已创建的虚拟私有云和子网。 使用新的VPC,可单击“控制台”进入“虚拟私有云”页面,创建新的VPC,具体操作请参考创建虚拟私有云和子网。 使用共享VPC,请在下拉列表选择其他账号共享给当前账号的VPC。 共享VPC基于 资源访问管理 (Resource Access Manager,简称 RAM )服务的机制,VPC的所有者可以将VPC内的子网共享给一个或者多个账号使用。通过共享VPC功能,可以简化网络配置,帮助您统一配置和运维多个账号下的资源,有助于提升资源的管控效率,降低运维成本。有关VPC子网共享的更多信息,请参见共享VPC。 说明: 当应用网关创建完成后,不支持变更虚拟私有云。 *弹性负载均衡 选择已创建的弹性负载均衡。 若当前没有可用的弹性负载均衡,可单击“购买弹性负载均衡”进入弹性负载均衡页面进行购买。 说明: 当前仅支持独享型网络型负载均衡器。默认会使用所选ELB的80、443端口,如果选择的负载均衡器已经占用了部分端口,会创建失败。 ELB被应用网关使用后,为其配置的用于应用网关使用的监听器(即监听器名称中包含应用网关名称)及其关联的后端服务器组和后端服务器均不允许被删除。 *后端网络 为应用网关选择虚拟私有云及子网,此子网作为后端网络,默认同入口网络一致。若同入口网络不一致时,需要打通网络。 使用已创建的VPC,可在下拉列表中搜索和选择当前账号已创建的虚拟私有云和子网。 使用新的VPC,可单击“控制台”进入“虚拟私有云”页面,创建新的VPC,具体操作请参考创建虚拟私有云和子网 使用共享VPC,请在下拉列表选择其他账号共享给当前账号的VPC。 共享VPC基于资源访问管理(Resource Access Manager,简称RAM)服务的机制,VPC的所有者可以将VPC内的子网共享给一个或者多个账号使用。通过共享VPC功能,可以简化网络配置,帮助您统一配置和运维多个账号下的资源,有助于提升资源的管控效率,降低运维成本。有关VPC子网共享的更多信息,请参见共享VPC。 说明: 当应用网关创建完成后,不支持变更虚拟私有云。 各VPC网段不冲突。 当前端ELB与后端网络不同VPC时,需开启ELB的跨VPC后端,具体操作请参考跨VPC后端。 维护时间窗 运维操作时间。单击参数后的可以修改时间窗。具体操作请参考修改应用网关维护时间窗。 标签 用于标识云资源,当您拥有相同类型的许多云资源时,可以使用标签按各种维度(例如用途、所有者或环境)对云资源进行分类。 您可以单击“ 添加标签”,在“添加标签”弹框输入标签键和标签值,添加标签,标签的命名规则请参见管理标签。在“添加标签”弹框,可单击“ 新增标签”同时添加多个标签,也可单击标签后的,删除该标签。 单击“立即购买”,网关开始创建,当“运行状态”为“可用”时,应用网关创建完成。 应用网关创建成功后,“运行状态”为“可用”。查看应用网关状态,请参考查看应用网关信息。
  • 创建证书 登录微服务引擎控制台。 在左侧导航栏选择“应用网关 ”。 单击待操作的实例名称。 在左侧导航栏,选择“证书管理”。 单击“创建证书”,在弹出框中配置如下参数,其中带*为必填参数。 表1 证书配置参数 参数 说明 *证书名称 自定义输入合法的证书名称。支持以点(.)和短划线(-)连接的小写字母和数字,不超过128个字符。 *证书类型 支持域名证书。 *证书文件 在使用HTTPS协议时,服务器证书用于SSL握手协商,需提供证书内容和私钥。证书包含证书的公钥和签名等信息,证书扩展名为“.pem”或“.crt”,您可直接输入证书内容或单击“上传”上传证书文件。 *私钥文件 在使用HTTPS协议时,服务器证书用于SSL握手协商,需提供证书内容和私钥。证书的私钥,私钥扩展名为“.key”,您可直接输入私钥文件内容或单击“上传”上传符合格式的私钥文件。 单击“确定”,完成证书创建。
  • 创建Lua插件 登录微服务引擎控制台。 在左侧导航栏选择“应用网关 ”。 单击待操作的实例名称。 在左侧导航栏选择“插件管理”。 单击“创建Lua插件”,在弹出框中输入如下参数。 表1 创建Lua插件参数 参数名称 描述 插件名称 自定义输入插件名称。 插件描述 自定义输入插件描述信息。 插件脚本 输入插件脚本,通过后台转为转为envoyfilter下发。具体示例请参考Lua插件样例。 单击“确定”,插件创建完成。创建完成后,默认该插件是“未启用”状态,可通过配置Lua插件启用Lua插件和配置其生效力度,也可根据需要在插件右上角单击“编辑”或“删除”对Lua插件进行编辑或删除。
  • Lua插件样例 以下代码将在http请求中加入头部x-lua-filter-request,在http响应中添加头部x-lua-filter-response。 function envoy_on_request(request_handle) request_handle:headers():add("x-lua-filter-request", "from lua filter on request") end function envoy_on_response(response_handle) response_handle:headers():add("x-lua-filter-response", "from lua filter on response") end
  • 配置Lua插件 当Lua插件创建完成后,可以配置该插件的启用状态及生效力度。 登录微服务引擎控制台。 在左侧导航栏选择“应用网关 ”。 单击待操作的实例名称。 在左侧导航栏选择“插件管理”。 单击待配置的Lua插件右下角的“配置”,在“配置Lua插件”弹出框中可配置其启用状态和生效力度。 启用状态:对于未启用的插件可单击启用Lua插件;对于已启用的插件,也可单击禁用Lua插件。 生效力度:可设置插件作用范围,包括“网关全局”和“路由”,当设置作用范围为“路由”时,需要在下拉框中选中某路由。 生效力度为“网关全局”的Lua插件仅支持配置一个。 单击“确定”,插件配置完成。
  • 绑定负载均衡器 绑定负载均衡器修改需要1~5分钟, 期间网关实例不可操作。 最多支持新增绑定3个负载均衡器。 当一个ELB绑定两个网关时,必须保证网关后端网络与ELB所在网络在同VPC下的同子网,或不同VPC下。 登录微服务引擎控制台。 左侧导航栏选择“应用网关 ”。 单击待操作的实例名称。 在“负载均衡器”区域,单击“绑定负载均衡器”。 在“绑定负载均衡器”弹框中,在“弹性负载均衡器”筛选框中选择创建的ELB,也可单击“购买弹性负载均衡”进入购买页面购买弹性负载均衡。 当ELB与后端网络所在VPC不同时,VPC间网络需打通,且需开启ELB的跨VPC后端。 当选择的ELB其端口未被占用时,单击“确定”,当应用网关运行状态由“配置中”变成“可用”时表示绑定成功。 当选择的ELB其端口被占用,且监听器协议为“TCP”时,表示存在部分网关端口在所选的负载均衡器上已存在监听器,继续绑定会修改对应的监听器,会将网关的节点全部加入监听器的后端负载中。勾选“确认绑定”,单击“确定”,当应用网关运行状态由“配置中”变成“可用”时表示绑定成功。 当选择的ELB其端口被占用,且监听器协议为“UDP”、“HTTP”或“HTTPS”时,表示存在部分网关端口在所选的负载均衡器上已存在监听器,且无法绑定该ELB,可单击监听器名称跳转到监听器页面删除该监听器或选择其他的负载均衡器。
  • 操作步骤 进入购买应用网关页面。 参考下表设置参数,参数前面带*号的是必须设置的参数。 参数 说明 *企业项目 选择应用网关所在的项目。 *引擎名称 输入应用网关名称。 产品版本 目前只支持专业版。 *规格 选择实例规格,当前支持规格有:小型、中型、大型和超大型。 可用区 您可根据实际情况选择可用区。 版本 只能创建最新版本。 *节点数 选择网关的节点数量,节点数量不少于2个。 *网络 选择已创建的虚拟私有云及子网。 虚拟私有云可以为您的引擎构建隔离的、用户自主配置和管理的虚拟网络环境。 *弹性负载均衡 选择已创建的弹性负载均衡。 说明: 当前仅支持独享型网络型负载均衡器。会使用所选ELB的80、443端口,如果选择的负载均衡器已经占用了部分端口,会创建失败。 标签 用于标识云资源,当您拥有相同类型的许多云资源时,可以使用标签按各种维度(例如用途、所有者或环境)对云资源进行分类。 您可以单击“ 添加标签”,在“添加标签”弹框输入标签键和标签值,添加标签,标签的命名规则请参见管理标签。在“添加标签”弹框,可单击“ 新增标签”同时添加多个标签,也可单击标签后的,删除该标签。 单击“立即购买”,网关开始创建,当“运行状态”为“可用”时,应用网关创建完成。 应用网关创建成功后,“运行状态”为“可用”。查看应用网关状态,请参考查看应用网关基本信息。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 imagePullPolicy String 拉取OCI镜像的行为 枚举值: UNSPECIFIED_POLICY IfNotPresent Always imagePullSecret String 拉取OCI 镜像的凭据 phase String 确定插件将在过滤器链中的何处注入。 枚举值: UNSPECIFIED_PHASE AUTHN AUTHZ STATS pluginConfig Object 传递给插件的配置。 pluginName String 插件名。 priority Integer 插件的调用优先级。 sha256 String 用于校验插件和容器的校验和。 url String 插件或容器的下载地址。 verificationKey String 校验值。
  • 创建鉴权规则 应用网关最多支持创建5条鉴权规则,最多可同时启用1条鉴权规则。 登录微服务引擎控制台。 在左侧导航栏选择“应用网关 ”。 在左侧导航栏选择“访问控制”。 单击“创建鉴权规则”,在弹出框中配置如下参数,其中带*为必填参数。 表1 鉴权规则配置参数 类别 参数 说明 鉴权类型 *鉴权规则名称 自定义输入合法的鉴权规则名称。 鉴权类型 当前只支持自定义鉴权。 *鉴权服务 可在下拉框中选择已接入该应用网关的服务。 *端口 当“鉴权服务”选择的服务,其来源为CSE Nacos引擎、CSE ServiceComb引擎和CCE服务时,需要配置此参数。 当“鉴权服务”选择的服务,其来源为固定地址时,不存在此参数。 *鉴权接口 鉴权服务的接口路径。网关访问的实际鉴权服务路径为:此处配置的接口路径拼接客户端请求路径。例如此处配置的接口路径为“/auth ”,客户端请求路径为“/hello”,则网关访问的鉴权服务路径为“/auth/hello”。 请求中允许携带的请求头 此处配置的请求头,如果出现在客户端请求中,则会添加到鉴权请求的请求头里。请至少添加鉴权token所在的请求头。Host、Method、Path和Content-Length请求头会被默认添加,您无需手动添加。 请求中是否允许携带Body 可单击设置允许携带Body,输入Body最大字节数, 响应中允许保留的响应头 此处配置的响应头如果出现在鉴权响应中,则会添加到客户端请求的请求头中。需要注意,客户端请求本身携带相同字段的请求头会被覆盖。 超时时间 网关等待鉴权服务响应的最大时间,超时后,会认为鉴权服务不可用。 鉴权服务容错模式 选择鉴权服务容错模式,当前支持: 全部拦截:当鉴权服务不可用时(鉴权服务建立连接失败、超时或者返回5xx请求),网关拦截客户端请求。 全部放通:当鉴权服务不可用时(鉴权服务建立连接失败、超时或者返回5xx请求),网关放通客户端请求。 规则条件 选择鉴权模式 当前支持的鉴权模式为黑名单模式,即符合条件的需要鉴权,其余不需要鉴权。 匹配规则 单击“ 新增匹配规则”可添加匹配规则,选择域名、设置服务地址、选择请求方法,添加请求头。服务地址支持前缀匹配、精确匹配和正则匹配: 前缀匹配:以前缀作为匹配条件。注意末尾要加上/*,如输入参数为/opt/*,则匹配以/opt开头的所有服务地址。 精确匹配:即完全匹配,如输入参数为/opt,则匹配路径等于/opt的所有服务地址。 正则匹配:以正则表达式作为匹配条件,如输入参数为/o[opt][opt],则匹配符合该正则语法的所有服务地址,如/opt、/ooo、/otp等。正则语法规范见RE2正则语法规范。 说明: 多个匹配规则间是“或”的关系。最多允许配置10条匹配规则。单个匹配规则内是“与”的关系。 单击“确定”,鉴权规则创建完成,则在鉴权规则列表显示新创建的鉴权规则。 对于新创建的鉴权规则,默认是关闭状态,可在鉴权规则的“启用状态”列,单击,在弹出确认框中,单击“确认”,则该条鉴权规则为启用状态。 对于已启用的鉴权规则,可在鉴权规则的“启用状态”列,单击,在弹出确认框中,单击“确认”,则关闭该条鉴权规则。