华为云用户手册

  • 配置参数说明 表1 配置参数说明 参数 说明 Name 响应头名称。每个策略中不能添加重复名称的响应头(不区分大小写),且最多添加10条响应头。 Value 响应头的值。当“Action”为“Delete”时响应头的值不生效,可为空。 Action 响应头操作,您可以覆盖、添加、删除、跳过或新增指定的响应头。 Override:覆盖 当API响应中存在指定的响应头时,使用当前响应头的值覆盖已有响应头的值。 当API响应中存在多个与指定响应头相同名称的响应头时,该操作只会按当前响应头的值返回一条响应头记录。 当API响应中不存在指定的响应头时,添加当前响应头。 Append:添加 当API响应中存在指定的响应头时,将当前响应头的值添加到已有响应头值之后,用逗号分隔。 当API响应中存在多个与指定响应头相同名称的响应头时,会将多个响应头的值用“,”拼接后,再添加当前响应头的值。 当API响应中不存在指定的响应头时,添加当前响应头。 Delete:删除 当API响应中存在指定的响应头时,删除当前响应头。 当API响应中存在多个与指定响应头相同名称的响应头时,删除所有相同名称的响应头。 Skip:跳过 当API响应中存在指定的响应头时,跳过当前响应头。 当API响应中存在多个与指定响应头相同名称的响应头时,均不作处理直接返回。 当API响应中不存在指定的响应头时,添加当前响应头。 Add:新增 无论API响应中是否存在指定的响应头,都添加当前响应头。
  • 操作步骤 进入API网关控制台页面。 在左侧导航栏选择“实例管理”。 在已创建的实例上,单击“查看控制台”或实例名称。 单击“终端节点管理”页签,查看终端节点信息,详细信息可参考终端节点管理。 表1 终端节点信息 参数 说明 服务信息 展示的名称由{region}.{终端节点服务名称}.{终端节点服务ID}组成。您在购买实例时,会同步创建 VPC终端节点 服务,可以设置终端节点服务名称,也可以在此处修改终端节点服务名称。 连接管理 展示连接到网关实例的终端节点信息。如果需要新建终端节点,请单击“创建终端节点”创建。 终端节点ID:终端节点的ID。 报文标识:终端节点ID的标识,用来识别是哪个终端节点。 状态:终端节点的状态。 关于终端节点的各个状态,请查看终端节点服务和终端节点有哪些状态?。 拥有者:终端节点创建者的账号ID。 创建时间:终端节点的创建时间。 操作:终端节点服务对终端节点的连接审批,可选择“接受”或“拒绝”。 须知: 如您仍有业务通过该连接进行访问,拒绝已建立的连接可能导致业务受损,请谨慎操作。 权限管理 权限管理用于控制是否允许跨租户的终端节点进行访问。可以设置允许连接该终端节点服务的授权账号ID,将授权账号ID添加至终端节点服务的白名单中。 单击“添加白名单记录”,填写账号ID。 授权账号ID:连接访问终端节点的授权账号ID。 创建时间:白名单的创建时间。 操作:对连接访问终端节点的授权账号进行操作,支持将授权账号从白名单中删除。
  • 配置参数说明 表1 配置参数说明 参数 说明 Allowed Origins Access-Control-Allow-Origin响应头,指定允许访问API的外域URI,多个URI之间使用英文逗号隔开。 对于未携带身份凭证的请求,可以把参数值设置为“*”,表示允许来自所有域的访问请求。 Allowed Methods Access-Control-Allow-Methods响应头,指定允许使用的HTTP请求方法,多个请求方法之间使用英文逗号隔开。 Allowed Headers Access-Control-Allow-Headers响应头,指定XMLHttpRequest请求中允许携带的请求头字段,多个请求头之间使用英文逗号隔开。 其中,简单请求头Accept、Accept-Language、Content-Language、Content-Type(取值仅限为application/x-www-form-urlencoded、multipart/form-data、text/plain时)默认允许在请求中携带,无需在该参数中设置。 说明: 创建跨域资源共享策略时,默认不配置Allowed Headers,不允许跨域请求携带任何自定义请求头。 配置Allowed Headers为“*”,表示允许跨域请求头携带所有请求头。 Exposed Headers Access-Control-Expose-Headers响应头,指定XMLHttpRequest请求响应中允许携带的响应头字段,多个响应头之间使用英文逗号隔开。 其中,基本响应头Cache-Control、Content-Language、Content-Type、Expires、Last-Modified、Pragma默认允许在响应中携带,无需在该参数中设置。 说明: 创建跨域资源共享策略时,默认不配置Exposed Headers,不允许浏览器的JavaScript代码解析跨域访问获得的响应头内容(除XMLHttpRequest对象的getResponseHeader()方法获得的基本响应头,Cache-Control、Content-Language、Content-Type、Expires、Last-Modified、Pragma)。 配置Exposed Headers为“*”,表示允许浏览器的JavaScript代码解析跨域访问获得的所有响应头内容。 Maximum Age Access-Control-Max-Age响应头,指定本次预检请求的有效期,单位为秒。在有效期内,无需再次发出预检请求。 Allowed Credentials Access-Control-Allow-Credentials响应头,定XMLHttpRequest请求中是否允许携带Cookie。 开关开启表示允许。 开关关闭表示不允许。
  • 脚本配置示例 { "allow_origin": "*", "allow_methods": "GET,POST,PUT", "allow_headers": "Content-Type,Accept,Accept-Ranges,Cache-Control", "expose_headers": "X-Request-Id,X-Apig-Latency", "max_age": 86400, "allow_credentials": true }
  • 脚本配置示例 { "cache_key": { "system_params": [ "$context.sourceIp", "$context.requestId" ], "parameters": [ "demo_parameters" ], "headers": [ "demo_header" ] }, "cache_http_status_and_ttl": [ { "http_status": [ 200 ], "ttl": 300 } ], "client_cache_control": { "mode": "apps", "datas": [ "demo_app_id_1,demo_app_id_2" ] }, "cacheable_headers": [ "demo_cacheable_headers_1,demo_cacheable_headers_2" ] }
  • 配置参数说明 表1 配置参数说明 参数 说明 响应缓存键 配置参数作为响应缓存键,用于区分不同的缓存。 system_params类型:配置不同的网关内置系统参数作为响应缓存键来区分缓存。配置参数请参考网关内置参数。 parameters类型:配置不同的请求query参数作为响应缓存键来区分缓存。 headers类型:配置不同的请求头作为响应缓存键来区分缓存。 HTTP参数 根据HTTP响应码和缓存时长来决定是否缓存,以及缓存的有效时间。 如果不配置HTTP参数,那么HTTP响应码默认值为200,取值范围:200-599。缓存时长默认值为300s,取值范围:1s~720000s。 缓存策略模式 网关通过客户端请求中的Cache-Control请求头来处理缓存,默认拒绝所有客户端带Cache-Control头的请求。 all:允许所有客户端带Cache-Control头的请求。 off:拒绝所有客户端带Cache-Control头的请求。 apps:允许appId(凭据ID)取值在datas列表中的客户端。 允许缓存的后端响应头 对于后端的响应Headers,默认仅支持缓存Content-Type,Content-Encoding,Content-Language头。如果需要缓存更多的Headers,请在“允许缓存的后端响应头”处添加,但是无法添加API网关增加的系统响应头(x-apig-*,x-request-id等)。
  • 配置参数说明 表1 配置参数说明 参数 说明 策略名称 访问控制策略的名称。 类型 控制访问API的类型。 IP地址:限制调用API的IP地址。 账号名:仅适用 IAM 认证类型的API,限制调用API的账号名。仅支持配置账号名,对账号名及账号名下的IAM用户名做限制,不支持配置IAM用户名。 可以配置单账号名或多账号名,多账号名以英文格式下的“,”隔开,账号名支持除英文格式下“,”以外的任意ASCII字符,账号名长度限制在1-64个字符,不支持纯数字。多账号名字符的总长度不超过1024。 账号ID:仅适用IAM认证类型的API,限制调用API的账号ID。仅支持配置账号ID,对账号ID及账号ID下的IAM用户ID做限制,不支持配置IAM用户ID。 可以配置单账号ID或多账号ID,多账号ID以英文格式下的“,”隔开。账号ID为英文字母、数字组成的32位字符;多账号ID字符的总长度不超过1024。 说明: 一个API同时绑定两种类型的访问控制策略:账户维度的账户名类型和账号ID类型。访问API时,如果同时有黑白名单,只校验白名单,校验通过则访问成功;如果只有黑名单或白名单,校验通过的结果为“且”逻辑。 一个API同时绑定三种类型的访问控制策略:IP维度的IP类型、账户维度的账号名类型和账号ID类型。访问API时,IP维度和账户维度为“且”的关系,其中一方校验失败则访问失败。(一个API同时绑定IP类型和账号名/账号ID类型的访问控制策略,这两种类型的判断逻辑与三种类型的判断逻辑相同)。 动作 包括“允许”和“禁止”。 和“类型”配合使用,允许/禁止访问API的IP地址/账号名/账号ID。 IP地址 仅当“类型”为“IP地址”时需要配置。 输入允许或者禁止访问API的IP地址,或IP地址范围。 说明: 允许或禁止访问的IP地址条数,分别可以配置最多100条。 账号名 仅当“类型”为“账号名”时需要配置。 输入允许或者禁止访问API的账号名,多个账号名之间使用英文逗号(,)隔开。 您可以单击控制台右上角的用户名,选择“我的凭证”,在“我的凭证”页面获取用户的账号名。 账号ID 仅当“类型”为“账号ID”时需要配置。 输入允许或者禁止访问API的账号ID,多个账号ID之间使用英文逗号(,)隔开。 您可以单击控制台右上角的用户名,选择“我的凭证”,在“我的凭证”页面获取用户的账号ID。
  • 使用AppCode进行API请求的简易认证 在创建API时,选择“APP认证”并且开启“支持简易认证”。 如果您修改已有API为简易认证,需要在修改完成后,将API重新发布,使简易认证模式生效。 将支持简易认证的API绑定到已创建的凭据。 发送请求时,增加请求头部参数“X-Apig-AppCode”,省略请求签名相关信息。 以Curl方式为例,增加头部参数名称:X-Apig-AppCode,参数值填已生成的AppCode。 curl -X GET "https://api.exampledemo.com/testapi" -H "content-type: application/json" -H "host: api.exampledemo.com" -H "X-Apig-AppCode: xhrJVJKABSOxc7d***********FZL4gSHEXkCMQC"
  • 开放API 企业或开发者通过API网关开放自身的服务与数据,实现业务能力变现。 图2 开放API基本流程 创建实例 实例是一个独立的资源空间,所有的操作都是在实例内进行,不同实例间的资源相互隔离。 创建API分组 每个API都归属到某一个API分组下,在创建API前应提前创建API分组。 绑定 域名 在开放API前,您需要为API分组绑定一个独立域名,供API调用者访问API使用。 在绑定独立域名前,您可以使用系统为API分配的调试域名进行API调试,每天最多可以访问调试域名1000次。 创建API 把已有后端服务封装为标准RESTFul API,并对外开放。 API创建成功后,您可根据业务需求对API设置访问策略: 传统策略 流控控制 流量控制可限制单位时间内API的被调用次数,保护后端服务。 访问控制 访问API的IP地址和账户,您可以通过设置IP地址或账户的黑白名单来拒绝/允许某个IP地址或账户访问API。 签名密钥 签名密钥用于后端服务验证API网关的身份,在API网关请求后端服务时,保障后端服务的安全。 插件策略 跨域资源共享策略说明 跨域资源共享策略为跨域访问提供指定预检请求头和响应头、自动创建跨域预检请求API的扩展能力,可快速、灵活的实现API的跨域访问。 响应缓存策略说明 您可以通过配置响应缓存策略将后端服务返回的应答缓存在API网关中,当客户端发送相同的请求时,网关不用向后端传递请求,直接返回缓存的应答。 HTTP响应头管理策略说明 您可以自定义HTTP响应头,在返回的API响应中指定您配置的响应头。 流量控制2.0策略说明 您可以限制单位时间内API的被调用次数,支持参数流控、基础流控和基于基础流控的特殊流控。 Kafka日志推送策略说明 Kafka日志推送策略提供了把API的详细调用日志推送到Kafka的能力,方便用户获取API的调用日志信息。 断路器策略说明 断路器是API网关在后端服务出现性能问题时保护系统的内置机制。 第三方认证策略说明 您可以通过第三方认证策略配置自己的鉴权服务为API的访问进行认证。 调试API 验证 API服务 的功能是否正常可用。 发布API 把API发布到环境中,API只有在发布到环境后,才支持被调用。
  • 步骤一:获取私有依赖库地址与配置 获取私有依赖库地址。 进入私有依赖库,选择“仓库视图”,并在左侧边栏中选择目标Maven私有依赖库。 单击仓库名称,右侧页面中仓库的“概览”页签中详细信息显示“仓库地址”。单击即可复制仓库地址。 图2 获取私有依赖库地址 获取私有依赖库配置。 单击页面右上方“操作指导”。 在“操作指导”对话框中单击“下载配置文件”,下载配置文件settings.xml至本地。 图3 下载配置文件 在本地打开配置文件settings.xml,在文件中搜索并找到如下红框中的用户名与密码。
  • 步骤二:配置迁移工具 返回私有依赖库,单击页面右侧并在下拉列表选择“下载迁移工具”。 图4 下载迁移工具 将迁移工具MigrateTool.rar包下载到本地,并执行以下命令,将MigrateTool.rar包解压并进入解压后的目录中。 unrar x MigrateTool.rar cd MigrateTool/ 用记事本打开MigrateTool.rar包解压后目录中的application.yaml文件,配置表1所示参数。 表1 配置迁移工具参数 参数名称 参数说明 package_type jfrog源仓库类型,配置为“maven”。 repo_type jfrog源仓库类型,配置为“jfrog”。 domain jfrog源仓库地址,例如“http://本地jfrog仓库IP:本地jfrog仓库端口/artifactory”。 repo 需要迁移的jfrog源仓库名称,根据实际名称填写。 user_name 登录jfrog源仓库的账号,根据实际情况填写。 password 登录jfrog源仓库的密码,根据实际情况填写。 target_repo_type 迁移后的目标仓库类型,配置为“artifactory”。 target_domain 迁移后的目标仓库地址,配置为图5中“/artgalaxy/”前半段的的信息。 target_repo 迁移后的目标仓库ID,配置为图5中“/artgalaxy/”后半段的的信息。 target_user_name 迁移后的目标仓库账号,配置为从2.c中获取的username。 target_password 迁移后的目标仓库密码,配置为从2.c中获取的password。 图5 迁移后的目标仓库详细信息
  • 上传软件包 单击页面右上方“上传制品”,可以手动上传本地软件包到软件发布库。 选择文件夹后,单击“上传制品”,可以手动上传本地软件包到对应的文件夹中。 在弹框中配置如下信息后,单击“上传”。 目标仓库:当前软件发布库。 版本:用户可以为软件包设置版本号。 上传方式:选择“单个文件上传”或“多个文件上传”,本章节默认“单个文件上传”。 路径:用户设置路径名称后,仓库视图中会创建改名称的文件夹,上传的软件包会存放在该文件夹内。 文件:从本地选择需要上传到软件发布库的软件包。 在仓库视图中,单击已上传的软件包名称,页面将展示该软件包的详细信息。 单击软件包名称旁,可以修改软件包名称。 单击软件包名称旁,可以删除软件包,可以选择彻底删除或将删除的文件夹放入回收站。 不建议用户将带有明文账号密码等敏感信息的文件上传至软件发布库。
  • 客户端下载Maven组件 使用客户端工具为Maven,请确保已安装JDK和Maven。 1. 从私有依赖库页面下载settings.xml文件,将下载的配置文件直接替换或按提示修改maven的settings.xml文件。 2. 使用以下命令进行客户端下载: mvn dependency:get -DremoteRepositories={repo_url} -DgroupId={groupId} -DartifactId={artifactId} -Dversion={version} -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true
  • 从Rpm私有依赖库获取依赖包 以•发布私有组件到Rpm私有依赖库中发布的Rpm私有组件为例,介绍如何从Rpm私有依赖库中获取依赖包。 参考发布Rpm私有组件的2、3,下载Rpm私有依赖库配置文件。 打开配置文件,将文件中所有“{{component}}”替换为上传Rpm文件时使用的“{{component}}”值(本文档中该值为“hello”),并删除“rpm上传命令”部分,保存文件。 将修改后的配置文件保存到Linux主机的“/etc/yum.repos.d/”目录中。 执行以下命令,下载Rpm组件。其中,hello为组件的“component”值,请根据实际情况修改。 yum install hello
  • 客户端上传/下载RPM组件 使用linux系统和yum工具,请确保使用linux系统,且已安装yum。 发布私有组件到Rpm私有依赖库 检查linux下是否安装yum工具 在linux主机中输入 rpm -qa yum 如出现如下内容 则证明机器已安装yum 登录软件开发生产线,进入Rpm私有依赖库。单击页面右侧“操作指导”。 在弹框中单击“下载配置文件”。 在Linux主机中执行以下命令,上传Rpm组件 curl -k -u {{user}}:{{password}} -X PUT https://{{repoUrl}}/{{component}}/{{version}}/ -T {{localFile}} 其中,“user”、“password”、“repoUrl”来源于上一步下载的配置文件中“rpm上传命令”部分。 user:位于curl -u与-X之间、“:”之前的字符串。 password:位于curl -u与-X之间、“:”之后的字符串。 repoUrl:“https://”与“/{{component}}”之间的字符串。 “component”、“version”、“localFile”来源于待上传的Rpm组件。以组件“hello-0.17.2-54.x86_64.rpm”为例。 component:软件名称,即“hello”。 version:软件版本,即“0.17.2”。 localFile:Rpm组件,即“hello-0.17.2-54.x86_64.rpm”。 完整的命令行如下图所示: 命令执行成功,进入私有依赖库,可找到已上传的Rpm私有组件。
  • 客户端上传Maven组件 使用客户端工具为Maven,请确保已安装JDK和Maven。 从私有依赖库页面下载settings.xml文件,将下载的配置文件直接替换Maven安装目录下的settings.xml文件。 使用以下命令进行客户端上传,命令示例如下: 上传时需要到上传的pom文件所在目录下执行命令。 mvn deploy:deploy-file -DgroupId={groupId} -DartifactId={artifactId} -Dversion={version} -Dpackaging=jar -Dfile={file_path} -DpomFile={pom_path} -Durl={url} -DrepositoryId={repositoryId} -s {settings_path} -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true 参数说明 DgroupId :上传的groupId DartifactId :上传的artifactId Dversion :上传的版本version Dpackaging :上传包的类型(jar,zip,war等) Dfile :上传实体文件所在的路径 DpomFile : 上传实体pom文件所在的路径(Release版本请注意:如果没有该参数,系统会自动生成pom,pom有特殊要求的请指定该参数) pom文件中的DgroupId ,DartifactId ,Dversion 要与外面的一致,否则报409。 DpomFile 和(DgroupId ,DartifactId ,Dversion) 可以二选一(即如果选择DgroupId ,DartifactId ,Dversion,则可以不用DpomFile) Durl :上传文件到仓库的路径 DrepositoryId :这个是settings配置的用户名密码所对应的id,如下图所示:
  • 原因一:非CFW造成的流量中断 可以在 云防火墙 控制台,关闭防护,观察业务情况,如果业务仍未恢复,说明非CFW造成的流量中断。 关闭防护的方式如下: EIP流量故障:关闭CFW对业务中断的EIP的防护,请参见关闭EIP防护。 SNAT或VPC间访问不通:关闭VPC边界防火墙的防护,请参见关闭VPC边界防火墙。 如果业务仍未恢复,可参考常见的故障原因: 网络故障:路由配置错误,网元故障。 策略拦截:其它安全服务、网络ACL或安全组配置错误导致的误拦截。 如果您需要华为云协助排查,可提交工单。
  • 系统策略授权企业项目后,为什么部分权限会失效? CFW部分功能依赖于弹性云服务器(Elastic Cloud Server, E CS )、虚拟私有云(Virtual Private Cloud, VPC)等云服务,因这些云服务中部分功能不支持企业项目,将“CFW FullAccess” 和“CFW ReadOnlyAccess”两个系统策略授权到企业项目维度后会造成部分权限失效。 所以需要使用华为云账户自行创建两条系统策略,具体创建步骤请参见:创建自定义策略。 CFW依赖的云服务中不支持企业项目的功能需要按照以下内容添加权限,其中 云日志 服务(Log Tank Service,简称LTS)在CFW页面操作时需授权LTS服务全部权限。 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "vpc:quotas:list", "vpc:publicipTags:get" ] }, { "Effect": "Allow", "Action": [ "ecs:availabilityZones:list" ] }, { "Effect": "Allow", "Action": [ "lts:groups:list", "lts:groups:get", ] } ] } CFW依赖全局服务的权限: { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "eps:resources:list" ] }, { "Effect": "Allow", "Action": [ "tms:predefineTags:list" ] } ] } 父主题: 故障排查
  • 如何选择区域? 选择区域时,您需要考虑以下几个因素: 地理位置 一般情况下,建议就近选择靠近您或者您的目标用户的区域,这样可以减少网络时延,提高访问速度。 在除中国大陆以外的亚太地区有业务的用户,可以选择“中国-香港”、“亚太-曼谷”或“亚太-新加坡”区域。 在非洲地区有业务的用户,可以选择“非洲-约翰内斯堡”区域。 在拉丁美洲地区有业务的用户,可以选择“拉美-圣地亚哥”区域。 资源的价格 不同区域的资源价格可能有差异,请参见华为云服务价格详情。
  • 什么是区域、可用区? 我们用区域和可用区来描述数据中心的位置,您可以在特定的区域、可用区创建资源。 区域(Region):从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为通用Region和专属Region,通用Region指面向公共租户提供通用云服务的Region;专属Region指只承载同一类业务或只面向特定租户提供业务服务的专用Region。 可用区(AZ,Availability Zone):一个AZ是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个集群。一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统的需求。 图1阐明了区域和可用区之间的关系。 图1 区域和可用区 目前,华为云已在全球多个地域开放云服务,您可以根据需求选择适合自己的区域和可用区。
  • 查看环境 创建环境后,可以通过查看环境确认环境的状态和信息。 登录GCS控制台,选择左侧导航栏的“环境管理”,单击“云容器引擎”页签。在环境列表页可查看环境状态、集群名称、计费模式、关联桶等,如图1。 图1 CCE环境列表页 在环境列表页您可执行变更关联桶、查看集群详情、查看集群监控、休眠/唤醒环境、清理环境等操作。 变更关联桶:单击关联桶后的,在弹出的对话框中选择其他桶,然后单击“确认”。 查看集群详情:单击集群名称,前往CCE界面查看集群详情。 查看集群监控:单击,进入集群监控页面查看集群节点、控制节点、工作负载和负载实例的CPU、内存和磁盘等的使用情况。 环境休眠/唤醒:单击“环境休眠/唤醒”,可将CCE环境休眠/唤醒,具体操作请参见休眠/唤醒环境。 清理环境:单击“清理环境”,可清理CCE环境,具体操作请参见清理环境。 单击“云容器引擎”的环境名称,进入环境管理详情页面。 图2 CCE环境管理详情 在环境管理详情页面还可查看节点、控制节点、弹性伸缩、事件、存储等信息。 节点:节点是指接入到平台的计算资源,包括虚拟机、物理机等。您需确保所在项目节点资源充足,若节点资源不足,会导致创建工作负载等操作失败。 图3 环境管理详情-节点 单击可监控节点的CPU、内存和磁盘的使用情况。 单击“节点管理”,可根据界面提示使用用户模式对节点进行管理,“按需付费节点”标签为必选,可勾选“禁止自动缩容”、“不再接收新任务”、“任务指定内存”标签。单击“确定”后,在节点页面可查看节点属性,如图3。 图4 节点管理-用户模式 专业模式的管理方法请参考CCE节点标签管理。 控制节点:控制节点由华为云托管,您不能登录。单击可监控控制节点的CPU、内存和磁盘的使用情况。如果控制节点出现异常,请联系华为云支持定位修复。 弹性伸缩:伸缩策略定义后,可自动触发节点的增减,从而降低人为反复调整资源以应对业务变化和高峰压力的工作量,帮助您节约资源和人力成本。单击“添加策略”,根据界面提示配置集群自动扩缩容参数。 图5 添加策略 密码:自动扩容node节点密码。通过该密码登录node节点执行相关操作,用户名为root。 确认密码:再次输入自动扩容node节点密码。 自动缩容:是否启用集群缩容。 空置时间(min):启用集群缩容后,集群节点处于unneed状态多长时间后,删除节点(默认10min)。 百分比:启用集群缩容后,集群节点资源低于多少,会进行集群缩容(默认0.5)。 节点总数:可扩容的最大节点总数。 cpu总数(核):可扩容的最大cpu总数(核)。 内存总数(G):可扩容的最大内存总数(G)。 预置节点池配置:默认资源组,最多可设置10个。集群扩容时,若没有其他可用分组,使用默认分组的资源规格进行扩容节点。 可用区:指同一服务区内,电力和网络互相独立的地理区域。 操作系统:节点对应的操作系统。 节点规格:节点的CPU配置和内存配置。 Taints:支持给该节点池扩容出来的节点加Taints来设置反亲和性,每个节点池最多配置10条Taints,每条Taints包含以下3个参数: Taints是可选项,默认为空。配置时需要配合Pod的toleration使用,否则可能导致扩容失败或者Pod无法调度到扩容节点。 Key:必须以字母或数字开头,可以包含字母、数字、连字符、下划线和点,最长63个字符;另外可以使用DNS子域作为前缀,例如example.com/my-app, DNS子域最长253个字符。 Value:必须以字符或数字开头,可以包含字母、数字、连字符、下划线和点,最长63个字符。 Effect:只可选NoSchedule,PreferNoSchedule或NoExecute。 Effect参数建议选择PreferNoSchedule,这样可使自动扩容的节点能够及时的缩容。 伸缩策略配置成功后,单击“卸载”可删除策略。 图6 删除伸缩策略 事件:可以在“事件”页签下查看集群的事件。 存储:包括“对象存储卷”、“文件存储卷”和“云硬盘存储卷”,使用方法请参考CCE存储管理。存储卷创建成功后,单击“删除”可删除存储卷。 单击集群名称,您将进入到CCE控制台,可查看集群详情信息。
  • 清理环境 为了防止您为不需要的服务付费,建议您使用完成后清理环境。环境清理后基因容器服务将不再使用该集群,集群还将为您保留。已休眠的环境,请先唤醒再删除。如默认环境被清理,则最新创建的环境会自动变成默认环境。 登录GCS控制台,选择左侧导航栏的“环境管理”。 单击“云容器引擎”页签,在需要清理的环境中单击“清理环境”。 图9 清理环境 在弹出的对话框中输入DELETE,环境清理后基因容器服务将不再使用该集群,集群还将为您保留。如需彻底删除该集群,请勾选“删除环境所创建的集群”,然后单击“确认”。 只有通过GCS“新建资源”创建的按需计费环境才可以“删除环境所创建的集群”。 包年/包月集群如需停止使用,请到“费用中心”执行退订操作。
  • 休眠/唤醒环境 创建环境过程中用到的CCE、ECS、弹性IP等资源创建后即开始收费。当您在某段时间内不使用GCS时,需要休眠CCE环境。而由于CCI环境是按使用量计费,因此环境不使用时不产生费用,不需要休眠。 休眠后环境将保留,按需付费的CCE控制节点将暂停收费,弹性 云服务器ECS 、绑定的弹性IP等资源仍需收费。处于休眠状态的环境,可以执行唤醒环境操作,环境唤醒后,将继续收取控制环境资源费用。 登录GCS控制台,选择左侧导航栏的“环境管理”。 选择需要休眠的环境,单击“环境休眠”,进入环境休眠详情页面,单击“确认”。 图7 休眠环境 环境休眠后,环境将保留。若需要继续使用环境,可单击“唤醒环境”来执行唤醒环境操作。 图8 唤醒环境
  • 创建环境 开始基因分析前,请先创建环境。 登录GCS控制台,选择左侧导航栏的“环境管理”,在右侧页面单击“创建环境”。 设置“默认环境”:是/否。若当前没有环境,则将要创建的环境即为默认环境。默认环境有且只有一个。在有多个集群时,执行分析任务时如果不指定投递集群,则将任务投递至该默认集群。 选择“环境类型”:“云容器引擎 CCE”。 选择“关联桶”:OBS存储用于存储分析前后产生的数据,包括原始基因数据、流程执行中间数据及执行结果数据。 如果您已有可用桶,在创建环境中,选择对应的桶即可。关联OBS存储,对应对象存储或并行文件系统,并行文件系统详细说明请参见并行文件系统。 如果没有可用桶或是需要新建桶,请单击“创建桶”,基因容器将为您创建一个桶。此处创建的桶无法选择企业项目,默认创建default企业项目。 设置“计算资源”:选择“已有资源”或“新建资源”。如果您在CCE中已有可用集群,则在创建环境时,选择对应的集群做为基因容器的计算资源即可。 为保证有足够的资源,请给基因环境规划独立的集群。 如果您在CCE中没有可用的集群,或不想使用已有集群,请选择“新建资源”,并根据需求选择集群参数。环境创建成功后,可对计费模式和集群规格进行变更,具体操作请参见查看环境。 计费模式:“按需计费”或“包年/包月”。 按需计费:根据实际使用的资源按小时计费。 包年/包月:包周期计费。包年/包月集群创建后不能删除,如需停止使用,请到用户中心执行退订操作。 集群名称:新建集群的名称。 集群版本:选择集群对应的版本,对应Kubernetes社区基线版本,建议选择最新版本。 集群管理规模:当前集群支持管理的最大节点规模。若选择50节点,表示当前集群最多可管理50个节点。 高可用:高可用集群包含多台管理节点,单管理节点故障时,集群依然可用。推荐使用高可用集群。 企业项目: 该参数针对企业用户使用。如需使用该功能,请联系客服申请开通。 企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理,默认项目为default。 请从下拉列表中选择所在的企业项目。更多关于企业项目的信息,请参见《企业管理用户指南》。 虚拟私有云:虚拟私有云是通过逻辑方式进行网络隔离,提供安全、隔离的网络环境。若没有可选VPC,单击“创建虚拟私有云”进行创建,参数配置请参考创建虚拟私有云基本信息及默认子网。 所在子网:通过子网提供与其他网络隔离的、可以独享的网络资源,以提高网络安全。若没有可选子网,单击“创建子网”进行创建。如果集群规模超过250台,那么子网大于255.255.255.0。 可用区:指在同一服务区内,电力和网络互相独立的地理区域。一个区域内有多个可用区,一个可用区发生故障后不会影响同一区域内的其它可用区,可用区之间通过内网访问。 节点规格:选择所需的规格(通用计算增强型/通用型计算型/GPU加速型),选择节点的CPU配额和内存配额。 通用计算增强型:计算增强型实例具有性能稳定且资源独享的特点,满足计算性能高且稳定的企业级工作负载诉求。 通用型计算型:通用计算型实例提供均衡的计算、存储以及网络配置,适用于大多数的使用场景。通用计算型实例可用于Web服务器、开发测试环境以及小型数据库应用等场景。 GPU加速型:GPU实例提供图形处理器 (GPU) 及较高的计算性能配置的实例,可以适用于图形渲染要求较高的应用,例如高清视频、图形渲染、远程桌面等场景。 节点个数:单击,选择添加的节点个数。 操作系统:选择节点对应的操作系统。推荐使用EulerOS 2.2。 系统盘:磁盘类型为“普通IO”、“高IO”或“超高IO”,磁盘大小可设置为40~1024GB。 普通IO:由SATA存储提供资源的磁盘类型,该类型云硬盘的最大IOPS为1000; 高IO:由SAS存储提供资源的磁盘类型,该类型云硬盘的最大IOPS为3000; 超高IO:由SSD存储提供资源的磁盘类型,该类型云硬盘的最大IOPS为20000。 数据盘:磁盘类型为“普通IO”、“高IO”或“超高IO”,磁盘大小可设置为100~32678GB。 登录方式:“密钥对”或“密码”。 密钥对:选择登录节点的密钥对。密钥对用于远程登录节点时的身份认证,若没有密钥对,可单击“创建SSH密钥对”来新建。 密码:输入登录节点的密码,并确认密码。 单击“下一步”,确认环境信息配置后单击“提交”。系统将跳转到“环境管理”页面,环境创建预计需要花费6-10分钟时间。新建资源的环境您可单击“查看详情”,前往CCE页面查看集群创建详情。
  • 五、上传镜像 在安装容器引擎的虚拟机上执行以下命令,为2048镜像打标签。 docker tag [镜像名称1:版本名称1] [镜像仓库地址]/[组织名称]/[镜像名称2:版本名称2] 其中, [镜像名称1:版本名称1]:请替换为您所要上传的实际镜像的名称和版本名称。 [镜像仓库地址]:可在SWR控制台上查询,四、连接 容器镜像服务 中登录指令末尾的域名即为镜像仓库地址。 [组织名称]:请替换为三、创建组织中创建的组织。 [镜像名称2:版本名称2]:请替换为您期待的镜像名称和镜像版本。 示例: docker tag 2048:latest swr.cn-north-4.myhuaweicloud.com/cloud-develop/2048:v1 上传镜像至镜像仓库。 docker push [镜像仓库地址]/[组织名称]/[镜像名称2:版本名称2] 示例: docker push swr.cn-north-4.myhuaweicloud.com/cloud-develop/2048:v1 终端显示如下信息,表明上传镜像成功。 The push refers to repository [swr.cn-north-4.myhuaweicloud.com/cloud-develop/2048] fbce26647e70: Pushed fb04ab8effa8: Pushed 8f736d52032f: Pushed 009f1d338b57: Pushed 678bbd796838: Pushed d1279c519351: Pushed f68ef921efae: Pushed v1: digest: sha256:0cdfc7910db531bfa7726de4c19ec556bc9190aad9bd3de93787e8bce3385f8d size: 1780 返回SWR管理控制台,在“我的镜像”页面,执行刷新操作后可查看到对应的镜像信息。 镜像上传成功后,你可以使用已上传的镜像在云容器引擎中部署工作负载。
  • 一、安装容器引擎 首先,您需要准备一台虚拟机并安装docker容器引擎,请确保容器引擎为1.11.2及以上版本。 参考购买并登录Linux弹性云服务器创建一台带有弹性公网IP的Linux弹性云服务器。 作为演示,弹性云服务器和公网IP的规格不需要太高,例如弹性云服务器的规格为“1vCPUs | 2GB”、公网IP带宽为“1 Mbit/s”即可,操作系统以选择“CentOS 7.5”为例。 您也可以使用其他机器安装容器引擎,不创建弹性云服务器。 如果您使用的操作系统为EulerOS,请参考EulerOS操作系统下安装。 如果您使用的是Centos操作系统,建议选择CentOS7、CentOS7.2、CentOS7.3、CentOS7.4、CentOS7.5、CentOS7.6操作系统版本,否则可能导致安装异常。 创建完成后返回弹性云服务器列表,单击操作列的“远程登录”,以root用户登录弹性云服务器。 使用如下命令快速安装容器引擎。 curl -fsSL get.docker.com -o get-docker.sh sh get-docker.sh sudo systemctl daemon-reload sudo systemctl restart docker
  • 入门指引 容器 镜像服务 是一种支持容器镜像全生命周期管理的服务,提供简单易用、安全可靠的镜像管理功能,帮助用户快速部署容器化服务。本文档以一个2048应用为例,帮助您学习如何安装容器引擎并构建镜像,以及如何使用容器引擎客户端上传镜像到容器镜像仓库。 上传镜像到容器镜像仓库支持两种方式:使用容器引擎客户端和console页面,console页面上传请参见页面上传。 上传镜像暂时没有开放镜像上传的API。 您将按以下流程学习如何使用容器镜像服务。 图1 入门流程
  • 二、构建镜像 在安装docker容器引擎的虚拟机上执行以下命令,下载2048应用的源码。 git clone https://gitee.com/jorgensen/2048.git 若提示“git: command not found”表示未安装Git工具,请先安装该工具(可使用yum install git命令)。 下载成功后,进入“2048”目录。 cd 2048 修改Dockerfile文件。 vim Dockerfile FROM nginx COPY . /usr/share/nginx/html EXPOSE 80 CMD ["nginx", "-g", "daemon off;"] FROM:指定基础镜像nginx。 COPY:将2048源码拷贝到容器内的“/usr/share/nginx/html”目录。 EXPOSE:暴露容器的80端口。 CMD:指定容器运行时的默认命令。 按“Esc”,输入:wq,保存并退出。 使用docker build命令构建镜像。 docker build -t 2048 . 其中, -t表示给镜像加一个标签,也就是给镜像取名,这里镜像名为2048。 . 表示上下文路径,镜像构建命令将该路径下的所有内容打包给容器引擎帮助构建镜像。 执行以下命令,查看已成功构建的2048镜像,版本为默认的latest。 docker images # docker images REPOSITORY TAG IMAGE ID CREATED SIZE 2048 latest 8d421c503ed0 About a minute ago 134MB nginx latest dd34e67e3371 6 days ago 133MB 您还可以看到一个nginx镜像,这个镜像是从镜像仓库下载下来,作为2048镜像的基础镜像使用的。 (可选)运行容器镜像。 镜像构建成功后,您可以执行docker run命令运行容器镜像。 docker run -p 8080:80 2048 docker run命令会启动一个容器,命令中-p是将虚拟机的8080端口映射到容器的80端口,即虚拟机的8080端口的流量会映射到容器的80端口,当您在本地机器的浏览器访问“http://ECS的弹性公网IP:8080”时,就会访问到容器中,此时浏览器返回的内容就是2048应用页面。
  • 补丁基本信息说明 表1 补丁基本信息 补丁号 MRS 3.2.0-LTS.1.9 发布时间 2024-06-30 解决的问题 MRS 3.2.0-LTS.1.9修复问题列表: 解决HetuEngine查询gauss date字段报错的问题。 解决HetuEngine计算实例在Yarn上启动失败的问题。 解决HetuEngine CN主备倒换,计算实例状态短暂变成ERROR导致业务失败问题。 支持ClickHouse备份到OBS。 解决ClickHouse物化视图的基表中添加列,报OOM的问题。 解决ClickHouse Mysql引擎偶现卡顿问题(root补丁修复)。 解决ClickHouse内存暴涨后出现停止响应的问题。 解决修改ClickHouse配置时nodeagent会增加Zookeeper连接,旧连接不会释放导致Zookeeper不可用的问题。 解决ClickHouse偶现内置clickhouse用户多次认证失败,用户被锁,导致服务不可用的问题。 解决调用MRS的作业管理接口API,返回的Spark日志的url和实际不一致的问题。 解决Spark JD BCS erver切换成多实例模式后shuffle数据会不断累积,导致磁盘被打满的问题。 解决Spark InsertOverwrite数据不一致问题。 解决Superior调度器分配资源到用户时有可能会卡顿问题。 解决Yarn扩容导致性能劣化问题。 解决Yarn RETS API获取各个队列的资源反馈结果为0的问题。 解决Yarn RETS API并发查询队列详情的接口偶现查询结果为0的问题。 解决管控面提交Flink作业打印敏感日志的问题。 解决Hudi到DWS任务unknown以及无法删除问题。 解决Hudi filegroup下只有一个4bytes文件时,Hudi读写报错的问题。 解决CDL定时线程增加异常保护,防止线程异常,告警不上报的问题。 解决CDL解密环境变量冲突,导致升级时hudi源任务运行失败的问题。 解决删除CDL作业后,数据库表CDC_JOB_EXECUTION中仍存在该作业名的问题。 解决CDL时间函数clock_timestamp()导致Hudi-Dws压测性能下降的问题。 解决Flink create view的select语句包含JTL/TTL hints,不生效的问题。 解决Flink lookup join cow表,作业启动后缓存过期,重新加载不到数据,join无输出的问题。 解决[FLINK-27247]问题。 解决Flink通过代理用户访问普通集群Hive失败问题。 解决磁盘不可用告警无具体盘符问题。 解决阈值告警平滑次数偶现不生效,导致阈值告警频繁上报的问题。 解决 GaussDB 健康检查异常,导致实例重启问题(root补丁修复)。 解决GaussDB异常时,acs无自恢复能力的问题。 解决Agent重启会上报大量服务不可用告警的问题。 解决备 OMS 节点,主机重启后,knox进程无法自启动的问题。 解决DBServer频繁主备倒换的问题。 解决Hive MetaStore黑名单机制在并发场景下会出现空指针的问题。 解决HDFS 3个AZ每个AZ下2个NodeManager实例,缩容一个NodeManager后,此AZ持续报AZ不健康的问题。 解决HDFS多AZ场景NameNode的选副本逻辑问题导致rpc时间变长问题。 解决Hue服务不可用告警误报问题。 补丁兼容关系 MRS 3.2.0-LTS.1.9补丁包中包含所有MRS 3.2.0-LTS.1版本单点问题修复补丁。 父主题: MRS 3.2.0-LTS.1.9补丁说明
  • 回退HDFS上的组件包 登录集群主节点并执行以下命令: su - omm cd /opt/Bigdata/patches/{MRS补丁版本号}/client/ source /opt/Bigdata/client/bigdata_env 所有涉及{MRS补丁版本号}目录名称的操作,均以实际安装的补丁号为准。 例如: cd /opt/Bigdata/patches/MRS_3.2.0-LTS.1.1/client/ 安全集群需要认证对HDFS有权限的用户,普通集群无需执行: kinit {用户} 执行以下命令进行回退(卸载完补丁后执行): sh rollback_hdfs_file.sh 回退完成后需要在 FusionInsight Manager界面上重启Spark的JDBCServer2x实例。
共100000条