华为云用户手册

  • 适用计费项 包年包月包含以下计费项。 表1 适用计费项 计费项 说明 实例规格 对所选的实例规格进行计费,包括vCPU和内存。 存储空间 对数据库存储空间进行计费,包年包月计费方式的存储空间如果超过当前容量,超出的部分将按需计费。 备份空间 GeminiDB Mongo提供了部分免费存储空间,用于存放您的备份数据,其总容量为您购买存储容量的100%。 备份存储用量超过购买存储容量的100%,超出部分将按照备份计费标准收费,计费方式为按需计费(每小时扣费一次),不足一小时按照实际使用时长收费。 公网带宽(可选) GeminiDB Mongo实例支持公网访问,公网访问会产生带宽流量费;GeminiDB Mongo数据库实例在云内部网络产生的流量不计费。 假设您计划购买一个规格为4vCPUs 16GB,3个节点,存储空间容量为12GB的GeminiDB Mongo实例。在购买数据库实例页面底部,您将看到所需费用的明细(不包含备份空间费用),如图1所示。 图1 配置费用 配置费用将包括以下部分: 数据库实例:根据所选实例规格计算的费用。 数据库存储:对数据库存储空间进行计费。 备份空间费用,使用后按照统一标准计费,购买时不包含在配置费用中,可通过云数据库 GeminiDB价格详情查看。
  • 变更配置后对计费的影响 当前包年/包月GeminiDB Mongo实例的规格不满足您的业务需要时,您可以在控制台发起变更规格操作,变更时系统将按照如下规则为您计算变更费用: 实例升配:新配置价格高于老配置价格,此时您需要支付新老配置的差价。 实例降配:新配置价格低于老配置价格,此时华为云会将新老配置的差价退给您。 实例降配会影响云数据库性能,通常不建议您这样操作。这里以资源升配且无任何优惠的场景为例,假设您在2023/04/08购买了一个包年/包月GeminiDB Mongo实例(4vCPUs 16GB 3节点),购买时长为1个月,计划在2023/04/18变更规格为8vCPUs 32GB 3节点。旧配置价格为3130.00 元/月,新配置价格为6010.00 元/月。计算公式如下: 升配费用=新配置价格*剩余周期-旧配置价格*剩余周期 公式中的剩余周期为每个自然月的剩余天数/对应自然月的最大天数。本示例中,剩余周期=12(4月份剩余天数)/ 30(4月份最大天数)+ 8(5月份剩余天数)/ 31(5月份最大天数)=0.6581,代入公式可得升配费用=6100*0.6581-3130*0.6581=1895.33(元) 更多信息请参见变更资源规格费用说明。
  • 计费示例 假设您在2023/03/08 15:50:04购买了一个包年/包月GeminiDB Mongo实例(规格:4 vCPUs 16GB,节点数量:3,存储空间:100GB,备份空间:110GB(赠送100GB,后续收费空间10GB)),计费资源包括实例规格(vCPU、内存、节点数量)、存储空间、备份空间、公网带宽。购买时长为一个月,并在到期前手动续费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 2023/04/08 23:59:59~2023/05/01 23:59:59期间,使用免费备份空间50GB。 2023/05/01 23:59:59~2023/05/08 23:59:59期间,使用计费备份空间10GB,计费时长168小时。 您需要为每个计费周期预先付费,各项GeminiDB Mongo资源单独计费,计费公式如表2所示。 表2 计费公式 资源类型 计费公式 资源单价 实例规格(vCPU和内存) 实例规格单价 * 购买时长 * 节点数量 请参见云数据库 GeminiDB价格详情中的“集群-规格费用”。 存储空间 存储空间单价 * 购买时长 * 存储空间(GB) 请参见云数据库 GeminiDB价格详情中的“集群磁盘空间计费信息”。 备份空间 备份空间单价 *计费时长 * ( 备份空间 - 存储空间)(GB) 说明: 计费时长:备份超过免费空间大小的使用时长。 请参见云数据库 GeminiDB价格详情中的“备份空间计费信息”。 公网带宽 按固定带宽值计费 请参见弹性公网IP价格详情。 图2给出了上述示例配置的费用计算过程。 图中价格仅供参考,实际计算请以云数据库 GeminiDB价格详情中的价格为准。 图2 包年/包月GeminiDB Mongo费用计算示例
  • 到期后影响 图3描述了包年/包月GeminiDB Mongo实例各个阶段的状态。购买后,在计费周期内实例正常运行,此阶段为有效期;实例到期而未续费时,将陆续进入宽限期和保留期。 图3 包年/包月GeminiDB Mongo实例生命周期 到期预警 包年/包月GeminiDB Mongo实例在到期前第7天内,系统将向用户推送到期预警消息。预警消息将通过邮件、短信和站内信的方式通知到华为云账号的创建者。 到期后影响 当您的包年/包月GeminiDB Mongo实例到期未续费,首先会进入宽限期,实例状态变为“已过期”。宽限期内您可以正常访问GeminiDB Mongo实例,但以下操作将受到限制: 变更实例规格 包年/包月转按需 退订 如果您在宽限期内仍未续费包年/包月GeminiDB Mongo实例,那么就会进入保留期,实例状态变为“已冻结”,您将无法对处于保留期的包年/包月资源执行任何操作。 保留期到期后,如果包年/包月GeminiDB Mongo实例仍未续费,那么实例将被释放,数据无法恢复。 华为云根据客户等级定义了不同客户的宽限期和保留期时长。 关于续费的详细介绍请参见续费概述。
  • 适用场景 包年/包月计费模式需要用户预先支付一定时长的费用,适用于长期、稳定的业务需求。以下是一些适用于包年/包月计费模式的业务场景: 稳定业务需求:对于长期运行且资源需求相对稳定的业务,如企业官网、在线商城、博客等,包年/包月计费模式能提供较高的成本效益。 长期项目:对于周期较长的项目,如科研项目、大型活动策划等,包年/包月计费模式可以确保在整个项目周期内资源的稳定使用。 业务高峰预测:如果能预测到业务高峰期,如电商促销季、节假日等,可提前购买包年/包月资源以应对高峰期的需求,避免资源紧张。 数据安全要求高:对于对数据安全性要求较高的业务,包年/包月计费模式可确保资源的持续使用,降低因资源欠费而导致的数据安全风险。
  • 计费周期 包年/包月GeminiDB Mongo实例的计费周期是根据您购买的时长来确定的(以UTC+8时间为准)。一个计费周期的起点是您开通或续费资源的时间(精确到秒),终点则是到期日的23:59:59。 例如,如果您在2023/03/08 15:50:04购买了一台时长为一个月的GeminiDB Mongo实例,那么其计费周期为:2023/03/08 15:50:04 ~ 2023/04/08 23:59:59。
  • 步骤3:用户登录并验证权限 用户创建完成后,可以使用新用户的用户名及身份凭证登录华为云验证权限,即“GeminiDB ReadOnlyAccess”权限。更多用户登录方法请参见用户登录华为云方法。 在华为云登录页面,单击右下角的“ IAM 用户登录”。 在“IAM用户登录”页面,输入账号名、用户名及用户密码,使用新创建的用户登录。 账号名为该IAM用户所属华为账号的名称。 用户名和密码为账号在IAM创建用户时输入的用户名和密码。 如果登录失败,您可以联系您的账号主体,确认用户名及密码是否正确,或是重置用户名及密码,重置方法请参见忘记IAM用户密码。 登录成功后,进入华为云控制台,请先切换至授权区域。 图13 切换至授权区域 在“服务列表”中选择GeminiDB Mongo接口,进入主界面,单击右上角“购买数据库实例”,如果提示权限不足,表示“GeminiDB ReadOnlyAccess”已生效。 在“服务列表”中选择除GeminiDB Mongo接口服务外的任一服务,如“弹性云服务器”,如果提示权限不足,表示“GeminiDB ReadOnlyAccess”已生效。
  • 计费周期 按需计费GeminiDB Mongo实例按秒计费,每一个小时整点结算一次费用(以GMT+8时间为准),结算完毕后进入新的计费周期。计费的起点以GeminiDB Mongo实例创建成功的时间点为准,终点以实例删除时间为准。 实例从创建到启动需要一定时长,计费的起点是创建成功的时间点,而非开始创建的时间。您可以在实例详情页“基本信息”页签查看这个时间,创建成功的时间点对应界面上的“创建时间”。 例如,您在8:45:30购买了一个按需计费的GeminiDB Mongo实例,相关资源包括计算资源(vCPU和节点数量)、存储容量和备份存储,然后在8:55:00将其删除,则计费周期为8:00:00 ~ 9:00:00,在8:45:30 ~ 8:55:30间产生费用,该计费周期内的计费时长为600秒。
  • 计费示例 假设您在2023/04/18 9:59:30购买了一个按需计费实例(规格:4vCPUs 16GB,节点数量:3,存储容量:100GB,备份存储:110GB(赠送100GB,后续收费空间10GB)),计费资源包括计算资源(vCPU和节点数量)和存储容量,然后在2023/04/18 10:45:46将其删除,则: 第一个计费周期为9:00:00 ~ 10:00:00,在9:59:30 ~ 10:00:00间产生费用,该计费周期内的计费时长为30秒。 第二个计费周期为10:00:00 ~ 11:00:00,在10:00:00 ~ 10:45:46间产生费用,该计费周期内的计费时长为2746秒。 10:00:00 ~ 10:45:00期间,使用免费备份空间。 10:45:00 ~ 10:45:46期间,使用计费备份空间10GB,计费时长46秒。 您需要为每个计费周期付费,各项GeminiDB Mongo实例单独计费,计费公式如表2所示。产品价格详情中标出了实例的每小时价格,您需要将每小时价格除以3600,得到每秒价格。 表2 计费公式 资源类型 计费公式 资源单价 计算资源(vCPU和节点数量) 实例规格单价 * 计费时长 请参见云数据库 GeminiDB价格详情中的“集群-规格费用”。 存储容量 存储容量单价 * 购买时长 请参见云数据库 GeminiDB价格详情中的“集群磁盘空间计费信息”。 备份空间 备份空间单价 * 计费时长 * ( 备份容量 - 存储空间)(GB) 说明: 计费时长:备份超过免费空间大小的使用时长。 请参见云数据库 GeminiDB价格详情中的“备份空间计费信息。 公网流量 按固定带宽值采用阶梯计费 0Mbit/s~5Mbit/s(含):均为一个统一的单价 大于5Mbit/s:按每Mbit/s计费 请参见弹性 云服务器价格 详情中的“带宽价格”,或者弹性公网IP价格详情。 图2给出了上述示例配置的费用计算过程。 图中价格仅供参考,实际计算请以云数据库 GeminiDB价格详情中的价格为准。 在按需付费模式下,价格计算器上的金额如果遇小数点,则保留小数点后两位,第三位四舍五入。如遇四舍五入后不足¥0.01,则按¥0.01展示。 图2 按需计费GeminiDB Mongo费用计算示例
  • 变更配置后对计费的影响 如果您在购买按需计费实例后变更了实例配置,会产生一个新订单并开始按新配置的价格计费,旧订单自动失效。 如果您在一个小时内变更了实例配置,将会产生多条计费信息。每条计费信息的开始时间和结束时间对应不同配置在该小时内的生效时间。 例如,您在9:00:00购买了一台按需计费实例,实例规格为 4vCPUs 16GB,并在9:30:00升配为 8vCPUs 32GB,那么在9:00:00 ~ 10:00:00间会产生两条计费信息。 第一条对应9:00:00 ~ 9:30:00,实例规格按照 4vCPUs 16GB计费。 第二条对应9:30:00 ~ 10:00:00,实例规格按照 8vCPUs 32GB计费。
  • 适用计费项 按需计费包含以下计费项。 表1 适用计费项 计费项 说明 实例规格 对所选的实例规格进行计费,包括vCPU和内存。 存储空间 对数据库存储空间进行计费,按需计费的存储空间费用按照实际使用量每小时计费。 备份空间 GeminiDB Mongo提供了部分免费存储空间,用于存放您的备份数据,其总容量为您购买存储容量的100%。 备份存储用量超过购买存储容量的100%,超出部分将按照备份计费标准收费,计费方式为按需计费(每小时扣费一次),不足一小时按照实际使用时长收费。 公网带宽(可选) GeminiDB Mongo实例支持公网访问,公网访问会产生带宽流量费;GeminiDB Mongo数据库实例在云内部网络产生的流量不计费。 假设您计划购买一个规格为4vCPUs 16GB,3个节点,存储空间容量为100GB的GeminiDB Mongo实例。在购买数据库实例页面底部,您将看到所需费用的明细(不包含备份空间费用),如图1所示。 图1 配置费用 配置费用将包括以下部分: 云数据库虚拟机:根据所选配置(包括vCPU和内存)计算的费用。 云数据库存储空间:根据所选存储空间计算的费用。 备份空间费用,使用后按照统一标准计费,购买时不包含在配置费用中,可通过云数据库 GeminiDB价格详情查看。
  • 操作步骤 获取安装包。 进入官网下载链接地址:https://www.mongodb.com/download-center#community。 在“Version”中选择“4.0.27”,在“Platform”中选择“RedHat/CentOS 7.0 ”(Platform要与弹性云服务器的操作系统版本保持一致),在“Package”中选择“tgz”。如图1所示。 图1 MongoDB官网页面 单击“Download”下载4.0.27版本的二进制安装包,安装包名称为“mongodb-linux-x86_64-rhel70-4.0.27.tgz”。 将安装包上传到弹性云服务器上。 创建并登录弹性云服务器,请参见购买弹性云服务器和登录弹性云服务器。 在弹性云服务器上,解压安装包。 tar zxvf mongodb-linux-x86_64-rhel70-4.0.27.tgz 进入安装包的“bin”文件夹下,获取客户端工具。 cd mongodb-linux-x86_64-rhel70-4.0.27/bin 其中,常用工具包含如下: MongoDB客户端mongo。 数据导出工具mongoexport。 数据导入工具mongoimport。 使用客户端工具前,需要对工具赋予执行权限。 执行chmod +x mongo,赋予连接实例的权限。 执行chmod +x mongoexport,赋予导出数据的权限。 执行chmod +x mongoimport,赋予导入数据的权限。 客户端安装成功后,您可以通过客户端连接实例。 连接副本集实例,请参见通过内网连接副本集实例。 注:如果执行MongoDB客户端时出现类似无法找到libcrypto.so.10的错误,请检查您下载的客户端是否与弹性云服务器操作系统匹配。
  • 使用须知 mongoexport和mongoimport工具仅支持全量数据迁移。为保障数据一致性,迁移操作开始前请停止源数据库的相关业务,并停止数据写入。 建议您尽量选择在业务低峰期迁移数据,避免在迁移过程中对业务造成影响。 不支持迁移系统库admin和local。 确保源库中系统库admin和local没有创建业务集合,如果已经有业务集合,必须在迁移前将这些业务集合从admin和local库中迁移出来。 导入数据之前,确保源端有必要的索引,即在迁移前删除不需要的索引,创建好必要的索引。 如果选择迁移分片集群,必须在目标库创建好要分片的集合,并配置数据分片。同时,迁移前必须要创建好索引。
  • 前提条件 准备弹性云服务器或可访问GeminiDB Mongo 数据库的设备。 通过内网连接GeminiDB Mongo数据库实例,需要创建并登录弹性云服务器,请参见购买弹性云服务器和登录弹性云服务器。 通过公网地址连接GeminiDB Mongo数据库实例,需具备以下条件。 为实例中的节点绑定公网地址,如何绑定公网地址,请参见绑定弹性公网IP。 保证本地设备可以访问GeminiDB Mongo 数据库绑定的公网地址。 在已准备的弹性云服务器或可访问GeminiDB Mongo 数据库的设备上,安装数据迁移工具。 安装数据迁移工具,请参见如何安装MongoDB客户端。 MongoDB客户端会自带mongoexport和mongoimport工具。
  • 前提条件 准备弹性云服务器或可访问GeminiDB Mongo 的设备。 通过内网连接GeminiDB Mongo 数据库实例,需要创建并登录弹性云服务器,请参见购买弹性云服务器和登录弹性云服务器。 通过公网地址连接GeminiDB Mongo数据库实例,需具备以下条件。 为实例中的节点绑定公网地址,如何绑定公网地址,请参见绑定弹性公网IP。 保证本地设备可以访问GeminiDB Mongo 数据库绑定的公网地址。 在已准备的弹性云服务器或可访问GeminiDB Mongo 的设备上,安装数据迁移工具。 安装数据迁移工具,请参见如何安装MongoDB客户端。 MongoDB客户端会自带mongodump和mongorestore工具。 MongoDB客户端版本须和实例相匹配,若版本不匹配则会有兼容性问题出现。
  • 使用须知 mongodump和mongorestore工具仅支持全量数据迁移。为保障数据一致性,迁移操作开始前请停止源数据库的相关业务,并停止数据写入。 建议您尽量选择在业务低峰期迁移数据,避免在迁移过程中对业务造成影响。 不支持迁移系统库admin和local。 确保源库中系统库admin和local没有创建业务集合,如果已经有业务集合,必须在迁移前将这些业务集合从admin和local库中迁移出来。 导入数据之前,确保源端有必要的索引,即在迁移前删除不需要的索引,创建好必要的索引。 如果选择迁移分片集群,必须在目标库创建好要分片的集合,并配置数据分片。同时,迁移前必须要创建好索引。 如果使用mongodump工具备份失败(示例:备份进度至97%时报错),建议您尝试增大虚拟机磁盘空间,预留部分冗余空间,再重新执行备份。 客户侧使用的是rwuser账号,仅支持操作客户业务库表。所以,在使用时建议指定库和表,仅对业务数据执行导入导出。不指定库表,全量进行导入导出,可能会遇到权限不足的问题。
  • 连接方式介绍 GeminiDB Mongo副本集实例支持通过内网和公网的方式连接。 表1 连接方式 连接方式 使用场景 说明 内网连接 系统默认提供内网IP地址。 当应用部署在弹性云服务器上,且该弹性云服务器与数据库实例处于同一区域、同一VPC内时,建议使用内网IP通过弹性云服务器连接数据库实例。 安全性高,可实现数据库实例的较好性能。 公网连接 不能通过内网IP地址访问数据库实例时,使用公网访问,建议单独绑定弹性公网IP连接弹性云服务器(或公网主机)与数据库实例。 降低安全性。 为了获得更快的传输速率和更高的安全性,建议您将应用迁移到与您的数据库实例在同一VPC子网内,使用内网连接。 用户需要购买弹性公网IP,请参见弹性公网IP计费说明。 。 父主题: 连接副本集实例
  • 典型应用 游戏场景 兼容MongoDB协议,游戏应用可以将一些游戏数据,如用户装备、用户积分等存储其中。游戏玩家活跃高峰期,对并发能力要求较高,可以快速灵活添加计算节点以应对高并发场景。 优势: 灵活 游戏开服6小时内需多次扩容,GeminiDB Mongo计算节点增加,扩容性能倍数提升,可灵活轻松应对。 数据恢复快 表级时间点恢复,支持游戏快速回档。 稳定扩容 扩容期间性能稳定,不影响游戏体验。
  • 创建rf_admin_trust委托(可选) 进入华为云官网,打开控制台管理界面,鼠标移动至个人账号处,打开“ 统一身份认证 ”菜单。 图1 控制台管理界面 图2 统一身份认证菜单 进入“委托”菜单,搜索“rf_admin_trust”委托。 图3 委托列表 如果委托存在,则不用执行接下来的创建委托的步骤 如果委托不存在时执行接下来的步骤创建委托 单击步骤2界面中的“创建委托”按钮,在委托名称中输入“rf_admin_trust”,选择“云服务”,选择“ RFS ”,单击“完成”。 图4 创建委托 单击“立即授权”。 图5 委托授权 在搜索框中输入“Tenant Administrator”权限,并勾选搜索结果,单击“下一步”。 图6 选择策略 选择“所有资源”,并单击“确定”完成配置。 图7 设置最小授权范围 “委托”列表中出现“rf_admin_trust”委托则创建成功。 图8 委托列表
  • 约束与限制 部署该解决方案之前,需 注册华为账号 并开通华为云,完成实名认证,且账号不能处于欠费或冻结状态,请根据 资源和成本规划 预估价格,确保余额充足。如果计费模式选择“包年包月”,请确保账户余额充足以便一键部署资源的时候可以自动支付;或者在一键部署的过程进入费用中心,找到“待支付订单”并手动完成支付。 该解决方案部署成功后,搭建WGCLOUD运维监控平台大约用时10分钟,完成后方可参考开始使用进行验证。 如果选用IAM委托权限部署资源,请确保使用的华为云账号有IAM的足够权限,具体请参考创建rf_admin_trust委托(可选);如果使用华为主账号或admin用户组下的IAM子账户可不选委托,将采用当前登录用户的权限进行部署。
  • 响应示例 状态码: 202 Accepted { "jobs" : [ { "id" : "c7debc9c-8e09-4a5d-8dd6-cc44f78jb20r", "name" : "DRS-1234", "status" : "Success" }, { "id" : "dc6016cf-f3b6-4c2d-b4d7-5084b0fjb20r", "name" : "DRS-2345", "status" : "Failed", "error_code" : "DRS.10000010", "error_msg" : "Job does not exist, please check job ID" } ] } 状态码: 400 Bad Request { "error_code" : "DRS.10000001", "error_msg" : "Failed." }
  • 请求示例 更新租户指定ID批量异步任务详情,任务模式为全量+增量,公网网络类型。 https://{endpoint}/v5/054ba152d480d55b2f5dc0069e7ddef0/batch-async-jobs/bd4193aa-072d-4ce6-beec-adffc7252341 { "jobs" : [ { "type" : "all", "params" : { "job_id" : "c7debc9c-8e09-4a5d-8dd6-cc44f78jb20r", "base_info" : { "name" : "DRS-1234", "job_type" : "sync", "engine_type" : "oracle-to-gaussdbv5", "job_direction" : "up", "task_type" : "FULL_INCR_TRANS", "net_type" : "eip", "charging_mode" : "on_demand", "enterprise_project_id" : "0", "description" : "", "expired_days" : "14", "tags" : [ { "key" : "test", "value" : "test" } ] }, "source_endpoint" : [ { "db_type" : "oracle", "endpoint_type" : "offline", "endpoint_role" : "so", "endpoint" : { "endpoint_name" : "oracle", "ip" : "10.154.217.239", "db_port" : "1521", "db_user" : "ORACLE_USER", "db_name" : "serviceName.orcl", "db_password" : "******" }, "ssl" : { "ssl_link" : false } } ], "target_endpoint" : [ { "db_type" : "gaussdbv5", "endpoint_type" : "cloud", "endpoint_role" : "ta", "endpoint" : { "endpoint_name" : "cloud_gaussdbv5", "instance_id" : "c2c7579bc09c490b9d8009db715aeb0ain14", "db_user" : "root", "db_password" : "******" }, "cloud" : { "region" : "cn-north-4", "project_id" : "9dc8c0f3f74c4dbb23c29cf0318ee561", "az_code" : "cn-north-4a,cn-north-4g,cn-north-4c" }, "vpc" : { "vpc_id" : "2cb5d364-ae63-4fbb-85b7-7d59f4a88f8f", "subnet_id" : "2cb54324-ae63-4fbb-85b7-7d59f4a88f8f", "security_group_id" : "039a3s89-665a-43e2-9b4f-bda7d9ee148d" } } ], "alarm_notify" : { "alarm_to_user" : true, "topic_urn" : "urn:smn:cn-north-4:f2c2468c3ee7410c862a461ca073d2f2:test", "delay_time" : 60 }, "speed_limit" : [ { "begin" : "16:00", "end" : "15:59", "speed" : "10" } ], "policy_config" : { "ddl_trans" : false }, "db_object" : { "object_scope" : "table", "target_root_db" : { "db_name" : "target_db_name", "db_encoding" : "utf8" }, "object_info" : { "source_db1" : { "name" : "source_db1", "all" : false, "tables" : { "source_tb1" : { "type" : "table", "name" : "source_tb1", "all" : true }, "source_tb2" : { "type" : "table", "name" : "source_tb2", "all" : true } } } } }, "node_info" : { "spec" : { "node_type" : "medium" } } } }, { "type" : "endpoint", "params" : { "job_id" : "dc6016cf-f3b6-4c2d-b4d7-5084b0fjb20r", "source_endpoint" : [ { "db_type" : "oracle", "endpoint_type" : "offline", "endpoint_role" : "so", "endpoint" : { "endpoint_name" : "oracle", "ip" : "10.154.227.134", "db_port" : "1521", "db_user" : "ORACLE_USER", "db_name" : "serviceName.orcl", "db_password" : "******" }, "ssl" : { "ssl_link" : false } } ], "target_endpoint" : [ { "db_type" : "gaussdbv5", "endpoint_type" : "cloud", "endpoint_role" : "ta", "endpoint" : { "id" : "f59e6118-da89-4fdb-9b98-65f56709928a", "endpoint_name" : "cloud_gaussdbv5", "instance_id" : "c2c7579bc09c490b9d8009db715aeb0ain14", "db_user" : "root", "db_password" : "******" }, "cloud" : { "region" : "cn-north-4", "project_id" : "9dc8c0f3f74c4dbb23c29cf0318ee561", "az_code" : "cn-north-4a,cn-north-4g,cn-north-4c" }, "vpc" : { "vpc_id" : "2cb5d364-ae63-4fbb-85b7-7d59f4a88f8f", "subnet_id" : "2cb54324-ae63-4fbb-85b7-7d59f4a88f8f", "security_group_id" : "039a3s89-665a-43e2-9b4f-bda7d9ee148d" }, "ssl" : { "ssl_link" : false } } ] } } ] }
  • 响应参数 状态码: 202 表35 响应Body参数 参数 参数类型 描述 jobs Array of objects 批量更新指定ID异步任务响应体。 详情请参见表36。 表36 jobs字段数据结构说明 参数 参数类型 描述 id String 任务ID。 name String 任务名称。 status String 操作结果。 error_code String 错误码。 error_msg String 错误描述。 状态码: 400 表37 响应Body参数 参数 参数类型 描述 error_code String 错误码。 最小长度:12 最大长度:12 error_msg String 错误描述。 最小长度:1 最大长度:512
  • 响应示例 状态码: 200 OK { "name" : "DRS-mysql", "type" : "mysql", "endpoint" : { "endpoint_name" : "mysql", "ip" : "127.0.0.1", "db_port" : "3306", "db_user" : "root" }, "description" : "description", "connection_id" : "835e1d79-24ac-411d-a1c8-22c000280659", "ssl" : { "ssl_link" : false }, "create_time" : 1716879012121, "enterprise_project_id" : "0" } 状态码: 400 Bad Request { "error_code" : "DRS.10010065", "error_msg" : "Connection manager name is already exists." }
  • 请求示例 创建一个MySQL连接示例。 https://{endpoint}/v5/5237e10fe9aa4ad5b16b6a5245248314/connections { "name" : "DRS-mysql", "db_type" : "mysql", "description" : "description", "endpoint" : { "endpoint_name" : "mysql", "ip" : "127.0.0.1", "db_port" : "3306", "db_user" : "root", "db_password" : "password" }, "ssl" : { "ssl_link" : false }, "enterprise_project_id" : "0" }
  • 响应参数 状态码: 200 表9 响应Body参数 参数 参数类型 描述 connection_id String 连接ID。 name String 连接名称。 create_time Long 连接创建时间,格式为时间戳。 db_type String 连接类型。 config ConnectionConfig object 连接的配置项。 endpoint BaseEndpoint object 数据库基本信息。 vpc CloudVpcInfo object 数据库实例所在VPC,子网,安全组等信息。 ssl EndpointSslConfig object 数据库SSL证书信息。 表10 ConnectionConfig 参数 参数类型 描述 driver_name String 驱动程序名称。 表11 BaseEndpoint 参数 参数类型 描述 id String 数据库信息ID。 endpoint_name String 数据库场景类型。取值: oracle:云下自建Oracle数据库。 ecs_oracle:华为云E CS 自建Oracle数据库。 cloud_gaussdbv5:华为云数据库 GaussDB 分布式。 mysql:他云/本地自建MySQL数据库。 ecs_mysql:华为云ECS自建MySQL数据库。 cloud_mysql:华为云数据库RDS for MySQL。 redis:云下自建Redis数据。 ecs_redis:华为云ECS自建Redis数据。 rediscluster:云下自建Redis集群数据库。 ecs_rediscluster:华为云ECS自建Redis集群数据库。 cloud_gaussdb_redis:华为云数据库GeminiDB Redis。 postgresql: 云下自建PostgreSQL数据库。 ecs_postgresql: 华为云ECS自建PostgreSQL数据库。 cloud_postgresql: 华为云数据库RDS for PostgreSQL。 mongodb: 云下自建MongoDB数据库。 ecs_mongodb: 华为云ECS自建MongoDB数据库。 cloud_mongodb: 华为云文档数据库服务DDS。 ip String 数据库IP。约束:- 数据库为自建MongoDB时,数据库IP与端口之间用“:”英文冒号拼接,多个值之间请用“,”英文逗号隔开,最多支持填写3个IP地址或 域名 。- 数据库为DDS实例时,数据库IP与端口之间用“:”英文冒号拼接,多个IP端口之间请用“,”英文逗号分隔。- 数据库为Redis集群时,请填写源端Redis集群所有分片的IP地址和对应端口,数据库IP与端口之间用“:”英文冒号拼接,多个IP端口之间请用“,”英文逗号分隔,并且推荐填写集群分片的Slave节点的IP地址。最多支持填写32个IP地址或域名,多个值之间请用英文逗号隔开。示例:- MySQL:ip- MongoDB:ip:port,ip:port,ip:port- DDS:ip:port,ip:port - Redis集群:ip:port,ip:port db_port String 数据库端口。 约束:输入范围为1-65535之间的整数。 db_user String 数据库用户名。 db_password String 数据库密码。 instance_id String 华为云数据库实例ID。 instance_name String 华为云数据库实例名称。 db_name String 指定数据库名称。例如: oracle:serviceName.orcl。 source_sharding Array of BaseEndpoint objects 物理源库信息。 表12 CloudVpcInfo 参数 参数类型 描述 vpc_id String 数据库实例所在的虚拟私有云ID,获取方法如下: 方法1:登录虚拟私有云服务的控制台界面,在虚拟私有云的详情页面查找VPC ID。 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考查询VPC列表。 subnet_id String 数据库实例所在子网ID,获取方法如下: 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找网络ID。 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考查询子网列表。 security_group_id String 数据库实例所在的安全组ID,获取方法如下: 方法1:登录虚拟私有云服务的控制台界面,在安全组的详情页面查找安全组ID。 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考查询安全组列表。 表13 EndpointSslConfig 参数 参数类型 描述 ssl_link Boolean 是否SSL安全连接。如果数据库启用了SSL安全连接,参数值为true。 ssl_cert_name String SSL证书名字。 ssl_cert_key String SSL证书内容,用base64加密。 ssl_cert_check_sum String SSL证书内容checksum值,后端校验,源库安全连接必选。 ssl_cert_password String SSL证书密码,证书文件后缀为.p12时必填。 状态码: 400 表14 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 发送的实体的MIME类型。推荐用户默认使用application/json,如果API是对象、镜像上传等接口,媒体类型可按照流类型的不同进行确定。 X-Auth-Token 是 String 从IAM服务获取的用户Token。 用户Token也就是调用获取用户Token接口的响应值,该接口是唯一不需要认证的接口。 请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。 X-Language 否 String 请求语言类型。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 连接名称。 约束:连接名称在4位到50位之间,不区分大小写,可以包含字母、数字、中划线或下划线,不能包括其他特殊字符。 db_type 是 String 连接类型,包含: mysql postgresql mongodb oracle config 否 ConnectionConfig object 连接的配置项,不同类型的连接配置项不同。 description 否 String 描述,长度不能超过255个字符。 endpoint 是 BaseEndpoint object 数据库连接基本信息。 vpc 否 CloudVpcInfo object 数据库实例所在VPC,子网,安全组等信息。 ssl 否 EndpointSslConfig object 数据库SSL证书信息。 cloud 否 CloudBaseInfo object 数据库实例所在Region,项目等信息。 enterprise_project_id 否 String 企业项目ID。 表4 ConnectionConfig 参数 是否必选 参数类型 描述 driver_name 否 String 驱动程序名称。 表5 BaseEndpoint 参数 是否必选 参数类型 描述 id 否 String 数据库信息ID。 endpoint_name 是 String 数据库场景类型。取值: oracle:云下自建Oracle数据库。 ecs_oracle:华为云ECS自建Oracle数据库。 cloud_gaussdbv5:华为云数据库GaussDB分布式。 mysql:他云/本地自建MySQL数据库。 ecs_mysql:华为云ECS自建MySQL数据库。 cloud_mysql:华为云数据库RDS for MySQL。 redis:云下自建Redis数据。 ecs_redis:华为云ECS自建Redis数据。 rediscluster:云下自建Redis集群数据库。 ecs_rediscluster:华为云ECS自建Redis集群数据库。 cloud_gaussdb_redis:华为云数据库GeminiDB Redis。 postgresql: 云下自建PostgreSQL数据库。 ecs_postgresql: 华为云ECS自建PostgreSQL数据库。 cloud_postgresql: 华为云数据库RDS for PostgreSQL。 mongodb: 云下自建MongoDB数据库。 ecs_mongodb: 华为云ECS自建MongoDB数据库。 cloud_mongodb: 华为云文档数据库服务DDS。 ip 否 String 数据库IP。约束:- 数据库为自建MongoDB时,数据库IP与端口之间用“:”英文冒号拼接,多个值之间请用“,”英文逗号隔开,最多支持填写3个IP地址或域名。- 数据库为DDS实例时,数据库IP与端口之间用“:”英文冒号拼接,多个IP端口之间请用“,”英文逗号分隔。- 数据库为Redis集群时,请填写源端Redis集群所有分片的IP地址和对应端口,数据库IP与端口之间用“:”英文冒号拼接,多个IP端口之间请用“,”英文逗号分隔,并且推荐填写集群分片的Slave节点的IP地址。最多支持填写32个IP地址或域名,多个值之间请用英文逗号隔开。示例:- MySQL:ip- MongoDB:ip:port,ip:port,ip:port- DDS:ip:port,ip:port - Redis集群:ip:port,ip:port db_port 否 String 数据库端口。 约束:输入范围为1-65535之间的整数。 db_user 是 String 数据库用户名。 db_password 是 String 数据库密码。 instance_id 否 String 华为云数据库实例ID。 instance_name 否 String 华为云数据库实例名称。 db_name 否 String 指定数据库名称。例如: oracle:serviceName.orcl。 source_sharding 否 Array of BaseEndpoint objects 物理源库信息。 表6 CloudVpcInfo 参数 是否必选 参数类型 描述 vpc_id 是 String 数据库实例所在的虚拟私有云ID,获取方法如下: 方法1:登录虚拟私有云服务的控制台界面,在虚拟私有云的详情页面查找VPC ID。 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考查询VPC列表。 subnet_id 是 String 数据库实例所在子网ID,获取方法如下: 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找网络ID。 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考查询子网列表。 security_group_id 否 String 数据库实例所在的安全组ID,获取方法如下: 方法1:登录虚拟私有云服务的控制台界面,在安全组的详情页面查找安全组ID。 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考查询安全组列表。 表7 EndpointSslConfig 参数 是否必选 参数类型 描述 ssl_link 否 Boolean 是否SSL安全连接。如果数据库启用了SSL安全连接,参数值为true。 ssl_cert_name 否 String SSL证书名字。 ssl_cert_key 否 String SSL证书内容,用base64加密。 ssl_cert_check_sum 否 String SSL证书内容checksum值,后端校验,源库安全连接必选。 ssl_cert_password 否 String SSL证书密码,证书文件后缀为.p12时必填。 表8 CloudBaseInfo 参数 是否必选 参数类型 描述 region 是 String 区域ID,当数据库实例类型为ecs(华为云ECS自建数据库),cloud(华为云数据库)时为必填项。获取方法请参见地区和终端节点。 注意:当该Region下存在子项目时,Region ID为区域项目ID与子项目ID,由“_”下划线拼接,例如:cn-north-4_abc。 project_id 是 String 租户在某一Region下的Project ID。 获取方法请参见获取项目ID。 az_code 否 String 数据库所在可用分区(AZ)名称。
  • 整体方案优势 湖仓一体存算分离:核心平台采用业界当先的湖仓一体、存算分离架构,实现对海量的多类型数据资源进行7种汇聚方式,并实现数据分层计算存储,减少无效搬迁,一份入湖,多源使用。存算分离架构支撑未来PB级别、低成本存储计算扩容,支持与底层计算引擎融合的架构能力。 信创平台数据安全:整体平台安全可信。其中核心数据存储、计算模块符合国家信创要求,周边平台模块全部采用国产化、依托于自主可控技术能力建设。 全流程的数据安全能力。面向数据要素流通、数据资源要素化,提供身份管理、印章管理、签名验签、授权访问、权限控制等能力,并针对数据采集、传输、存储、加工、流通全流程提供数据分级分类、存储加密、数据脱敏、数据水印、授权访问等能力建设。 一站式便携使用:便捷使用、全流程一站式的开发工具,面向开发按需使用。建设xx平台建设数据开发服务模块,包含 数据治理 服务、数据 API服务 、数据产品服务、应用开发服务等。面向数据运营商、企业、社会开发者提供丰富的数据开发服务,实现数据资源到数据资产、数据产品应用能力。 统一市场运营管控:面向数据要素流通,进行统一产品上线流程,并全流程运营管理。建设授权管理系统模块,提供运营门户、运营管理系统,面向数据开发利用方、数据需求方等数据要素市场主体进行服务,实现用户注册、场景申请、数据商品市场、开发工具市场、算力市场、授权管理等服务能力。实现授权运营的全面流程管理、运营审核,助力数据产品、数据要素可信流通。
  • 整体方案设计 图1 方案设计图 如上图所示,数据要素流通涉及六类参与方,包括平台运营方、数据提供方、监管方、数据授权运营方、数据需求方、开发利用方。其中平台运营方、授权运营方、开发利用方深度使用 华为云Stack 云平台和数据底座能力,包括云平台运营中心(智能云管理平台)、数据底座( MRS /DWS等)、数据治理工具( DataArts Studio /ROMA)等云服务和产品。 功能架构 运营平台整体功能设计如下,采用三横两纵架构,三横作为基础平台,主要包含数据底座、数据开发服务、数据授权运营管理三部分。两纵作为支撑部分,主要包含数字信任及数据安全、运维管理二部分。当期建设重点围绕公共数据资源承载,主要建设内容: 图2 功能架构图 运营平台主要建设的功能模块如下: 数据底座:包含IaaS服务模块、PaaS服务模块、隐私计算模块。IaaS模块,提供计算服务、存储服务、网络服务等功能。PaaS服务模块,包提供大数据平台、 数据仓库 、通用关系型数据库、分布式高性能数据库、内存数据库、数据库复制等功能。隐私计算模块,提供全流程数据处理安全隐私保护能力,包含数据访问权限控制、数据使用审批、数据传输加密、数据密态计算、数据使用审计等功能。 整体建设核心模块采用国产自主可控产品,实现可信安全、自主可控。提供大数据计算与分析相关技术组件(实时计算、资源调度、内存计算等)。打造湖仓一体、批流一体、存算分离的数据底座架构,实现对多种形态数据的汇聚、存储、计算能力。 数据开发服务:包含数据治理模块、应用开发模块。 授权运营管理:包含资源目录管理、数据资产管理模块。 数字信任与数据安全:包含数据安全系统、数字信任服务模块。 运维管理:包含平台运维中心、平台运营中心、运营指挥中心等模块。 集成架构 当期运营平台与周边平台、协作单位建设平台,进行系统集成对接,形成整体的公共数据开发与运营对外服务能力。 与监督管理方(市委网信办、数据办、大数据中心等):作为数据授权管理方,进行公共数据授权运营管理的系统对接,通过数据场景化数据应用场景授权,进行上位管理。实现一场景、一授权,无场景不授权。 与数据提供方(大数据中心):通过公共数据授权管理进行场景授权管理。授权后,数据通过多种数据汇聚采集方案,其中公共数据资源通过前置机方式,与大数据中心资源平台进行对接,采用批量或实时方式导入运营平台。 与开发利用方:授权主体开发利用,通过运营平台提供统一的数据开发服务工具能力,进行授权数据的加工、治理、服务、开发,实现公共数据、社会数据、行业数据等开发利用。 与数据需求方:数据使用方,如银行、医院、保险、社会用户等,通过授权运营管理平台,进行数据资产的开发使用或数据产品的申请使用,获取相关数据产品。 部署架构 本次运营平台建设主要接入公共数据资源,需依据市政务云管理办法要求建设,进行政务外网区和互联网区两个区域部署,整体方案建设满足三级等保要求。 针对政务外网区和互联网区,本项目规划两个region区域建设,通过政务外网区与大数据中心进行公共数据资源对接,通过互联网区域实现企业数据、部分行业数据的对接,整体符合政务 云安全 等级保护的要求。从当前实际业务看,本项目大部分数据来源于政务外网区,因此大数据、数仓、数据治理等数据类资源能力和相应数据安全能力主要部署在政务外网区。互联网区域提供来自互联网侧的数据需求方的数据安全访问能力。建设规模随后续企业类相关业务的增长需要再逐步扩容。 图3 部署架构图
  • 关键方案设计 【平台资源与权限配置】 VDC整体规划方案 相关概念: VDC是企业组织架构的逻辑映射,最多支持五层,VDC对应了企业的组织部门,VDC层级对应企业组织层级,VDC还提供了云资源配额控制、用户角色权限分配的作用。 资源集是对云资源的分组,各个资源集之间资源相互隔离,一个VDC可以包含多个资源集,一个资源集只能属于一个VDC或企业项目。资源集可以授权给下级VDC下的用户组,只有授权了相应的资源集才能拥有相关资源权限。 规划方案: 图4 VDC整体规划方案 如上图所示,根据资源划分的需求,将平台三类主要用户划分为三级VDC: 一级平台运营方VDC,作为全局唯一的一级VDC,负责统管全局公共资源,包括数据底座、数据开发工具、xx运营平台资源等; 二级授权运营方VDC,对应具备数据授权运营资质的企业,当前平台仅有一个二级授权运营方VDC,即数据集团; 二级平台建设方VDC,对应负责xx运营平台的建设的ISV,如华傲VDC、统一认证CA的VDC,在对应VDC下分配运维账号用于平台部署和维护; 三级开发利用方VDC,需要唯一归属指定的数据授权运营VDC,根据不同子公司或企业设置不同开发利用方VDC,将 用户添加至不同用户组,控制个人用户的访问权限; 资源集用于承载云平台的各类云服务资源,各类资源集具体划分如下: 公共服务1资源集,作为生产资源集,归属一级平台运营方VDC,负责承载MRS、DWS、DataArts Studio、ROMA Connect、 TICS 等生产实例和xx运营平台生产环境; 公共服务2资源集,作为开发测试资源集,归属一级平台运营方VDC,负责承载ROMA Connect开发实例、xx运营平台测试环境; 公共服务3资源集,作为CA认证平台生产资源集,归属一级平台运营方VDC,负责发放CA统一认证系统所需要的各类云主机、数据库、容器集群资源; 公共服务4资源集,作为CA认证平台开发测试资源集,归属一级平台运营方VDC,负责发放CA统一认证系统所需要的各类云主机、数据库、容器集群资源; 开发利用方资源集,按需为开发利用方创建资源集,用于开发利用方相关应用部署; 一级VDC下的公共资源集需要授权给二级、三级VDC下的用户组,以便各用户组具备公共资源使用权限,具体授权策略如下: 公共服务1、2资源集授权给二级授权运营方VDC,默认拥有全量资源权限; 公共服务1资源集授权给三级开发利用方VDC,默认分配DataArts Studio相关权限,以便进行数据治理开发工作; 公共服务2资源集授权给三级开发利用方VDC,默认分配ROMA Connect相关权限,以便进行数据服务API开发工作; 公共服务3、4资源集授权给二级平台建设方VDC(Builder_CA),以便进行CA资源部署和运维工作; 参与方权限分配与隔离方案:华为云Stack提供三层权限管控体系满足不同租户和用户在平台的权限分配和隔离,如下图所示: 图5 参与方权限分配和隔离方案图 第一层为组织人员管控,主要解决各方组织架构在华为云Stack的映射,并通过用户组和云服务角色权限实现各参与方用户在平台的权限管控 第二层为数据开发工具管控,主要解决开发利用方在DataArts Studio(简称DGC)和ROMA 工具上的权限管控,这部分主要依赖工具内部的角色权限管控能力 第三层为数据底座管控,主要解决各参与方在数据底座数据存储的权限管控,这部分主要通过对不同数据库账号设置不同的库操作权限实现,依赖MRS、DWS、RDS等数据库实例的权限管控体系 结合数据授权运营场景需求,各参与方在云平台的权限和隔离详细设计方案参考下表,后续实施指导中严格参考该表的权限和隔离方案进行: 表1 运营平台各参与方权限分配和隔离方案 参与方 云平台 数据开发工具 数据底座( 数据湖 仓等) / 智能云管理平台 DataArts Studio ROMA Connect MRS OBS DWS RDS 平台运营方 具备一级平台运营VDC管理员账号和权限 负责创建平台方的开发人员VDC账号 负责创建授权运营方VDC和相关人员账号 平台运营方全局唯一,无需隔离 具备全局实例管理员权限 负责为平台运营方创建生产和开发工作空间 负责将平台运营方开发等人员添加到工作空间 具备全局ROMA实例的管理员权限 具备MRS服务管理员权限 按需根据提供方创建对应贴源库和标准库,并作为库Owner 按需为开发利用方分配MRS库,并提供读写权限账号 按需为开发利用方授权平台运营方公共库只读权限 具备OBS服务的管理员权限 按需为平台运营方和开发利用方分配MRS数据库目录和自定义角色权限 具备DWS服务管理员权限 按需为平台运营方、开发利用方分配DWS库权限 按需为开发利用方分配DWS库权限 具备RDS服务管理员权限 负责为数据库提供方发放前置机RDS实例和账号 授权运营方 具备二级授权运营VDC管理员账号和权限 负责三级开发利用方VDC创建和对应开发、测试等人员账号创建 多个不同授权运营方通过不同二级VDC隔离 具备被授权实例管理员权限 负责为不同开发利用方创建生产和开发空间 负责并将开发利用方开发等人员添加到空间 具备被授权ROMA实例的管理员权限 按需为开发利用方和需求方创建ROMA应用 暂不分配账号 暂不分配权限 暂不分配账号 暂不分配账号 开发利用方 具备三级开发利用方VDC普通用户账号 不同开发利用方通过不同VDC进行隔离 具备开发利用方工作空间开发、运维、测试权限 不同开发利用方通过不同工作空间隔离 具备ROMA开发实例下指定应用的管理员权限 不同开发利用方通过不同ROMA应用隔离 具备分配给开发利用方对应MRS库读写权限 具备分配给开发利用方对应公共库的只读权限 不同开发利用方通过不同MRS账号隔离 不同开发利用方提交的任务通过不同的MRS租户隔离 具备OBS服务只读权限 具备开发利用对应MRS库所在OBS目录的读写权限 具备分配给开发利用方对应DWS库读写权限 不同开发利用方通过不同DWS账号隔离 不同开发利用方提交的后台作业通过不同队列隔离 按需分配RDS实例账号读写权限(暂无场景) 不同开发利用方通过不同RDS实例和账号隔离 数据提供方 无权限 无权限 无权限 无权限 无权限 无权限 按来源方分配RDS实例,并创建Database进行隔离 仅具备数据库地址和读写权限的账号给提供方 数据需求方 无权限 无权限 在ROMA生产实例分配客户端应用,并提供appkey、appsecret 不同数据需求方通过不同的客户端应用隔离 无权限 无权限 无权限 无权限 监督管理方 按需在平台运营方VDC分配只读权限账号 按需分配各工作空间访客权限 按需分配各ROMA应用只读权限 按需分配MRS只读账号权限 按需分配OBS只读账号权限 按需分配DWS只读账号权限 按需分配RDS只读账号权限 为实现上表中各参与方的权限分配和隔离,华为云Stack提供了完善的角色、权限、用户组等模型支撑用户的权限管理,具体逻辑关系模型参考下图: 图6 逻辑关系模型图 华为云Stack的账号权限管理整体上总体上分成三部分,后续各场景下的角色授权操作将参考该逻辑模型图进行实施: 智能云管理平台角色权限 智能云管理平台提供华为云Stack账号的统一管理能力,为各个参与创建华为云Stack的登录账号并设置相关云服务的访问权限 智能云管理平台提供了VDC默认角色和各类云服务细粒度角色用于云服务权限管控。默认角色包括VDC管理员、VDC业务员、VDC只读用户,默认具备所有云服务的相关权限,比如VDC只读用户可以查看所有云服务但不能进行任何操作 针对需要限制账号的仅具备特定云服务权限的场景,智能云管理平台支持各云服务的细粒度权限创建自定义角色进行控制,比如DataArts Studio User角色,只能访问DataArts Studio服务,ROMA Administrator只能访问ROMA Connect服务 为方便角色统一授权,通常需要将用户账号添加到一个自定义用户组,通过给用户组授权相关角色实现对组内所有用户的授权 针对用户组角色的授权,需要在指定的资源集下进行,所有的角色权限都是需要关联到资源集 智能云管理平台账号能在个人中心下载AK/SK,用于相关云服务的访问,如OBS服务等 数据开发工具权限 数据工具主要包括DataArts Studio(简称DGC)和ROMA Connect两部分,各参与方可直接通过智能云管理平台账号登录华为云Stack进行数据工具服务的访问和操作 DataArts Studio中提供了数据空间进行不同开发利用方的隔离,工作空间中提供了管理员、开发、运维、访客4类默认角色,支持自定义新角色,用于DataArts Studio中功能的细粒度控制 ROMA Connect中提供了应用进行不同开发利用方的隔离,应用下提供了admin、modify、delete权限用于控制不同账号在应用下API操作权限 数据底座角色权限 数据底座目前主要包括MRS数据湖、DWS数据仓库、RDS关系型数据库三类 默认情况下开发利用方不分配MRS、DWS、RDS云服务的权限,只能通过由平台运营方管理员分配的数据底座相关账号进行数据访问 不同开发利用方通过不同的MRS账号进行隔离,需要在MRS集群的管理系统 FusionInsight Manager(简称FI系统)上创建MRS账号。FusionInsight Manager上预置了各类角色进行账号权限的管控,确保相关账号仅具备授权组件的访问权限,比如限制只能访问Hive、Yarn或只能向某个MRS队列提交任务等 MRS的账号目前主要用于Hive数据库权限的分配,这部分是通过FusionInsight Manager上提供的Ranger图形化管理界面实现的。Ranger支持通过自定义Policy策略为指定的FusionInsight Manger用户组设置指定数据库的细粒度读写权限,从而确保MRS的账号仅能基于指定的操作权限访问指定的Hive数据库 该项目中MRS数据湖采用存算分离架构,因此在分配MRS数据库账号的同时,需要对该账号对应的智能云管理平台账号进行OBS权限的管控,确保相应的智能云管理平台账号也只能在对应的OBS目录下进行数据的读写操作 通过智能云管理平台中自定义OBS角色授权给指定用户组来实现开发利用方OBS权限的管控,同时OBS角色需要通过自定义委托并映射到MRS用户组,实现MRS下对应用户组对OBS的细粒度权限管控 DWS数据仓库中,不同开发利用方通过不同的Schema进行隔离,平台运营管理员通过命令行为开发利用方创建DWS数据仓库账号,并设置对应Schema的读写权限 RDS关系型数据库中,不同开发利用方通过不同的RDS实例和Database进行隔离,平台运营管理员在指定的RDS实例创建Database和数据库账号,并将Database的读写权限授权给对应数据库账号
共100000条