云服务器内容精选

  • 备份、快照、镜像有什么区别? 备份分为云服务器备份和云硬盘备份。 镜像分为系统盘镜像、数据盘镜像、整机镜像。 备份类型 备份对象 适用场景 区别和优势 备份方法 恢复方法 云服务器备份 弹性云服务器中的所有云硬盘(系统盘和数据盘) 云服务器受到攻击或病毒入侵 通过云服务器备份,可立即恢复到最近一次没有受黑客攻击或病毒入侵的备份时间点。 数据被误删 通过云服务器备份,可立即恢复到删除前的备份时间点,找回被删除的数据。 应用程序更新出错 通过云服务器备份,可立即恢复到应用程序更新前的备份时间点,使系统正常运行。 云服务器宕机 通过云服务器备份,可立即恢复到宕机之前的备份时间点,使云服务器能再次正常启动。 备份的同一个云服务器下的所有云硬盘数据具有一致性,即同时对所有云硬盘进行备份,不存在因备份创建时间差带来的数据不一致问题。 且云备份支持根据备份策略自动备份。 创建云服务器备份 使用云服务器备份恢复数据(恢复至原服务器) 使用云服务器备份恢复数据(创建新的云服务器) 云硬盘备份 指定的单个或多个云硬盘(系统盘或数据盘) 系统盘没有个人数据,因而只需要对部分的数据盘进行备份 当云硬盘出现故障或云硬盘中的数据发生逻辑错误时(如误删数据、遭遇黑客攻击或病毒危害等),可快速恢复数据。 备份作为基线数据 设置备份策略,根据策略自动对云硬盘进行数据备份,通过定期创建的备份作为基线数据,用来创建新的云硬盘或者恢复数据到云硬盘。 备份数据则存储在对象存储 (OBS)中,可以实现在云硬盘存储损坏情况下的数据恢复 保证数据安全的同时降低备份成本 创建云硬盘备份 使用云硬盘备份恢复数据(恢复至原磁盘) 使用云硬盘备份恢复数据(创建新的磁盘) 快照 指定的单个或多个云硬盘(系统盘或数据盘) 日常备份数据 通过对云硬盘定期创建快照,实现数据的日常备份,可以应对由于误操作、病毒以及黑客攻击等导致数据丢失或不一致的情况。 快速恢复数据 应用软件升级或业务数据迁移等重大操作前,您可以创建一份或多份快照,一旦升级或迁移过程中出现问题,可以通过快照及时将业务恢复到快照创建点的数据状态。 例如,当由于云服务器 A的系统盘 A发生故障而无法正常开机时,此时您可以使用系统盘 A已有的快照新创建一块云硬盘 B并挂载至正常运行的云服务器 B上,从而云服务器 B能够通过云硬盘 B读取原系统盘 A的数据。 快速部署多个业务 通过同一个快照可以快速创建出多个具有相同数据的云硬盘,从而可以同时为多种业务提供数据资源。例如数据挖掘、报表查询和开发测试等业务。 这种方式既保护了原始数据,又能通过快照创建的新云硬盘快速部署其他业务,满足企业对业务数据的多元化需求。 说明: 只支持回滚快照数据至原云硬盘,不支持快照回滚到其它云硬盘。 重装操作系统或切换操作系统后,系统盘快照会自动删除;数据盘快照不受影响,可以照常使用。 快照数据与云硬盘数据存储在一起,可以支持快速备份和恢复 快速保存指定时刻云硬盘的数据,同时还可以通过快照创建新的云硬盘,这样云硬盘在初始状态就具有快照中的数据 创建快照 使用快照回滚数据 系统盘镜像 系统盘 快速恢复系统 更换操作系统、应用软件升级或业务数据迁移等重大操作前,将系统盘创建成系统盘镜像,一旦迁移过程中出现问题,可以通过系统盘镜像切换操作系统,或重新创建新的云服务器。 快速部署多个业务 通过同一个系统盘镜像可以快速创建出多个具有相同操作系统的云服务器,从而快速部署多个业务。 系统盘镜像可以实现在云服务器操作系统损坏情况下快速切换至损坏前的操作系统。 创建系统盘镜像 使用系统盘镜像切换故障云服务器的操作系统 使用系统盘镜像创建新的云服务器 数据盘镜像 指定的数据盘 快速复制数据 通过同一个数据盘镜像可以快速创建出多个具有相同数据的云硬盘,再将新创建的云硬盘挂载到其他服务器上,从而可以同时为多种业务提供数据资源。 数据盘镜像可以复制全盘的数据并创建新的云硬盘挂载到其他服务器上,实现云服务器数据盘的复制和共享。 创建数据盘镜像 使用数据盘镜像创建数据盘 整机镜像 弹性云服务器中的所有云硬盘(系统盘和数据盘) 快速恢复系统 更换操作系统、应用软件升级或业务数据迁移等重大操作前,将云服务器的系统盘和数据盘创建成整机镜像,一旦迁移过程中出现问题,可以通过整机镜像切换操作系统,或重新创建新的云服务器。 快速部署多个业务 通过同一个整机镜像可以快速创建出多个具有相同操作系统和数据的云服务器,从而快速部署多个业务。 通过整机镜像实现业务的整理迁移。 创建整机镜像 使用整机镜像创建新的云服务器
  • 云备份产品架构 云备份由备份、存储库和策略组成。 备份: 备份即一个备份对象执行一次备份任务产生的备份数据,包括备份对象恢复所需要的全部数据。 云服务器备份:云服务器备份提供对弹性云服务器和裸金属服务器的基于多云硬盘一致性快照技术的数据保护。同时,未部署数据库等应用的服务器产生的备份为服务器备份,部署数据库等应用的服务器产生的备份为数据库服务器备份。 云硬盘备份:云硬盘备份提供对云硬盘的基于快照技术的数据保护。 存储库 云备份使用存储库来存放备份。创建备份前,需要先创建至少一个存储库,并将服务器或磁盘绑定至存储库。服务器或磁盘产生的备份则会存放至绑定的存储库中。 存储库分为备份存储库和复制存储库两种。备份存储库用于存放备份对象产生的备份,复制存储库用于存放复制操作产生的备份。 不同类型的备份对象产生的备份需要存放在不同类型的存储库中。 策略 策略分为备份策略和复制策略。 备份策略:需要对备份对象执行自动备份操作时,可以设置备份策略。通过在策略中设置备份任务执行的时间、周期以及备份数据的保留规则,将备份存储库绑定到备份策略,可以为存储库执行自动备份。 复制策略:需要对备份或存储库执行自动复制操作时,可以设置复制策略。通过在策略中设置复制任务执行的时间、周期以及备份数据的保留规则,将备份存储库绑定到复制策略,可以为存储库执行自动复制。复制产生的备份需要存放在复制存储库中。
  • 备份机制 首次备份为全量备份,备份云服务器/磁盘已使用空间。 示例:某磁盘大小为100GB,已使用空间为40GB,则备份的是40GB的已使用空间。 后续备份均为增量备份,备份上次备份后变化的数据,缩短备份时长、节约备份空间。 删除备份时,仅删除不被其他备份依赖的数据块,不影响使用其他备份进行恢复。无论是全量还是增量备份,都可以快速、方便地将数据恢复至备份所在时刻的状态。 云备份会在备份过程中自动创建快照并且为每个磁盘保留最新的快照。如果该磁盘已备份,再次备份后会自动将旧快照删除,保留最新的快照。 云备份通过云服务器/磁盘与 对象存储服务 的结合,将数据备份到对象存储中,高度保障用户的备份数据安全。
  • 备份的方式及适用场景 云备份提供两种配置方式,一次性备份和周期性备份。一次性备份是指用户手动创建的一次性备份任务。周期性备份是指用户通过创建备份策略并绑定存储库的方式创建的周期性备份任务。 表1 备份的方式及适用场景 对比项 一次性备份 周期性备份 备份策略 不需要 需要 备份次数 手动执行一次性备份 根据备份策略进行周期性备份 备份名称 支持自定义,默认为“manualbk_xxxx” 系统自动生成,默认为“autobk_xxxx” 备份方式 默认首次全量备份,后续增量备份 默认首次全量备份,后续增量备份 适用场景 资源进行操作系统补丁安装、升级,应用升级等操作之前,以便安装或者升级失败之后,能够快速恢复到变更之前的状态。 资源的日常备份保护,以便发生不可预见的故障而造成数据丢失时,能够使用邻近的备份进行恢复。
  • 响应示例 { "backups": [ { "id": "a696cd25e4fc453aa503650225cece8bbr14", "name": " GaussDB -hly-ha-20220509080110906", "description": null, "status": "FAILED", "size": 0.0, "type": "auto", "datastore": { "type": "GaussDB", "version": "1.4" }, "begin_time": "2022-05-09T16:01:10+0800", "end_time": "2022-05-09T16:04:31+0800", "instance_id": "164abc6d35114095bb849d007b19db3bin14" }, { "id": "5651c62a7f12461c98020dd3abfe24ccbr14", "name": "GaussDB-hly-master-20220509022658257", "description": null, "status": "FAILED", "size": 0.0, "type": "auto", "datastore": { "type": "GaussDB", "version": "1.4" }, "begin_time": "2022-05-09T10:26:58+0800", "end_time": "2022-05-09T10:30:17+0800", "instance_id": "fd26e3bf26e5467587eec857e4f66ef0in14" } ], "total_count": 167 }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 job_id String 执行异步任务的JobID。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 用于获取操作API的权限。获取方法请参见 获取Token 接口,响应消息头中X-Subject-Token的值即为Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 backup_id 是 String 备份ID。 export_path 是 String OBS导出路径。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 errorMessage String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。 errorCode String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 backupCount Integer 备份总个数。请求失败时,该字段为空。 backupList Array of backup objects 当前Project下指定Graph的备份列表。请求失败时,该字段为空。 表5 backup 参数 参数类型 描述 id String 备份ID。 name String 备份名称。 backupMethod String 备份方法,取值为auto或manual。 graphId String 备份关联的图ID。 graph_name String 备份关联的图Name。 graphStatus String 备份关联的图状态。 graphSizeTypeIndex String 备份关联的图规格。 dataStoreVersion String 备份关联的图版本。 arch String 备份关联的图CPU架构。 status String 备份状态。 backing_up:备份中 success:备份成功 failed:备份失败 startTimestamp Long 备份开始时间戳。 startTime String 备份时间。 endTimestamp Long 备份结束时间戳。 endTime String 备份时间。 size Long 备份文件大小,单位为MB。 duration Long 备份时间,单位为秒。 encrypted Boolean 是否加密。true表示加密,默认值为"false",不加密。
  • 响应示例 状态码: 200 OK { "backupCount": 2, "backupList": [ { "id": "ada3e720-ab87-48cb-bff7-3ec5ae1a9652", "name": "ges060803_nodelete-20210608135513", "backupMethod": "manual", "graphId": "4c5f882d-a813-4d78-a8e3-6d3212ddd121", "graph_name": "ges060803_nodelete", "graphStatus": "200", "graphSizeTypeIndex": "1", "dataStoreVersion": "2.2.22", "arch": "x86_64", "status": "success", "startTimestamp": 1623160513000, "startTime": "2021-06-08T13:55:13", "endTimestamp": 1623160568000, "endTime": "2021-06-08T13:56:08", "size": 1, "duration": 54, "encrypted": false }, { "id": "7ed3f51d-816d-4651-9129-fe21b64b5c91", "name": "ges060803_nodelete_20210609203323_auto", "backupMethod": "auto", "graphId": "4c5f882d-a813-4d78-a8e3-6d3212ddd121", "graph_name": "ges060803_nodelete", "graphStatus": "200", "graphSizeTypeIndex": "1", "dataStoreVersion": "2.2.21", "arch": "x86_64", "status": "success", "startTimestamp": 1623242004000, "startTime": "2021-06-09T12:33:24", "endTimestamp": 1623242004000, "endTime": "2021-06-09T12:33:24", "size": 1, "duration": 0, "encrypted": false } ] } 状态码: 400 Bad Request { "errorCode" : "GES.7000", "errorMessage" : "The graph does not exist or has been deleted." }
  • URI GET /v1.0/{project_id}/graphs/{graph_id}/backups 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID。获取方法请参见获取项目ID。 graph_id 是 String 图ID。 表2 Query参数 参数 是否必选 参数类型 描述 limit 否 Integer 每页资源数量的最大值,默认为10。 offset 否 Integer 本次请求的起始位置,默认为0。
  • 响应示例 状态码: 200 OK { "backupCount": 3, "backupList": [ { "id": "ada3e720-ab87-48cb-bff7-3ec5ae1a9652", "name": "ges060803_nodelete-20210608135513", "backupMethod": "manual", "graphId": "4c5f882d-a813-4d78-a8e3-6d3212ddd121", "graph_name": "ges060803_nodelete", "graphStatus": "200", "graphSizeTypeIndex": "1", "dataStoreVersion": "2.2.21", "arch": "x86_64", "status": "success", "startTimestamp": 1623160513000, "startTime": "2021-06-08T13:55:13", "endTimestamp": 1623160568000, "endTime": "2021-06-08T13:56:08", "size": 1, "duration": 54, "encrypted": false }, { "id": "7ed3f51d-816d-4651-9129-fe21b64b5c91", "name": "ges060803_nodelete_20210609203323_auto", "backupMethod": "auto", "graphId": "4c5f882d-a813-4d78-a8e3-6d3212ddd121", "graph_name": "ges060803_nodelete", "graphStatus": "200", "graphSizeTypeIndex": "1", "dataStoreVersion": "2.2.21", "arch": "x86_64", "status": "success", "startTimestamp": 1623242004000, "startTime": "2021-06-09T12:33:24", "endTimestamp": 1623242004000, "endTime": "2021-06-09T12:33:24", "size": 1, "duration": 0, "encrypted": false }, { "id": "604bfb46-04dd-45fc-a9ae-df24a0705b9d", "name": "ges060802_nodelete-20210608135523", "backupMethod": "manual", "graphId": "9b9a05c2-0cdb-41ac-b55f-93caffb0519a", "graph_name": "ges060802_nodelete", "graphStatus": "400", "graphSizeTypeIndex": "0", "dataStoreVersion": "2.2.23", "arch": "x86_64", "status": "success", "startTimestamp": 1623160524000, "startTime": "2021-06-08T13:55:24", "endTimestamp": 1623160577000, "endTime": "2021-06-08T13:56:17", "size": 1, "duration": 53, "encrypted": false } ] } 状态码: 400 Bad Request { "errorCode" : "GES.7006", "errorMessage" : "The underlying graph engine has internal error." }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 errorMessage String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。 errorCode String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 backupCount Integer 备份总个数。请求失败时,该字段为空。 backupList Array of backup objects 当前Project ID下的所有图的备份列表。请求失败时,该字段为空。 表5 backup 参数 参数类型 描述 id String 备份ID。 name String 备份名称。 backupMethod String 备份方法,取值为auto或manual。 graphId String 备份关联的图ID。 graph_name String 备份关联的图Name。 graphStatus String 备份关联的图状态。 graphSizeTypeIndex String 备份关联的图规格。 dataStoreVersion String 备份关联的图版本。 arch String 备份关联的图CPU架构。 status String 备份状态。 backing_up:备份中 success:备份成功 failed:备份失败 startTimestamp Long 备份开始时间戳。 startTime String 备份时间。 endTimestamp Long 备份结束时间戳。 endTime String 备份时间。 size Long 备份文件大小,单位为MB。 duration Long 备份时间,单位为秒。 encrypted Boolean 是否加密。true表示加密,false表示不加密,默认值为false。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 backup_id String 备份ID。 backup_name String 备份名称。 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误消息。 状态码: 500 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误消息。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用 IAM 服务获取用户Token接口获取。 请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。 X-Language 否 String 请求语言类型。默认en-us。 取值范围: en-us zh-cn 表3 请求Body参数 参数 是否必选 参数类型 描述 restore_time 是 Long 备份要恢复的目标时间点。 restore_tables 是 Array of RestoreDatabaseInfo objects 备份要恢复的库表信息。 表4 RestoreDatabaseInfo 参数 是否必选 参数类型 描述 database 是 String 数据库名。 tables 是 Array of RestoreTableInfo objects 数据库表信息。 表5 RestoreTableInfo 参数 是否必选 参数类型 描述 old_name 是 String 原表名。 new_name 是 String 恢复后的表名。
  • 响应参数 状态码: 200 表6 响应Body参数 参数 参数类型 描述 job_id String 工作流ID。 状态码: 400 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误消息。 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误消息。