本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
对 VM Import/Export 进行故障排除
导入或导出虚拟机 (VM) 时,大多数错误是因为您尝试执行不受支持的操作而发生的。为避免此类错误,请务必仔细核查要求和限制。
导入图像错误
- 错误代码: InvalidParameter,错误消息:消息:参数 disk-image-size =0 的格式无效
-
不支持指定的映像格式。请使用支持的一种映像格式 (VHD、VHDX、VMDK 或原始格式) 重试操作。
- 调用 CreateRole操作时出现客户端错误 (MalformedPolicyDocument):策略中的语法错误
-
您必须在策略文档名称前包含
file://
前缀。 - 服务角色
vmimport
不存在或没有足够的权限让服务继续 -
VM Import 服务角色缺失或不正确。如果尝试开始导入的用户、组或角色对 Amazon EC2 资源的访问权限不足,您也可能会收到此错误。
如果呼叫的用户
ImportImage
有Decrypt
权限但vmimport
角色没有,也会发生此错误。如果您使用带有AWS KMS —Managed Keys 的服务器端加密 (SSE-KMS) 来保护 Amazon S3 中的静态数据,则需要为您的服务角色分配额外Decrypt
权限,如以下 JSON 代码所示:
{ "Sid":"Allow vmimport to decrypt SSE-KMS key", "Effect":"Allow", "Principal":{ "AWS":[ "arn:aws:iam::accountid:role/vmimport" ] }, "Action":[ "kms:Decrypt" ], "Resource":"*" }
导入实例错误
- 错误代码: InvalidParameter,错误消息:消息:参数 disk-image-size =0 的格式无效
-
不支持指定的映像格式。请使用支持的映像格式 (OVA、VHD、VMDK 或原始格式) 重试操作。
- Client.Unsupported:未找到可启动的分区。(Service: AmazonEC2; Status Code: 400; Error Code: Unsupported; Request ID: <RequestID>)
-
根卷采用 GUID 分区表 (GPT) 分区。不支持采用 GPT 分区的卷。请将根卷转换为 MBR 分区并重试。
- ClientError: 页脚不一样
-
您尝试导入差异 VHD,或在创建 VHD 时出错。再次导出您的虚拟机,然后重试将其导入 Amazon EC2。
- ClientError: 未压缩数据的长度无效
-
VMDK 文件已损坏。您可以尝试修复或重新创建 VMDK 文件,或使用其他的文件。
- 错误:Bucket <MyBucketName > 不在 <RegionName > 区域中,而在 <RegionName >
-
Amazon S3 存储桶AWS 区域与您要导入的实例不同。请尝试添加
--ignore-region-affinity
选项,它将忽略存储桶的区域是否与创建导入任务的区域相符。您还可以使用亚马逊简单存储服务控制台创建 Amazon S3 存储桶,并将该区域设置为要导入虚拟机的区域。再次运行命令并指定您刚创建的新存储桶。 - ERROR: File uses unsupported compression algorithm 0
-
使用 OVA 格式而非 OVF 格式创建 VMDK。以 OVF 格式创建 VMDK。
- S3 源位置无效
-
命令语法或 Amazon S3 存储桶名称。在相应的区域创建一个 Amazon S3 存储桶,仅用于VM Import,并将虚拟机文件上传到存储桶的根目录。
- 给定的 S3 存储桶不在该区域本地
-
用于VM Import 的 Amazon S3 存储桶必须位于您要导入虚拟机AWS 区域的位置。
虚拟机)导入错误
- 客户端*。 UnsupportedOperation:此实例连接了多个卷。请删除额外的卷。
-
分离根卷以外的卷并重试。如果您需要卷中的数据,可以将其复制到根卷或将卷导入 Amazon EBS。
- 客户端*。 NotExportable:无法导出此实例。(服务:AmazoneC2;状态码:400;错误代码: NotExportable;请求编号:<RequestID>)
-
您只能导出某些实例。有关更多信息,请参阅实例导出注意事项:
- Error starting instances: Invalid value <instance ID> for instanceId. Instance does not have a volume attached at root (/dev/sda1).
-
您尝试在 VM Import 过程和所有转换任务完成之前启动实例。请等待 VM Import 过程和所有转换任务全部完成后再启动实例。
- 调用 CreateInstanceExportTask操作时出现错误 (InvalidParameter):给定的 S3 对象不是该区域的本地对象。
-
EC3 存储桶必须位于同一 S3 存储桶和 S3 存储桶必须位于同一 SAWS 区域 3 存储桶 您还必须确保
create-instance-export-task
命令在与导出资源相同的区域中运行。您可以使用--region
参数指定区域。有关更多信息,请参阅《AWS Command Line Interface用户指南》中AWS CLI支持的全局命令行选项。
Woragple 虚拟机
ClientError: Booter 网络故障/无法访问实例。请在安装 .Net framework 3.5 SP1 或更高版本后重试。
EC2 Config 服务需要 Microsoft .NET Framework 3.5 Service Pack 1 或更高版本。请在您的 Windows VM 上安装 Microsoft .NET Framework 3.5 Service Pack 1 或更高版本并重试。
FirstBootFailure:此导入请求失败,因为 Windows 实例无法启动和建立网络连接。
使用 ec2-import-instance
命令导入 VM 时,导入任务可能在完成之前停止,然后失败。要调查出了什么问题,你可以使用ec2-describe-conversion-tasks命令来描述实例。
当您收到FirstBootFailure
错误消息时,这意味着您的虚拟磁盘映像无法执行以下步骤之一:
-
启动并开始 Windows。
-
安装Amazon EC2 网络和磁盘驱动程序。
-
使用一个 Dhcp 配置的网络接口接收 IP 地址。
-
使用Amazon ECervicple ECervicple ECervic
以下最佳实践可帮助您避免 Windows 首次启动失败:
-
禁用防病毒和防间谍软件及防火墙 — 这些类型的软件可以阻止安装新的 Windows 服务或驱动程序或阻止未知的二进制文件运行。软件和防火墙可在导入后重新启用。
-
不要强化您的操作系统 — 安全配置(有时称为强化)可能会阻止 Amazon EC2 驱动程序的无人值守安装。还有其他 Windows 配置设置可防止导入。这些设置可在导入时重新使用。
-
禁用或删除多个可启动分区-如果您的虚拟机启动并要求您选择要使用的启动分区,则导入可能会失败。
虚拟磁盘映像无法启动和建立网络连接可能是由于以下任一原因:
- TCP/IP 网络和 DHCP 未启用
-
原因:必须启用 TCP/IP 联网和 DHCP。
解决:确保 TCP/IP 网络已启用。有关更多信息,请参阅 Microsoft 支持网站上的更改 TCP/IP 设置
。确认 DHCP 已启用。有关更多信息,请参阅 Microsoft 网站上的动态主机配置协议 (DHCP) 。 - 虚拟机上丢失了 Windows 需要的卷
-
原因:将虚拟机导入 Amazon EC2 仅导入启动磁盘,必须分离所有其他磁盘,并且 Windows 必须能够启动,然后才能导入虚拟机。例如,Active Directory 通常会将 Active Directory 数据库存储在
D:\
驱动器上。如果 Active Directory 数据库丢失或无法访问时,域控制器无法启动。解决:在导出前,断开所有连接到 Windows VM 的二级和网络磁盘。将所有 Active Directory 数据库从辅助驱动或分区移至主要 Windows 分区。有关更多信息,请参阅 Microsoft Support 网站上的启动基于 Windows 或基于 SBS 的域控制器时出现“Directory Services cannot start”(目录服务无法启动)错误消息
。 - Windows 始终启动到 System Recovery Options
-
原因:Windows 可以出于多种原因启动到 System Recovery Options,包括将 Windows 从物理计算机推送至虚拟环境(也称为 P2V)。
解决:在导出或准备导入之前,确保 Windows 启动到登录提示。不要导入来自物理设备的虚拟 Windows 实例。
- 虚拟机是使用 physical-to-virtual (P2V) 转换过程创建的
-
原因:如果在物理计算机上执行 Windows 安装过程,然后将 Windows 安装的副本导入 VM,从而创建磁盘映像,则会发生 P2V 转换。Amazon EC2 虚拟机导入不支持通过 P2V 转换而创建的虚拟机。Amazon EC2 虚拟机导入仅支持在源虚拟机内部原生安装的 Windows 映像。
解决:在虚拟化环境中安装 Windows,将安装的软件迁移至新的 VM。
- Windows 激活失败
-
原因:在启动过程中,Windows 将检测硬件更改并尝试激活。在导入过程中,我们尝试将 Windows 中的许可机制切换到Amazon Web Services 提供的批量许可证。但是,如果 Windows 激活过程失败,那么导入也会失败。
解决措施:确保要导入的 Windows 版本支持批量许可。Windows 测试版或预览版可能不会。
- 未找到可启动的分区
-
原因:在虚拟机的导入过程中,未能找到启动分区。
解决措施:确保要导入的磁盘有启动分区。
L3 存储桶错误
- ClientError: 配置无效-无法读取 fstab
-
不支持带有多个引导卷或多个
/etc
目录的 Linux VM。 - ClientError: 不支持的配置-逻辑卷组激活失败
-
未能激活虚拟磁盘映像上的逻辑卷。这可能表示文件或磁盘损坏。验证上传的磁盘映像文件。
- ClientError: 不支持的配置-已找到多个目录
-
不支持带有多个引导卷或多个
/etc
目录的 Linux VM。 - 请求的实例不支持 Linux
-
可以将 Linux VM 导入为特定的实例类型。请使用以下支持的实例类型并重试。
-
通用型:
t2.micro
|t2.small
|t2.medium
|m3.medium
|m3.large
|m3.xlarge
|m3.2xlarge
-
计算优化:
c3.large
c3.xlarge
|c3.2xlarge
|c3.4xlarge
|c3.8xlarge
|cc1.4xlarge
|cc2.8xlarge
-
内存优化:
r3.large
r3.xlarge
|r3.2xlarge
|r3.4xlarge
|r3.8xlarge
|cr1.8xlarge
-
存储优化型:
i2.xlarge
|i2.2xlarge
|i2.4xlarge
|i2.8xlarge
|hi1.4xlarge
|hi1.8xlarge
-