腾讯云冷迁移 创建自定义镜像 导入到对象存储

操作场景

除了使用腾讯云提供的公共镜像、服务市场镜像外,您还可以创建自定义镜像。创建自定义镜像后,您可以在腾讯云控制台快速创建与该镜像相同配置的腾讯云云服务器实例。

说明

由于镜像底层使用了云硬盘快照服务:

国内地域提供80GB的免费额度,详情请参见 赠送额度

在创建自定义镜像时会默认创建关联该镜像的快照,且保留自定义镜像会产生一定的快照费用,详情请参见 快照计费概述

若您的腾讯云账户进入欠费状态,为避免您的数据丢失,我们将保留您的自定义镜像及关联的快照,且不会产生新的费用。

注意事项

每个地域暂支持500个自定义镜像。

国内地域提供80GB的免费额度,详情请参见 赠送额度

若您的 Linux 实例具备数据盘,但您仅制作系统盘自定义镜像时,请确认 /etc/fstab 不包含数据盘配置,否则会导致使用该镜像创建的实例无法正常启动。

制作过程需要持续十分钟或更长时间,具体时间与实例的数据大小有关,请提前做好相关准备,以防影响业务。

若您的 Windows 实例需入域且使用域账号,则在创建自定义镜像前,请执行 Sysprep 操作以确保在实例入域后 SID 唯一。详情请参见 通过 Sysprep 实现云服务器入域后 SID 唯一

若您使用的是配置25Gbps 网卡的裸金属服务器(即机型的内网带宽值是25Gbps),暂不支持使用控制台及 API 创建自定义镜像。

一.创建自定义镜像

https://cloud.tencent.com/document/product/213/4942

腾讯云免费赠送80G快照额度超出部分会收取费用 创建自定义镜像时会自动创建 基于该系统盘或数据盘的快照 此时查看对象存储会发现已经存在 及快照 已创建了相应快照

https://github.com/zznn-cloud/zznn-cloud-blog-images/raw/main/Qexo/24/9/image_1e10563068279dd26f45815b8ff83077.png

二.将镜像导出到对象存储

https://cloud.tencent.com/document/product/213/70518

前提条件

已前往 对象存储控制台 开通对象存储服务。

注意事项

有版权限制的镜像不支持导出,包括 Windows Server 镜像、腾讯云授权的 Red Hat Enterprise Linux 镜像(自带授权支持导出)、基于云市场镜像制作的自定义镜像。

自定义镜像的系统盘及数据盘单块容量不能大于500GB。

导出整机镜像时,数据盘不能大于5块。

费用说明

若在使用云服务器时,同时使用了其他产品。例如对象存储 COS,则将按照实际使用产品的计费规则进行费用计算。

费用说明如下表:

场景产生费用说明文档
导出镜像到 COS 存储桶存储容量费用。镜像存储在 COS 存储桶,会产生存储容量费用。COS 会计算对象大小,按照目标对象的存储类型和所属地域计费。存储容量费用
请求费用。导出镜像到 COS 存储桶,会产生写请求费用。COS 会计算写请求次数,并收取请求费用。请求费用
流量费用。导出镜像到 COS 存储桶,会产生上行流量。COS 会计算流量大小,内网上行流量、外网上行流量均免费。流量费用
从 COS 存储桶下载镜像请求费用。从 COS 存储桶下载镜像,会产生写请求费用。COS 会计算写请求次数,并收取请求费用。请求费用
流量费用。从 COS 存储桶下载镜像,会产生下行流量。COS 会计算流量大小,内网下行流量免费、外网下行流量收费。流量费用

操作步骤

1. 登录云服务器控制台,选择左侧导航栏中的 镜像

2. 镜像页面上方,选择需导出的自定义镜像所在地域,并单击自定义镜像页签。

3. 选择镜像所在行右侧的导出镜像。如下图所示:

https://github.com/zznn-cloud/zznn-cloud-blog-images/raw/main/Qexo/24/9/image_9369970747d3a7ebfc1d1c5f18f7088f.png

导出需要先创建对象存储桶

https://github.com/zznn-cloud/zznn-cloud-blog-images/raw/main/Qexo/24/9/image_80c83d004f3c262c913749e5a3f5f0c8.png

导出镜像到存储桶很慢 需要耐心等待

https://github.com/zznn-cloud/zznn-cloud-blog-images/raw/main/Qexo/24/9/image_5601d2f308db90e9d3cc693f6c665719.png

  • COS Bucket:选择导出镜像所在的存储桶,需与镜像在同一地域。
  • 导出文件前缀名:自定义导出文件前缀名。 勾选同意授权 CVM 访问我的 COS Bucket
  • 更多配置(可选):镜像格式
  • 目前支持 RAW、QCOW2、VHD(后缀为 .vpc或.vhd)、VMDK 四种格式,您可以根据需要进行选择。
  • 导出的镜像文件大小与镜像格式有关,具体值请完成导出后查看对应的 COS 文件,默认选择 RAW 格式。

