华为云用户手册

  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 handshake HandshakeDto object 两个账号(发起者和接收者)之间为了能安全地建立关系,所需要交换的信息。例如,当管理账号(发起者)邀请另一个账号(接收者)加入其组织时,两个账号一系列邀请(握手)请求和响应交换信息。 表4 HandshakeDto 参数 参数类型 描述 id String 邀请(握手)的唯一标识符(ID)。源账号在发起邀请(握手)时创建ID。 最大长度:34 urn String 邀请(握手)的统一资源名称。 最小长度:1 最大长度:1500 updated_at String 邀请(握手)请求被接受、取消、拒绝或到期的日期和时间。 created_at String 提出邀请(握手)请求的日期和时间。 management_account_id String 组织管理账号的唯一标识符(ID)。 最大长度:36 management_account_name String 组织管理账号的名称。 最大长度:64 organization_id String 组织的唯一标识符(ID)。 最大长度:34 notes String 给收件账号所有者的邮件中的附加信息。 最大长度:1024 target TargetDto object 要邀请加入组织的账号的标识符(ID)。 status String 邀请(握手)的当前状态, pending:邀请中;accepted:接受邀请;cancelled:取消邀请;declined:拒绝邀请;expired:邀请过期。 最小长度:1 最大长度:64 表5 TargetDto 参数 参数类型 描述 type String 目标类型,account:账号,email:邮箱。 最小长度:1 最大长度:64 entity String 如果指定 "type:account",则必须提供账号ID作为实体。如果指定"type:email",则必须指定与账号关联的电子邮件地址。 最大长度:100
  • 概述 欢迎使用Organizations云服务。Organizations服务为企业用户提供多账号关系的管理能力。Organizations支持用户将多个华为账号整合到创建的组织中,并可以集中管理组织下的所有账号。用户可以在组织中设置访问策略,帮助用户更好地满足业务的安全性和合规性需求。 您可以使用本文档提供API对组织进行相关操作,如创建、查询、删除、更新等。支持的全部操作请参见API概览。 在调用Organizations云服务API之前,请确保已经充分了解组织的相关概念,详细信息请参见什么是Organizations云服务。 父主题: 使用前必读
  • 为什么要使用云数据仓库服务GaussDB(DWS) ? 传统的数据仓库售价昂贵,设备系统选型,采购周期长,扩容复杂,整体运行成本十分高昂,因此很难为中小企业所采纳。 云数据仓库服务GaussDB(DWS)与传统的数据仓库相比,主要有以下特点与显著优势: 一款分布式MPP数据仓库云化服务,具备开放,高效,兼容,可扩展,易运维等特点。 基于GaussDB数据仓库产品内核,以云上数据仓库服务的形式将GaussDB(DWS)的能力提供给云平台上的企业用户,打造云上云下一致的数据仓库用户体验。 GaussDB(DWS)是具有国产自主知识产权的新一代分布式数据仓库系统。目前已经被广泛地应用在国内外政府,金融,运营商等行业和财富500强企业当中。该产品不仅兼容主流开源Postgres系列数据库,而且特别针对Oracle和Teradata的SQL语法进行了兼容性增强,在很多场合都可以替代国外同类型产品。 数据仓库服务工程师重点设计实现了基于行列混存的数据仓库内核,在支持海量数据快速分析的同时也很好地兼顾了业务运作系统对数据增删改的需求。引入了基于代价的查询优化器,以及当前数据仓库系统所流行的一些黑科技,包括机器码级别的向量计算,算子间和算子内的并行,节点内和节点间并行,使用LLVM优化编译查询计划的本机代码等。这些黑科技极大地提高了数据查询和分析的性能,为用户带来了更好的体验,解决了特定场景当中的业务痛点。 GaussDB(DWS)服务即开即用 相比以前动辄长达数月的数据仓库选型采购过程,在云上开通使用数据仓库服务只需要数分钟时间,简化了企业用户的购买过程,使用数据仓库的方式,降低使用数据仓库的代价和门槛,让数据仓库实实在在地走进千万家大中小企业, 让数据为企业的发展和决策提供其应有的价值。 父主题: 通用问题
  • 验证obsutil上传文件到OBS是否正常 创建测试文件。例如:test.txt。 touch test.txt 使用obsutil上传创建的文件到obs。 ~/tools/obsutil/obsutil_linux_amd64_5.4.6/obsutil cp test.txt obs://{OBS桶名称} 请将{OBS桶名称}替换为已创建的待使用的OBS桶名称,本示例选择的桶名为cae-obs,将在当前目录新建的test.txt文件上传到cae-obs桶中。提示“Upload successfully”表示上传成功。 图1 上传文件到obs 登录OBS控制台,选择“桶列表”。 单击本示例桶名名称cae-obs,进入“概览”页面。 选择“对象”,可查看已经上传的文件test.txt。 图2 查看已上传文件
  • 网络限制 云服务采用虚拟私有云(VPC)管理各服务的网络安全。 对于DCS缓存实例,客户端需要部署在与DCS缓存实例相同VPC的弹性云服务器上。 如果是Redis 3.0,Memcached,和Redis 6.0企业版实例,建议客户端所在弹性云服务器与缓存实例选择相同的安全组,如果安全组不同,需要添加相应的安全组出入规则,具体方法请参考如何选择和配置安全组章节。 如果是Redis 4.0、Redis 5.0和Redis 6.0基础版实例,需要将客户端所在弹性云服务器的IP地址加入实例白名单,允许访问。白名单配置请参考配置白名单。
  • 查看停机原因 登录全球SIM联接的SIM卡管理页面,可以查看所有的SIM卡列表。查看停机的物联网卡的“SIM卡状态”列的描述信息,可查看停机原因: 已停用:此时物联网卡处于断网状态。停机原因包括以下几个: 已停用(超流量停机):单卡当月已用流量超出套餐额度则自动断网。 2021年8月17号后购买的实体卡可在SIM卡管理中购买当月流量叠加包恢复使用; 次月自动恢复为在用。 已停用(超流量阈值停机,超出指定阈值流量):单卡当月已用流量超出客户指定额度则自动断网。 中国电信实体卡、中国联通和中国移动的组池卡,可自助在SIM卡管理中单击操作列的“更多”,通过修改达量断网阈值来恢复使用; 次月自动恢复为在用。 已停用(流量池停机):流量池内所有卡当月已用流量超出套餐额度则自动断网 可激活流量池下未激活卡片来贡献流量; 购买同套餐卡片加入流量池中 ; 次月流量清零自动恢复。 已停用(套餐到期停机):物联网卡到期不续费则自动断网并将销户处理。 已停用(主动停机):在全球SIM联接平台主动发起停机操作,可在全球SIM联接平台执行复机操作恢复为在用。 已停用(违规停机,包含机卡分离、在手机内使用、高危地区使用等):违规操作导致的停机,此时请联系华为工程师处理。 已停用 (流量池冻结停机) :因账户欠费引起后向流量池成员停机,可在费用中心充值恢复在用。 已停用(后向流量池超阈值停机):在全球SIM联接平台设置了后向流量池用量监控自动化规则,选择操作为停机,当流量使用量达到用户设定的阈值时,会对此后向流量池的成员卡进行停机。次月自动恢复在用。
  • 怎么查看物联网卡已用流量、剩余流量、月用量以及用量趋势? 登录全球SIM联接的SIM卡管理页面,可以查看所有的SIM卡列表。在列表中可以查看“已用流量”和“剩余流量”。 已用流量(MB) 激活的物联网卡才会展示已用流量,此时物联网卡处于在用或已停用状态。已用流量默认截止到昨日24点,单击“已用流量”右侧的刷新按钮查询实时流量。 剩余流量(MB) 激活的物联网卡才会展示剩余流量,此时物联网卡处于在用或已停用状态。负数表示超出的流量。 单击“容器ID”列进入SIM卡详情页面,可以在“用量统计”页签查询月用量统计以及本月和上月的用量趋势。 月用量 展示SIM卡套餐六个月内的月用量统计结果。 用量趋势 展示SIM卡套餐两个月内每日的用量趋势统计结果和用量明细信息。 父主题: 流量查询
  • 查看停机原因 登录全球SIM联接的SIM卡管理页面,可以查看所有的SIM卡列表。查看停机的物联网卡的“SIM卡状态”列的描述信息,可查看停机原因: 已停用:此时物联网卡处于断网状态。停机原因包括以下几个: 已停用(超流量停机):单卡当月已用流量超出套餐额度则自动断网。 2021年8月17号后购买的实体卡可在SIM卡管理中购买当月流量叠加包恢复使用; 次月自动恢复为在用。 已停用(超流量阈值停机,超出指定阈值流量):单卡当月已用流量超出客户指定额度则自动断网。 中国电信实体卡、中国联通和中国移动的组池卡,可自助在SIM卡管理中单击操作列的“更多”,通过修改达量断网阈值来恢复使用; 次月自动恢复为在用。 已停用(流量池停机):流量池内所有卡当月已用流量超出套餐额度则自动断网 可激活流量池下未激活卡片来贡献流量; 购买同套餐卡片加入流量池中 ; 次月流量清零自动恢复。 已停用(套餐到期停机):物联网卡到期不续费则自动断网并将销户处理。 已停用(主动停机):在全球SIM联接平台主动发起停机操作,可在全球SIM联接平台执行复机操作恢复为在用。 已停用(违规停机,包含机卡分离、在手机内使用、高危地区使用等):违规操作导致的停机,此时请联系华为工程师处理。 已停用 (流量池冻结停机) :因账户欠费引起后向流量池成员停机,可在费用中心充值恢复在用。 已停用(后向流量池超阈值停机):在全球SIM联接平台设置了后向流量池用量监控自动化规则,选择操作为停机,当流量使用量达到用户设定的阈值时,会对此后向流量池的成员卡进行停机。次月自动恢复在用。
  • 创建程序包 本例使用Python语言实现图片压缩的功能,有关函数开发的过程请参考Python函数开发。本例不再介绍业务功能实现的代码,样例代码目录如图1所示。 图1 样例代码目录 其中index.py为函数执行的入口文件,index.py中入口函数的代码片段如下,参数“output_bucket”为压缩后的图片存储地址,需要在创建函数时配置自定义参数。 def handler(event, context): ak = context.getAccessKey() sk = context.getSecretKey() if ak == "" or sk == "": context.getLogger().error('Failed to access OBS because no temporary ' 'AK, SK, or token has been obtained. Please ' 'set an agency.') return 'Failed to access OBS because no temporary AK, SK, or token ' \ 'has been obtained. Please set an agency. ' obs_endpoint = context.getUserData('obs_endpoint') if not obs_endpoint: return 'obs_endpoint is not configured' output_bucket = context.getUserData('output_bucket') if not output_bucket: return 'output_bucket is not configured' compress_handler = ThumbnailHandler(context) records = event.get("Records", None) return compress_handler.run(records[0])
  • 请求参数代码定义示例 在FunctionGraph中开发函数,以python2.7语言为例,函数代码需要满足如下条件。 函数有明确的接口定义,如下所示: def handler (event, context) 入口函数名(handler):入口函数名称,需和函数执行入口处用户自定义的入口函数名称一致。 执行事件(event): 函数执行界面由用户输入的执行事件参数, 格式为JSON对象。 上下文环境(Context):Runtime提供的函数执行上下文,其接口定义在SDK接口说明。 执行事件(event)支持三种请求参数定义,格式为: Header中的请求参数:event["headers"]["参数名"] Query中的请求参数:event["queryStringParameters"]["参数名"] 您自定义的用户数据:event["user_data"] 函数代码获取的三种请求参数与API网关自定义认证中的参数关系如下所示: Header中的请求参数:对应自定义认证中参数位置为Header的身份来源,其参数值在您调用使用该前端自定义认证的API时传入 Query中的请求参数:对应自定义认证中参数位置为Query的身份来源,其参数值在您调用使用该前端自定义认证的API时传入 您自定义的用户数据:对应自定义认证中的用户数据,其参数值在您创建自定义认证时输入 函数的返回值不能大于1M,必须满足如下格式: { "statusCode":200, "body": "{\"status\": \"allow\", \"context\": {\"user\": \"abc\"}}" } 其中,body字段的内容为字符串格式,json解码之后为: { "status": "allow/deny", "context": { "user": "abc" } } “status”字段为必选,用于标识认证结果。只支持“allow”或“deny”,“allow”表示认证成功,“deny”表示认证失败。 “context”字段为可选,只支持字符串类型键值对,键值不支持JSON对象或数组。 context中的数据为您自定义的字段,认证通过后作为认证参数映射到API网关后端参数中,其中context中的参数名称与系统参数名称必须完全一致,且区分大小写,context中的参数名称必须以英文字母开头,支持英文大小写字母、数字、下划线和中划线,且长度为1 ~ 32个字符。 Header中的请求参数定义代码示例: # -*- coding:utf-8 -*- import json def handler(event, context): if event["headers"].get("auth")=='abc': resp = { 'statusCode': 200, 'body': json.dumps({ "status":"allow", "context":{ "user":"success" } }) } else: resp = { 'statusCode': 200, 'body': json.dumps({ "status":"deny", }) } return json.dumps(resp) Query中的请求参数定义代码示例: # -*- coding:utf-8 -*- import json def handler(event, context): if event["queryStringParameters"].get("test")=='abc': resp = { 'statusCode': 200, 'body': json.dumps({ "status":"allow", "context":{ "user":"abcd" } }) } else: resp = { 'statusCode': 200, 'body': json.dumps({ "status":"deny", }) } return json.dumps(resp) 用户数据定义代码示例: # -*- coding:utf-8 -*- import json def handler(event, context): if event.get("user_data")=='abc': resp = { 'statusCode': 200, 'body': json.dumps({ "status":"allow", "context":{ "user":"abcd" } }) } else: resp = { 'statusCode': 200, 'body': json.dumps({ "status":"deny", }) } return json.dumps(resp)
  • 创建函数 登录函数工作流控制台,在左侧导航栏选择“总览”,单击“创建函数”进入创建函数界面。 选择“创建空白函数”,在创建函数界面配置如下信息:函数类型选择“事件函数”、输入函数名“access-redis-demo”,选择运行时“Python3.9”,最后单击创建函数。 图1 创建函数 创建函数选择的“区域”与要访问的Redis实例所在的区域一致。 根据Redis实例类型选择示例代码覆盖函数代码详情页中index.py内的代码。 图2 替换代码 在函数代码详情页,单击“添加依赖包”,选择私有依赖包源,添加创建依赖包创建的redis-py-4.6.0依赖包。 图3 添加依赖包 在“设置”页签下修改“常规设置”,内存调整为256MB,执行超时时间为30s,然后单击保存。 图4 常规设置 在“设置”页签下配置“权限”,添加一个有VPC Administrator权限的委托,然后单击保存。 图5 配置委托 在“设置”页签下配置“网络配置”,选择待访问Redis实例所在的虚拟私有云(VPC)和子网。 图6 网络配置 在“设置”页签下添加“环境变量”,添加待访问Redis实例的redis_ip_address(Redis IP地址)和redis_password(Redis连接密码)环境变量,同时开启“redis_password”的“加密参数”功能,最后单击“保存”。 表1 环境变量说明 环境变量 说明 redis_ip_address Redis的IP地址。 redis_password Redis连接密码。 在“设置”页签下配置“高级设置”。开启“配置初始化函数”,“设置初始化超时时间”为“60s”,“函数初始化入口”为index.initializer。 图7 高级设置 父主题: 使用函数访问Redis数据库
  • 程序打包 使用Eclipse生成Jar包,步骤如下图所示,得到Table Tester.jar文件。 图5 Export 图6 选择类型 图7 发布 将函数依赖打包,方法如下。 下载程序包(fss_examples_dis_cloudtable.zip)文件,解压缩目录如图8所示。使用Table Tester.jar替换DIS Test.jar,替换文件目录后如图9所示。打ZIP包,如图10所示,得到disdemo.zip文件。 图8 文件目录 图9 替换后文件目录 图10 打ZIP包
  • 支持的区域和可用分区 目前CBH已支持国内国际站部分站点,详情请参见表6。 表6 云堡垒机支持区域和可用分区 区域名称 区域 可用分区 可用分区名称 华北-北京一 cn-north-1 cn-north-1a 可用区1 cn-north-1b 可用区2 华北-北京四 cn-north-4 cn-north-4a 可用区1 cn-north-4c 可用区3 华东-上海一 cn-east-3 cn-east-3a 可用区1 cn-east-3b 可用区2 cn-east-3c 可用区3 华东-上海二 cn-east-2 cn-east-2a 可用区1 cn-east-2b 可用区2 cn-east-2c 可用区3 cn-east-2d 可用区4 华南-广州 cn-south-1 cn-south-1a 可用区1 cn-south-1b 可用区2 cn-south-1c 可用区3 cn-south-1e 可用区5 华南-深圳 cn-south-2 cn-south-2a 可用区1 西南-贵阳一 cn-southwest-2 cn-southwest-2a 可用区1 cn-southwest-2d 可用区4 西北-克拉玛依 cn-northwest-1 cn-northwest-1a 可用区1 华东-青岛 cn-east-5 cn-east-5a 可用区1 华北-乌兰察布一 cn-north-9 cn-north-9a 可用区1 cn-north-9b 可用区2 cn-north-9c 可用区3 拉美-墨西哥城二 la-north-2 la-north-2a la-north-2a la-north-2b la-north-2b 亚太-新加坡 ap-southeast-3 ap-southeast-3a 可用区1 ap-southeast-3b 可用区2 ap-southeast-3c 可用区3 ap-southeast-3e 可用区5 亚太-曼谷 ap-southeast-2 ap-southeast-2a 可用区1 ap-southeast-2b 可用区2 ap-southeast-2c 可用区3 中国-香港 ap-southeast-1 ap-southeast-1a 可用区1 ap-southeast-1b 可用区2 ap-southeast-1c 可用区3 亚太-雅加达 ap-southeast-4 ap-southeast-4a 可用区1 ap-southeast-4c 可用区3 中东-利雅得 me-east-1 me-east-1a 可用区1 me-east-1b 可用区2 me-east-1c 可用区3 华为云政务平台-乌兰察布 cn-north-10 cn-north-10a 可用区1 cn-north-10b 可用区2 cn-north-10c 可用区3 土耳其-伊斯坦布尔 tr-west-1 tr-west-1b tr-west-1b
  • 服务特点 一个实例对应一个独立运行的系统,通过配置实例部署系统后台运行基本环境。系统环境独立管理,保障系统运行安全。 一个单点登录系统,提供统一的单点登录入口,轻松地集中管理大规模云上资源,避免资源账户泄露危险,保障资源信息安全。 符合“网络安全法”等法律法规,满足合规性规范审查要求。 满足《萨班斯法案》和《等级保护》系列文件中的技术审计要求; 满足金融监管部门的技术审计要求; 满足各类法令法规(如SOX、PCI、企业内控管理、等级保护、ISO/IEC27001等)对运维审计的要求。
  • 变更配置后对计费的影响 当前包年/包月SFS资源的规格(类型、容量)不满足您的业务需要时,您可以在弹性文件服务控制台发起变更规格操作,如容量调整,变更时系统将按照如下规则为您计算变更费用: 资源升配:新配置价格高于老配置价格,此时您需要支付新老配置的差价。 升配费用=新配置价格*剩余周期-旧配置价格*剩余周期 剩余周期 = 每个自然月的剩余使用天数 / 对应自然月的最大天数 更多信息请参见变更资源规格费用说明
  • 计费示例 假设您在2023/03/08 15:50:04购买了一个包年/包月文件系统(类型:SFS Turbo通用型-标准型,容量:500 GiB),购买时长为一个月,并在到期前手动续费1个月,则: 第一个计费周期为:2023/03/08 15:50:04 ~ 2023/04/08 23:59:59 第二个计费周期为:2023/04/08 23:59:59 ~ 2023/05/08 23:59:59 您需要为每个计费周期预先付费,每个计费周期中,文件系统的费用计算如下: 文件系统费用 = 文件系统单价 * 容量 * 购买时长 示例中的文件系统费用= 0.4元/GiB/月 * 500GiB * 1个月 = 200元 上述示例中的价格仅供参考,实际计算请以弹性文件服务价格详情中的价格为准。
  • 到期后影响 图1描述了包年/包月SFS资源各个阶段的状态。购买后,在计费周期内资源正常运行,此阶段为有效期;资源到期而未续费时,将陆续进入宽限期和保留期。 图1 包年/包月SFS资源生命周期 到期预警 包年/包月SFS资源在到期前第7天内,系统将向用户推送到期预警消息。预警消息将通过邮件、短信和站内信的方式通知到华为账号的创建者。 到期后影响 当您的包年/包月SFS资源到期未续费,将进入宽限期,资源状态变为“已过期”。宽限期内您可以正常访问文件系统,但针对文件系统的部分操作将受到限制。 如果您在宽限期内仍未续费包年/包月SFS资源,那么就会进入保留期,资源状态变为“已冻结”,您将无法对处于保留期的包年/包月资源执行任何操作。 保留期到期后,如果包年/包月SFS资源仍未续费,那么文件系统将被释放,数据无法恢复。 华为云根据客户等级定义了不同客户的宽限期和保留期时长。 关于续费的详细介绍请参见续费概述。
  • 适用场景 包年/包月计费模式需要用户预先支付一定时长的费用,适用于长期、稳定的业务需求。以下是一些适用于包年/包月计费模式的业务场景: 稳定业务需求:对于长期运行且资源需求相对稳定的业务,如企业官网、在线商城、博客等,包年/包月计费模式能提供较高的成本效益。 长期项目:对于周期较长的项目,如科研项目、大型活动策划等,包年/包月计费模式可以确保在整个项目周期内资源的稳定使用。 业务高峰预测:如果能预测到业务高峰期,如电商促销季、节假日等,可提前购买包年/包月资源以应对高峰期的需求,避免资源紧张。 数据安全要求高:对于对数据安全性要求较高的业务,包年/包月计费模式可确保资源的持续使用,降低因资源欠费而导致的数据安全风险。
  • 包年/包月资源 对于包年/包月计费模式的资源,例如包年/包月的弹性文件服务、包年/包月的弹性云服务器等,用户在购买时会一次性付费,服务将在到期后自动停止使用。 如果在计费周期内不再使用包年/包月资源,您可以执行退订操作,系统将根据资源是否属于五天无理由退订、是否使用代金券和折扣券等条件返还一定金额到您的账户。详细的退订规则请参见云服务退订规则概览。 如果您已开启“自动续费”功能,为避免继续产生费用,请在自动续费扣款日(默认为到期前7日)之前关闭自动续费。
  • Linux系统操作步骤 以root用户登录云服务器。 执行vi /etc/fstab命令编辑“/etc/fstab”文件。 在文件的最后新增要挂载的文件系统信息,配置样例如下: 挂载地址 /local_path nfs vers=3,timeo=600,nolock 0 0 其中,“挂载地址”和“/local_path”需根据实际情况进行修改。挂载地址可以从文件系统的“挂载地址”一栏获取。/etc/fstab文件中每条记录对应一个挂载信息,每条记录有6个字段,对应的字段说明请参见字段说明。 为获得最优的系统性能,建议按照“配置样例”进行配置。若业务需要,您也可以根据实际情况自定义部分挂载参数,但变更配置后将会在一定程度上影响系统性能。 单击“Esc”,并输入:wq,保存文件并退出。 完成上述配置后,当云服务器重启时,系统会从/etc/fstab文件中读取挂载信息,完成文件系统的自动挂载。 (可选)执行以下命令,查看修改后的fstab文件内容。 cat /etc/fstab 修改后的fstab文件内容如图1所示。 图1 修改后的fstab文件 如果出现由于网络等问题导致自动挂载不成功,可以在rc.local文件中挂载命令前添加sleep参数和时间参数,等待NFS服务完全启动后在进行挂载。 sleep 10s && sudo mount -t nfs -o vers=3,timeo=600,noresvport,nolock,tcp 挂载地址 /local_path
  • Windows系统操作步骤 目标服务器需已成功安装NFS客户端,本操作以Windows 2012为例进行描述。 登录弹性云服务器。 在Windows系统挂载前,需要先创建名为auto_mount.bat的脚本,并保存至本地,记录保存路径。脚本中包含以下内容: mount -o nolock 挂载地址 对应盘符 图2 保存脚本 例如,某文件系统的auto_mount.bat脚本内容为: SFS容量型文件系统执行命令:mount -o nolock 挂载地址 X: 文件系统的挂载命令可从控制台上复制获取。 建议在脚本创建完成后,在CMD下手动执行确保脚本可以正常执行成功。即执行该脚本后,可以在“这台电脑”中查看到文件系统挂载成功,表示脚本可以正常执行。 bat脚本不能和步骤3的vbs文件放在同一个路径下,本例将bat脚本存储在C:\test\中。 创建一个名称为XXX.vbs的文件,并保存到“C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\「开始」菜单\程序\启动”路径下。该文件中包含以下内容: set ws=WScript.CreateObject("WScript.Shell") ws.Run "auto_mount.bat脚本的本地路径+脚本名 /start",0 图3 创建vbs文件 本例中,auto_mount.bat的脚本的本地路径为C:\test\,则vbs文件中的内容为: set ws=WScript.CreateObject("WScript.Shell") ws.Run "C:\test\auto_mount.bat /start",0 完成创建后,可以重启服务器进行验证。配置成功后,文件系统将自动出现在“这台电脑”中。
  • 字段说明 挂载信息的字段说明如表 1 字段说明所示。 表1 字段说明 字段 说明 挂载地址 挂载对象,即要挂载的文件系统的挂载地址。设置为挂载NFS协议类型文件系统到云服务器(Linux)中mount命令中的挂载地址。 /local_path 挂载点,即云服务器上创建的挂载文件系统的目录。设置为挂载NFS协议类型文件系统到云服务器(Linux)中mount命令中的本地路径。 nfs 挂载类型,指文件系统或分区类型。本节描述的是挂载文件系统,设置为nfs。 vers=3,timeo=600,nolock 挂载选项,用于设置挂载的参数,多个选项之间以逗号进行分隔。 vers:文件系统版本,取值为3代表NFSv3。 timeo:NFS客户端重传请求前的等待时间(单位为0.1秒)。建议值:600。 nolock:使用NLM协议在服务器上锁文件。 0 选择是否让备份程序dump备份文件系统。 0:不备份。 大于0的整数:备份;数字越小越先备份。 0 选择是否在云服务器启动时用fsck程序检查文件系统以及以什么顺序检查。 0:不检查。 根目录分区默认设置为1,其他分区从2开始,数字越小越先检查。
  • 操作步骤 进入弹性云服务器界面,登录已创建好的Windows 2012版本的弹性云服务器。 单击“开始”,右键单击“这台电脑”,选择“映射网络驱动器”。 在弹出的对话框中输入文件系统的挂载地址,即\\文件系统域名\路径,如图1所示。 表1 变量说明 变量 说明 文件系统域名 文件系统域名请从文件系统的挂载地址中获取。获取方式请参见查看文件系统。 路径 格式为share-xxxxxxxx,其中x是数字或字母。 图1 输入挂载地址 单击“完成”。 挂载成功后,在“这台电脑”界面中可以看到已经挂载好的文件系统。 若挂载失败或超时,可能是由于Windows系统的保护措施,阻挡了以来宾访问权限访问CIFS文件系统的用户,或以来宾访问权限为默认关闭状态。请参考故障排除处理。
  • 文件结构 图1 软件包结构 表1 软件包结构说明 位置 类型 描述 config/ 文件夹 配置文件所在的目录。 libs/ 文件夹 打成的依赖包所在的目录。 package.json 文件 包描述文件。 说明: 无论是否使用自动部署,都必须包含package.json文件。 package.json文件必须放在zip包的根目录中。 config目录 图2 config目录 libs目录 图3 libs目录 package.json 软件包的package.json内容一般如下: { "type": "software", //软件包类型标识,固定写法,不能随便填写,否则导致电子流异常 "scope":"1180196813870297011", //填写为common时,组织下的所有产品都可以使用该软件包;填写产品ID时,该产品下的所有服务可以使用该软件包,在AppStage运维中心工作台右上角的个人账号信息管理中,选择“租户管理”,查看产品ID "name": "WiseEyeDeployReleaseCenter", //可以自定义,建议使用微服务名称 "version": "{{VERSION_ID}}", //版本号,版本号如果重复,在后面加时间戳,不会覆盖原来的版本,支持英文、数字、“-”、 “_”、“()”、“ . ”、空格,包含其他字符会导致电子流异常 }
  • 操作步骤 使用STS的敏感配置项管理功能 ,需要在ACMS中录入敏感配置项,具体请参见录入敏感配置。 在IaC脚本中的业务配置项配置文件中指定敏感配置项坐标,敏感配置项坐标在ACMS中生成。 此处以增加一个名为spring.redis.password的敏感配置项为例,这个敏感配置项是访问Redis的密码。 spring.redis.password: MicroService/{service}/{microservice}/spring.redis.password/default # 敏感配置项坐标为:MicroService/服务名/微服务名/敏感配置项名称/敏感配置项标签 在IaC脚本中的业务配置项属性定义文件中,声明该配置项为敏感配置项。 type: object properties: spring.redis.password: format: sensitive 在application.yml配置文件中增加敏感配置项名称的配置。 nuwa: security: config: sensitiveWords: spring.redis.password,org.app.protocol-login.oauth.clientSecret,org.app.jwt-key 启动敏感配置项自动解密。 在启动类中添加@EnableStsEncryptableProperties注解。
  • IaC Patch包典型目录结构 IaC Patch包用于描述环境中的一个组件。IaC Patch包典型目录结构如下: 表1 IaC Patch包结构说明 位置 类型 个数 描述 iacpatch_{microservice}_{version}.zip 文件 1 IaC压缩包。 └── package.json 文件 1 包描述文件,相关说明请参见包描述文件介绍。 └── global/ 文件夹 1 全局默认的IaC描述,包含完整文件结构。全局默认的IaC描述,包含完整文件结构,放置被所有规格目录所复用的配置文件 │ └── resources.yaml 文件 1 微服务资源列表,相关说明请参见在IaC3.0代码中声明资源。 │ └── values.yaml 文件 1 微服务资源参数值,在resources.yaml中通过$ref的方式来引用。 │ └── configs/ 文件夹 1 微服务配置目录。 │ └── config_schema.yaml 文件 1 声明微服务的业务配置项属性,敏感业务配置项需要声明,非敏感配置项可以不声明。在resources.yaml中通过$ref的方式来引用。 │ └── {cluster}_config_records.yaml 文件 0-N 微服务的业务配置项,在resources.yaml中通过$ref的方式来引用。 └── specs/ 文件夹 1 环境特定的IaC描述,结构与global相同,但仅包含与global有差异的文件。 │ └── cn_product_cbu/ 文件夹 1 中国区生产环境,命名采用站点级Cloud Map的名称,可以在环境管理界面查看可选的站点级Cloud Map名称列表。 │ └── values.yaml 文件 0-1 微服务资源参数值。 │ └── configs/ 文件夹 0-1 微服务配置目录。 │ └── {cluster}_config_records.yaml 文件 0-N 微服务的业务配置项。 │ └── aaa_product_cbu/ 文件夹 1 亚非拉生产环境。 │ └── eu_product_cbu/ 文件夹 1 欧洲生产环境。 IaC Patch包样例: └── iacpatch_WiseEyeDeployConsoleService_1.1.2.zip ├── global/ # global目录:放置所有规格目录所复用的配置文件 │ ├── config/ # 微服务配置目录 │ │ ├── config_records.yaml │ │ └── config_schema.yaml │ ├── resources.yaml # 微服务的资源列表 │ ├── packages.yaml │ └── values.yaml # 变量定义文件,被resources.yaml引用 ├── specs/ # 环境特定的IaC描述,结构与global相同,但仅包含与global有差异的文件 │ ├── eu_product_cbu/... # 欧洲生产环境 │ ├── aaa_product_cbu/... # 亚非拉生产环境 │ └── cn_product_cbu/ # 中国区生产环境,命名采用站点级Cloud Map的名称,可以在环境管理界面查看可选的站点级Cloud Map名称列表 │ ├── values.yaml # 变量定义文件,被resources.yaml引用 │ └── config/ # 微服务配置目录 │ └── config_records.yaml └── package.json # 包描述文件(必须) 父主题: 应用平台IaC部署代码开发
  • global与specs的协同关系 global文件夹:放置被所有规格目录所复用的配置文件。 global文件夹里面的微服务都可以被规格文件夹specs中的代码复用(可根据meta.yaml指定复用哪些微服务,取决于你在相应环境的部署规划)。 global文件夹的作用类似于Java中的父类,spec类似于继承了global的子类,实际部署时还是使用的specs中的文件,但specs中的文件可以继承和复用global文件。 meta.yaml:描述变更的组件与过程。 {microservice}:描述要变更的微服务。 resources.yaml:微服务变更的主体文件,其他所有的values.yaml、config文件夹中的yaml等文件都围绕此文件展开。文件名必须为resources.yaml。 其他文件:为变量配置文件,其定义的内容都会被resources.yaml引用,文件名称可自定义。 spec文件夹:同一个服务在不同用途环境下所需配置文件(基础设施)。这个文件目录是必须的。 specs是在环境上部署服务时,最终使用的配置文件,当部署服务时,第一关注点和入口就是specs。 specs目录下的规格文件夹,命名采用站点级Cloud Map的名称(cn_product_cbu、eu_product_cbu)。可以在环境管理界面查看可选的站点级Cloud Map名称列表。 当某个规格被选用于部署时,会先将该规格目录下所有文件与global目录进行合并,得到该规格目录最终的所有配置文件,再进行部署动作。
  • 目录结构介绍 表1 IaC Spec包结构说明 位置 类型 个数 描述 iacspec_{service}_{version}.zip 文件 1 IaC压缩包。 └── package.json 文件 1 包描述文件,相关说明请参见包描述文件介绍。 └── global/ 文件夹 1 全局默认的IaC描述,包含完整文件结构,放置被所有规格目录所复用的配置文件。 │ └── meta.yaml 文件 1 变更策略描述,相关说明请参见在IaC3.0代码中定义流水线。 │ └── environment/ 文件夹 1 定义component1,公共资源。 │ └── resources.yaml 文件 1 公共资源列表,相关说明请参见在IaC3.0代码中声明资源。 │ └── values.yaml 文件 1 公共资源参数值,在resources.yaml中通过$ref的方式来引用。 │ └── {microservice}/ 文件夹 0-N 定义component2,微服务资源。 │ └── resources.yaml 文件 1 微服务资源列表,相关说明请参见在IaC3.0代码中声明资源。 │ └── values.yaml 文件 1 微服务资源参数值,在resources.yaml中通过$ref的方式来引用。 │ └── configs/ 文件夹 1 微服务配置目录。 │ └── config_schema.yaml 文件 1 声明微服务的业务配置项属性,敏感业务配置项需要声明,非敏感配置项可以不声明。在resources.yaml中通过$ref的方式来引用。 │ └── {cluster}_config_records.yaml 文件 0-N 微服务的业务配置项,在resources.yaml中通过$ref的方式来引用。 └── specs/ 文件夹 1 环境特定的IaC描述,结构与global相同,但仅包含与global有差异的文件。 │ └── cn_product_cbu/ 文件夹 1 中国区生产环境,命名采用站点级Cloud Map的名称,可以在环境管理界面查看可选的站点级Cloud Map名称列表。 │ └── environment/ 文件夹 0-1 环境公共资源。 │ └── values.yaml 文件 0-1 公共资源参数值。 │ └── {microservice}/ 文件夹 0-N 微服务资源。 │ └── values.yaml 文件 0-1 微服务资源参数值。 │ └── configs/ 文件夹 0-1 微服务配置目录。 │ └── {cluster}_config_records.yaml 文件 0-N 微服务的业务配置项。 │ └── aaa_product_cbu/ 文件夹 1 亚非拉生产环境。 │ └── eu_product_cbu/ 文件夹 1 欧洲生产环境。
  • 转发策略配置 本章介绍通过IaC进行转发策略配置的管理,包括监听下的转发策略、健康检查、后端服务器及动态路由管理。对应的资源类型为WiseCloud::LoadBalancer::SLB::RouteRule。 表1 转发策略配置字段说明 参数名 是否必选 说明 listenerGroupName 是 SLB监听名称,一个转发策略实例只能绑定一个监听实例。 targetGroups 否 后端集群 routes 否 转发策略(Locations) dynamicRoutes 否 动态路由 表2 targetGroups字段说明 参数名 是否必选 说明 name 是 后端集群名,不超过150位,不包含特殊字符。 protocol 是 协议,取值为:HTTP或HTTPS。 loadBalancer 是 后端集群负载均衡类型 healthCheck 否 健康检查 表3 loadBalancer字段说明 参数名 是否必选 说明 strategy 是 负载均衡算法,支持"roundRobin"、"protocolParam"、"IP_HASH"、"least_conn"。 slowStartDelay 否 预热时延,不超过30。 slowStartPeriod 否 预热周期,不超过30。 slowStartFactor 否 预热因子,默认为10,不小于1,不超过100。 hashParam 否 哈希转发字段名,Strategy类型为protocolParam时必填 长度不超过50,由字母加数字,下划线,横杠,点组成。 customParam 否 自定义参数,不包含by_lua。 默认取第一个后端集群的健康检查配置,如果为空,使用默认值。 表4 healthCheck字段说明 参数名 是否必选 说明 switchStatus 否 是否开启健康检查,取值为on或off,不填或者其他字符均为off。 protocol 否 协议,默认HTTP,不可修改。 path 否 检查路径,长度不超过500,由字母、数字、横杠、下划线和点组成。 successCodes 否 成功码列表,100-600之间的数字,以逗号隔开。 healthyThreshold 否 健康阈值,取值范围2-10,默认为2。 interval 否 探测间隔时间,取值范围1-50,默认为5。 timeout 否 探测超时时间,取值范围1-300,默认为10。 unhealthyThreshold 否 不健康阈值,取值范围2-10,默认为3。 表5 RouteRule字段说明 参数名 是否必选 说明 location 否 转发策略地址,长度不超过500,非中文。 targetGroup 否 后端集群名,长度不超过150,由字母、数字、下划线、横杠和点组成。 grayServiceName 否 灰度规则 degradeUrl 是 降级url 不降级:unDegrade 默认降级:defaultDegrade 只有值为defaultDegrade时才为默认降级,其他值均认为是不降级。 configs 否 通用与高级配置 表6 dynamicRoutes字段说明 参数名 是否必选 说明 name 是 名称,长度不超过50,由字母、数字、下划线、横杠和点组成,不能包含-in-且不能以-in结尾。 switchStatus 是 开关,取值为on或off。 defaultTargetGroup 是 默认后端集群 enableGrey 是 默认后端集群是否仍参考灰度进行分流,取值为on/off,默认为off,只有输入on才为打开状态。 rules 否 动态路由规则 locations 否 动态路由关联的转发策略列表。 表7 rules字段说明 参数名 是否必选 说明 condition 是 名称 targetGroup 是 后端集群 enableGray 是 是否仍参考灰度进行分流,取值为on或off,默认为off,只有输入on才为打开状态。 转发策略模板yaml - name: hw_test // 必填项,不可修改,不可重复 type: WiseCloud::LoadBalancer::SLB::RouteRule // 资源类型为转发策略配置 properties: routes: // 非必填 - targetGroup: group1 grayServiceName: grayServce_hw location: /abc_hw1 degradeUrl: unDegrade // 必填项,unDegrade不降级,defaultDegrade默认降级 configs: hostSwitch: 'off' addHeaders: - value: b key: aaa clientConnectionFreeTime: 60 rewrites: - source: /test option: break target: /test_hw proxyReadTimeout: 60 setVals: - value: bbb key: aaa keepaliveSwitch: 'off' proxyBuffersSize: 2 m expiresSwitch: 'on' proxyBuffersSwitch: 'on' accessLogSwitch: 'on' clientMaxBodySize: 3 k clientBodyBufferSize: 2 k expiresSize: 2 m proxyNextUpstreamCondition: 'error,timeout' proxySendTimeout: 60 xForwardedForSwitch: 'off' proxyNextUpstreamSwitch: 'on' allowMethod: 'POST,PUT,DELETE' targetGroups: // 非必填 - protocol: HTTP // 必填项 loadBalancer: // 必填项,负载均衡类型 strategy: roundRobin // 必填项,负载均衡策略 healthCheck: // 非必填,健康检查 path: /abc_test protocol: HTTP // 固定项 successCodes: '200,302' healthyThreshold: '2' unhealthyThreshold: '3' switchStatus: 'on' // 默认关闭,on为打开,打开时,不传其他参数均使用默认值 name: group1 // 必填项,并且不可重复,长度不超过150,不包含特殊字符 - protocol: HTTP loadBalancer: hashParam: $xxx strategy: protocolParam customParam: $xxx healthCheck: switchStatus: 'off' name: group2 listenerGroupName: zwx_listener1 // 必填项,SLB监听名称,一个转发策略实例只能绑定一个监听实例 dynamicRoutes: // 非必填 - enableGrey: 'off' defaultTargetGroup: group1 // 必填并且存在于targetGroups中 name: /abc_test1_hw locations: - location: /abc_hw1 rules: - targetGroup: group1 enableGray: 'off' switchStatus: 'on' 父主题: SLB
  • 桶 桶(Bucket)是OBS中存储对象的容器。对象存储提供了基于桶和对象的扁平化存储方式,桶中的所有对象都处于同一逻辑层级,去除了文件系统中的多层级树形目录结构。 每个桶都有自己的存储类别、访问权限、所属区域等属性,用户可以在不同区域创建不同存储类别和访问权限的桶,并配置更多高级属性来满足不同场景的存储诉求。 对象存储服务设置有四类桶存储类别,分别为:标准存储、低频访问存储、归档存储、深度归档存储(受限公测中),从而满足客户业务对存储性能、成本的不同诉求。创建桶时可以指定桶的存储类别,桶的存储类别可以修改。 在OBS中,桶名必须是全局唯一的且不能修改,即用户创建的桶不能与自己已创建的其他桶名称相同,也不能与同账号、其他账号及账号下的所有IAM子用户创建的桶名称相同。桶所属的区域在创建后也不能修改。每个桶在创建时都会生成默认的桶ACL(Access Control List,访问控制列表),桶ACL的每项包含了对被授权用户授予什么样的权限,如读取权限、写入权限等。用户只有对桶有相应的权限,才可以对桶进行操作,如创建、删除、显示、设置桶ACL等。 一个账号及账号下的所有IAM用户可创建的桶+并行文件系统的上限为100个。每个桶中存放的对象的数量和大小总和没有限制,用户不需要考虑数据的可扩展性。 由于OBS是基于REST风格HTTP和HTTPS协议的服务,您可以通过URL(Uniform Resource Locator)来定位资源。 OBS中桶和对象的关系如图1所示: 图1 桶和对象 桶的相关操作请参见桶管理。 父主题: 基本概念
共100000条