云服务器内容精选

  • 连通云专线与API网关 创建VPC。如果已有VPC,可跳过此步骤。 具体操作请参考《虚拟私有云 VPC》。 专享版API网关需要绑定1个VPC,将本地数据中心与VPC之间建立云专线后,API网关即可访问本地数据中心的服务。 需要为API网关规划1个子网段。 一条云专线只能打通本地数据中心到1个VPC的网络,您在云上的资源,建议都绑定到同一VPC中,避免不同VPC都需要使用云专线访问本地数据中心带来的成本增加。 图2 创建VPC示例参考 创建专享版API网关。 具体请参考购买专享版API网关章节。 购买云专线。 购买一条连接本地数据中心到华为云API网关(所绑定的虚拟私有云)的云专线,请按以下操作顺序执行: 购买物理连接接入 即购买一条连接本地数据中心与华为云的运营商线路。建议您选择“一站式接入”,华为云负责施工工程。 如果已有数据中心到华为云的物理连接,可直接使用。 创建虚拟网关 虚拟网关用于关联专享版API网关绑定的VPC。 在选择VPC网段时,需要添加专享版API网关所使用的网段,表示允许专线可访问的VPC子网。可在专享版API网关控制台查询网段详情。 创建虚拟接口 虚拟接口将物理连接与虚拟网关(配置了VPC和网段)关联绑定,打通物理与专享版API网关所在VPC的网络。 注意远端网关与远端子网要分别配置您本地数据中心的开放API接口访问的网关和子网。例如您本地数据中心的API调用地址为http://192.168.0.25:80/{URI},则远端网关和远端子网要配置192.168.0.25所在的子网段与网关。 配置本地路由 如果本地数据中心的子网不在以下三个大子网段内,暂时不支持配置本地路由:10.0.0.0/8-24、172.16.0.0/12-24、192.168.0.0/16-24。 验证网络连通。 再创建一台按需的E CS ,选择与专享版API网关相同的VPC、子网与安全组。只要本地数据中心能连通ECS,则与专享版API网关也能连通。 连通云专线与API网关后,然后使用专享版API网关开放API。
  • 应用场景 API网关的后端服务有3类部署形态: 后端服务部署在虚拟私有云(以下简称VPC)中,仅支持私有地址访问。 可在API网关创建VPC通道,利用VPC通道,打通API网关与虚拟私有云的网络路由。 后端服务部署在公网环境中,即可以直接通过公网地址访问。 后端服务部署在本地数据中心,且不能通过公网地址直接访问。 如果您使用专享版API网关,可为本地数据中心搭建一条与API网关(所绑定的华为云VPC)之间的专线。 本节针对后端服务部署在本地数据中心的场景,介绍使用API网关开放API的实践步骤。
  • 操作流程 创建函数 创建自定义的前端函数,使用函数服务开发自定义认证。 创建自定义认证 创建自定义认证,类型选择“前端”,函数地址选择上一步创建的函数。 创建API 安全配置中的安全认证选择APP认证,并勾选“支持双重认证”,选择上一步创建的自定义认证。 创建凭据 使用APP认证的API,需要在API网关中创建一个凭据,生成凭据ID和密钥对(Key、Secret)。 绑定API 将创建的凭据绑定API后,才可以使用APP认证调用API。 验证 调用API,验证双重认证是否设置成功。
  • 创建ECS 进入云服务器控制台。 单击“购买弹性云服务器”。 基础配置后,单击“下一步:网络配置”。 表9 基础配置 参数 配置说明 计费模式 选择“按需计费”。 区域 选择弹性云服务器所属区域,且与VPC2同一区域。 可用区 选择弹性云服务器所属可用区。 CPU架构 默认“x86计算”。 规格 根据业务规划,选择规格。 镜像 根据业务规划,选择镜像。 虚拟私有云 选择已创建的虚拟私有云“VPC2”。 主网卡 选择已创建的虚拟私有云的子网。 安全组 选择专享版实例中已创建的安全组。 弹性公网IP 选择“暂不购买”。 云服务器名称 填写弹性云服务器名称。 登录凭证 登录云服务器凭证,此处默认“密码”。 用户名 默认“root”。 密码 填写登录云服务器的密码。 确认密码 保证密码正确性。 企业项目 此处选择“default”。 同意协议声明后,单击“立即购买”。
  • 创建实例 进入API网关控制台。 在左侧导航栏选择“实例管理”。 单击“购买实例”。 表3 实例信息 参数 配置说明 计费模式 选择实例的计费模式,此处选择“按需计费”。 区域 选择实例所在的区域,且与VPC1同区域。 可用区 选择实例所在的可用区,此处选择“可用区1”。 实例名称 填写实例的名称,根据规划自定义。 实例规格 选择实例的容量规格,实例创建后规格不可修改,此处选择“专业版”。 可维护时间窗 选择技术支持对实例进行维护的时间段,建议选择业务量较少的时间段,保持默认设置“22:00:00---02:00:00”。 企业项目 选择实例所属的企业项目,保持默认设置“default”。 网络 选择已创建的虚拟私有云“VPC1”和子网。 安全组 单击“管理安全组”,创建安全组,企业项目选择“default”后,即可创建。 描述 填写实例的描述信息。 单击“立即购买”。 规格确认无误后,勾选用户协议和隐私政策的阅读并同意声明。开始创建实例,界面显示创建进度。
  • 设置错误响应 调用API如果输入错误的认证信息,则返回结果如下: 1 {"error_msg":"Incorrect authentication information: frontend authorizer","error_code":"APIG.0305","request_id":"36e42b3019077c2b720b6fc847733ce9"} 为了让API响应结果为函数中返回的context中的字段(如果您使用的是专享版网关,并且实例支持authorizer_context_support_num_bool特性,那么context中的value的类型可以为boolean类型或number类型),需要修改网关响应模板。在API所在分组中,“分组信息”页签下的“网关响应”区域,编辑自定义认证失败的响应详情,将响应状态码改为401,将消息模板改为(引用变量为boolean类型或number类型时,变量不需要加双引号): 1 {"code":"$context.authorizer.frontend.code","message":"$context.authorizer.frontend.message", "authorizer_success": "$context.authorizer.frontend.authorizer_success"} 修改之后,调用API传入错误的认证信息,返回状态码为401,返回结果如下: 1 {"code":"1001","message":"incorrect username or password","authorizer_success": "false"}
  • 编写自定义认证函数 在 函数工作流 的控制台编写函数,自定义认证的代码编写指南参见创建用于前端自定义认证的函数。 根据下表参数说明,在函数工作流页面创建一个函数。 表1 函数信息配置 参数 配置说明 选择创建方式 默认“创建空白函数”。 函数类型 默认“事件函数”。 区域 与API网关相同区域。 项目 华为云的区域默认对应一个项目,这个项目由系统预置,用来隔离物理区域间的资源(计算资源、存储资源和网络资源),以默认项目为单位进行授权,用户可以访问您账号中该区域的所有资源。此处默认为已选择的区域。 函数名称 根据规划自定义名称。 企业项目 企业项目是项目的升级版,针对企业不同项目间资源的分组和管理,是逻辑隔离。此处默认“default”。 委托名称 用户委托函数工作流去访问其他的云服务。此处选择“未使用任何委托”。 运行时 选择Python 3.6。 函数创建完成后,进入函数详情。在“代码”页签,将以下代码复制到index.py中(如果您使用的是专享版网关,并且实例支持authorizer_context_support_num_bool特性,那么context中的value的类型可以为boolean类型或number类型)。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 # -*- coding:utf-8 -*- import json def handler(event, context): #以下表示认证信息匹配正确,则返回用户名, if event["headers"]["authorization"]=='Basic dXN****cmQ=': return { 'statusCode': 200, 'body': json.dumps({ "status":"allow", "context":{ "user_name":"user1" } }) } else: return { 'statusCode': 200, 'body': json.dumps({ "status":"deny", "context":{ "code": "1001", "message":"incorrect username or password", "authorizer_success": "false" } }) }
  • 操作流程 编写自定义认证函数 创建一个函数作为用户自己的认证服务。 创建自定义认证 在APIG中创建一个自定义认证,将函数服务接入APIG。 创建自定义认证的API 创建一个自定义认证方式的API。 设置错误响应 为了让API响应结果为函数中返回的context中的字段,需要修改网关响应。 映射后端参数 添加系统参数,将函数返回的context信息传到后端。 验证 调用API,观察是否成功返回函数的context信息。
  • 适用计费项 表1 按需计费适用计费项 计费项 说明 版本(实例规格) API网关提供的实例版本有:基础版、专业版、企业版、铂金版等,您可以根据实际业务需要按需使用。实例版本说明,请参考产品规格。如果您当前使用的实例版本不能满足需要,API网关支持升级产品版本,例如从“基础版”升级到“专业版”或者铂金版,并且对现有业务没有影响。 实例版本单价,请参考价格详情中的按需计费价格。 公网带宽 使用的公网入口和公网出口带宽大小。 购买时长 使用实例或公网带宽的时间长度,按小时计费,精确到秒。 购买个数 实例的个数。 假设您计划使用1个专业版实例,开启公网出口,公网带宽大小为5Mbit/s,使用时长1小时,在价格计算器页面底部,您将看到所需的配置费用。 图1 按需计费配置费用示例 配置费用包括版本、公网带宽、实例数以及使用时长。
  • 计费周期 按需计费时,实例按秒计费,每一个小时整点结算一次费用(以GMT+08:00时间为准),结算完毕后进入新的计费周期。计费的起点以部署在API网关上实例启动运行的时间点为准,终点以实例删除的时间为准。 例如,您在2023/03/10 8:45:30部署了专业版实例,然后在9:30:00将其全部删除,则计费周期分为如下两个时间段: 8:00:00~9:00:00时间段,在8:45:30~9:00:00间产生费用,该计费周期内的计费时长为870秒。 9:00:00~10:00:00时间段,在9:00:00~9:30:00间产生费用,该计费周期内的计费时长为1800秒。
  • 升级实例版本后对计费的影响 如果您当前使用的实例版本不能满足需要,API网关支持升级产品版本,例如从“基础版”升级到“专业版”或者铂金版,并且对现有业务没有影响。 如果您在一个小时内升级了实例版本,将会产生多条计费信息。每条计费信息的开始时间和结束时间对应不同配置在该小时内的生效时间。 例如2023/03/10 9:00:00,您部署运行了专业版实例(假设实例版本单价为12.88元/小时/实例,公网带宽单价为0.063元/小时/实例)。并在9:30:00升级实例版本到企业版(假设实例版本单价为19.36元/小时/实例,公网带宽单价为0.063元/小时/实例),那么在9:00:00 ~ 10:00:00间会产生两条计费信息: 第一条对应9:00:00 ~ 9:30:00,按照专业版计费。则参考计费项中的计费公式,该计费时间段内的费用为:1800÷3600x12.88x1+1800÷3600x0.063x1=6.47(元)。 第二条对应9:30:00 ~ 10:00:00,按照企业版计费。则参考计费项中的计费公式,该计费时间段内的费用为:1800÷3600x19.36x1+1800÷3600x0.063x1=9.71(元)。
  • 计费示例 假设您在2023/03/10 8:45:30部署专业版实例(假设实例版本单价为12.88元/小时/实例,公网带宽单价为0.063元/小时/实例),然后在9:30:00将其全部删除,则计费周期分为如下两个时间段: 8:00:00~9:00:00时间段,在8:45:30~9:00:00间产生费用,该计费周期内的计费时长为870秒。则参考计费项中的计费公式,该计费时间段内的费用为:870÷3600x12.88x1+870÷3600x0.063x1=3.13(元)。 9:00:00~10:00:00时间段,在9:00:00~9:30:00间产生费用,该计费周期内的计费时长为1800秒。则参考计费项中的计费公式,该计费时间段的费用为:1800÷3600x12.88x1+1800÷3600x0.063x1=6.47(元)。
  • 到期后影响 下图描述了包年/包月实例各个阶段的状态。购买后,在计费周期内实例正常运行,此阶段为有效期;实例到期而未续费时,将陆续进入宽限期和保留期。 图2 包年/包月实例生命周期 到期预警 包年/包月实例在到期前第7天内,系统将向用户推送到期预警消息。预警消息将通过邮件、短信和站内信的方式通知到华为云账号的创建者。 到期后影响 当您的包年/包月实例到期未续费,首先会进入宽限期,实例状态变为“已过期”。宽限期内您可以正常访问实例。如果您在宽限期内仍未续费包年/包月实例,那么就会进入保留期,实例状态变为“已冻结”,您将无法对处于保留期的包年/包月实例执行任何操作。 保留期到期后,若包年/包月实例仍未续费,那么实例将被释放,数据无法恢复。 华为云根据客户等级定义了不同客户的宽限期和保留期时长。 关于续费的详细介绍请参见续费概述。
  • 配额限制 如果您需要修改默认限制值,请参考如何申请扩大配额。专享版更多参数配置,请参见配置参数。 新增或修改的APIG资源存在数据同步延迟,需要5-10秒才生效。 在高并发情况下会出现略超最大配额数限制的情况,不影响资源的正常使用。 表3 专享版配额管理明细 限制项 默认限制 能否修改 实例数量 每个用户最多创建5个实例。 √ API分组数量 每个实例最多创建1500个API分组。 √ API数量 每个实例: 基础版:250 专业版:800 企业版:2000 铂金版:8000 √ API数量 每个分组最多创建1000个API。 x 后端策略数量 每个实例最多创建5个后端策略。 √ 凭据数量 每个实例最多创建50个凭据。凭据配额包括用户自行创建的应用。 √ 流控策略数量 每个实例最多创建300个流控策略。 用户流量限制不超过API流量限制。 应用(凭据)流量限制不超过用户流量限制。 源IP流量限制不超过API流量限制。 √ 环境数量 每个实例最多创建10个环境。 √ 签名密钥数量 每个实例最多创建200个签名密钥。 √ 访问控制策略数量 每个实例最多可以创建100个访问控制策略。 √ VPC通道(负载通道)数量 每个实例最多创建200个VPC通道。 √ 变量数量 每个分组在任意一个环境中,最多创建50个变量。 √ 独立 域名 数量 每个分组最多可以绑定5个独立域名。 √ 云服务器数量 每个VPC通道最多添加10个云服务器。 √ 参数数量 每个API最多创建50个参数。 √ 发布历史数量 同一个API在每个环境中最多记录10条最新的发布历史。 √ 每个API的访问频率 不超过6000次/秒。 √ 特殊应用(凭据) 每个流控策略最多可创建30个特殊应用。 √ 特殊租户 每个流控策略最多可创建30个特殊租户。 √ 子域名(调试域名)访问次数 每个子域名每天最多可以访问1000次。 x 调用请求包的大小 API每次最大可以调用12M的请求包。 √ TLS协议 支持TLS1.1和TLS1.2,推荐使用TLS1.2。 √ 自定义认证数量 每个实例最多创建50个自定义认证。 x 插件数量 每个实例最多创建500个插件策略。 √ HTTP协议 使用HTTP协议时,URL+Header的大小上限为32K。 x 表4 共享版配额管理明细 限制项 默认限制 能否修改 API分组数量 每个用户最多创建50个API分组。 √ API数量 每个用户最多创建200个API。 √ 后端策略数量 每个用户最多创建5个后端策略。 √ 应用数量 每个用户最多创建50个应用。应用配额包括用户自行创建的应用和API云商店购买API生成的应用。 √ 流控策略数量 每个用户最多创建30个流控策略。 用户流量限制不超过API流量限制。 应用流量限制不超过用户流量限制。 源IP流量限制不超过API流量限制。 √ 环境数量 每个用户最多创建10个环境。 √ 签名密钥数量 每个用户最多创建30个签名密钥。 √ 访问控制策略数量 每个用户最多可以创建100个访问控制策略。 √ VPC通道数量 每个用户最多创建30个VPC通道。 √ 变量数量 每个分组在任意一个环境中,最多创建50个变量。 √ 独立域名数量 每个分组最多可以绑定5个独立域名。 √ 云服务器数量 每个VPC通道最多添加200个云服务器。 √ 参数数量 每个API最多创建50个参数。 √ 发布历史数量 同一个API在每个环境中最多记录10条最新的发布历史。 √ 每个API的访问频率 不超过200次/秒。 √ 特殊应用 每个流控策略最多可创建30个特殊应用。 √ 特殊租户 每个流控策略最多可创建30个特殊租户。 √ 子域名访问次数 每个子域名每天最多可以访问1000次。 x 调用请求包的大小 API每次最大可以调用12M的请求包。 x 自定义认证数量 每个用户最多创建20个自定义认证。 √
  • 实例 表1 实例约束与限制 限制项 约束与限制 用户权限 如果您使用系统角色相关权限,需要同时拥有“APIG Administrator”和“VPC Administrator”权限才能创建实例。 如果您使用系统策略,则拥有“APIG FullAccess”权限即可。 如果您使用自定义策略,请参考APIG自定义策略。 网络 如果用户使用192.x.x.x或10.x.x.x网段,APIG则会使用172.31.32.0/19作为内部网段。 如果用户使用172.x.x.x网段,APIG则会使用192.168.32.0/19作为内部网段。 子网中可用私有地址数量 API网关专享实例的基础版、专业版、企业版,以及铂金版分别需要3、5、6、7个私有地址。在铂金版的基础上,铂金版X依次增加4个私有地址。例如,铂金版x2需要11个私有地址,铂金版x4需要19个私有地址。请确保您选择的子网段有足够多的私有地址可用,私有地址可在虚拟私有云服务的控制台查询。 负载 创建实例后,不支持修改虚拟私有云(负载)。 负载均衡模式为LVS模式或ELB模式。当前仅墨西哥城一、北京一区域支持LVS模式,其他区域支持ELB模式。 规格 规格变更过程中,长连接会发生闪断,需要重新建链,建议业务低峰期进行规格变更。 只能升配到更高规格,无法降配规格。 规格变更时,出私网IP会发生变化,如有相关防火墙配置或者白名单配置需要完全放通,防止网络问题导致业务受损!变更期间请勿对实例进行任何操作!变更完成后,请根据业务需要重新调整相关防火墙配置或者白名单配置。 安全组 仅墨西哥城一、北京一区域配置的安全组生效。在其他区域购买实例后安全组不生效,如需禁用部分IP请使用访问控制策略。