5. 勾选同意授权CVM访问我的COS Bucket,并单击确定,即可开始镜像导出任务。

6. 在弹出的确认窗口中单击确定。 导出时间取决于镜像的大小和任务队列的繁忙程度,请耐心等待。导出任务完成后,镜像文件将会存放在目标存储桶中。您可前往 存储桶列表 页面,单击存储桶 ID 进入详情页面,名为 自定义前缀名_镜像 Id_system_ 快照 id.镜像格式 的文件即为导出的镜像系统盘文件,若您的镜像包含数据盘,名为 自定义前缀名_镜像 Id_data_ 快照 id.镜像格式 的文件即为导出的镜像数据盘文件。

相关问题

1. COS 的外网下行流量如何产生的?如何收费?

外网下行流量是数据通过互联网从 COS 传输到客户端产生的流量。用户直接通过对象链接下载对象或通过静态网站源站浏览对象产生的流量属于外网下行流量,对应费用为外网下行流量费用。外网下行流量计费详细信息请参见 计费项产品定价

2. 通过 COS 的控制台、工具、API、SDK 方式下载文件会产生外网下行流量费用吗?

访问 COS 所产生的流量(内网流量或外网流量)与您使用的方式无关,只有同地域的云产品访问 COS 才会默认使用内网而不收取外网下行流量费用。判断是否内网访问请参见 内网访问 文档。

3. COS 如何区分外网流量?

外网下行流量指数据通过互联网从 COS 传输到客户端产生的流量。例如通过 COS 控制台下载存储在 COS 中的文件,通过工具访问对象、下载对象,或使用浏览器预览对象,使用对象地址或自定义域名访问和下载对象等均会产生外网下行流量 。详情请参见 内网访问判断 文档。

4. 对象存储使用内网访问是否会产生费用?

通过内网访问对象存储时流量费用免费,但是存储容量请求次数仍然会产生相关的费用。详细介绍请参见 计费项

三. 在对象存储桶中下载导出的镜像

下载镜像:创建SecretID、SecretKey cosbrowers客户端

已在自定义镜像所在地域创建存储桶,详情请参见 创建存储桶

COSBrowser 支持通过永久密钥(即云 API 密钥)登录,配置项说明如下:

SecretID、SecretKey:云 API 密钥,该密钥可在访问管理控制台API 密钥管理 页面中创建并获取。

https://github.com/zznn-cloud/zznn-cloud-blog-images/raw/main/Qexo/24/9/image_6a244e9e5bcf42c53d12b861e183e51f.png

登录cosbroeser 点击分享按钮即可生成下载链接

https://github.com/zznn-cloud/zznn-cloud-blog-images/raw/main/Qexo/24/9/image_2754cc769bd62c1928bb71d48c09e58b.png

https://github.com/zznn-cloud/zznn-cloud-blog-images/raw/main/Qexo/24/9/image_b39ce7c13bed20caeb05f833fb1a0f28.png

存储桶/收藏路径:若您当前使用的密钥仅允许访问指定资源范围且不允许访问存储桶列表,例如指定的存储桶或存储桶中某个路径,则填写后可快速进入对应的存储桶或文件路径。格式为:Bucket 或 Bucket/Object-prefix,例如当前使用的密钥仅被允许访问存储桶 examplebucket-1250000000 下的 doc 文件夹,则填写 examplebucket-1250000000/doc。操作指引请参见 添加收藏路径

备注:可对当前填入的永久密钥进行说明。例如操作人员、用途等。在历史会话中可用于区分不同的 SecretID。

记住会话

若不勾选,则仅本次登录有效,退出登录则会清空填入的云 API 密钥(如果当前密钥已保存在历史会话中,则会从历史会话中移除);

若勾选,在成功登录后将会记住填入的云 API 密钥相关信息,方便下次继续使用,您可在历史会话中管理已保存的密钥相关信息。

四. 最后迁移数据盘

使用如下dd命令迁移(标准化命令)

迁移时必须要对应本地磁盘所在的分区以及与迁移后对端磁盘所在的分区对应

1
2
3
4
# qcow2 转 raw
qemu-img convert -f qcow2 -O raw Qcms1-data.qcow2 Qcms1-data.raw
# 开始迁移
dd if=/data/Qcms2-data.raw of=/dev/vdd bs=64M status=progress