创建自定义ISO的新EC2实例

31

我正在使用Switchvox,一种Asterisk PBX,并且我想在EC2上托管它。

Digium Switchvox提供了一个ISO文件,其中包含托管pbx服务器所需的所有内容:操作系统、软件等。基本上它是服务器的镜像。

我如何使用他们提供的自定义ISO实例化一个新的EC2实例?


这个问题的被接受答案已经不正确了 - 请取消接受并接受下面排名最高的答案 - reach4thelasers
4个回答

43

通过这个ISO,你可以创建一个VMwareVirtualBox镜像。然后将该镜像转换成一个EC2 AMI镜像并继续进行操作。

但是请确保使用的架构(32位还是64位)和内核正确。

话虽如此,你可能需要进行更多的操作,而不仅仅是启动社区提供的现有的基础AMI。可能会有一个与你的操作系统要求非常相似的AMI。


1
同意。这就是我们要做的。获取您的VHD或VMDK文件。导入并上传它。搜索ImportInstance和ec2-upload-disk-image。 - MJM
1
EC2价格取决于操作系统类型。如果使用自定义操作系统,价格会是多少? - grabantot
1
@grabantot,EC2的价格会根据操作系统而变化,只有当您选择像Redhat或Windows这样的操作系统时才会有影响。否则,如果您选择像CentOS这样的操作系统,它就没有任何影响。 - pdeschen
该链接目前已失效。 - d33tah
当我尝试使用AWS的t4g实例所使用的arm64架构时,这并不起作用 - 因为我的机器使用不同的架构,而且VMWare或VirtualBox似乎甚至不支持arm64,除了MacOS。我真正需要的是问题所问的,即将ISO(甚至是arm64)安装到EC2实例中。 - Velizar Hristov

11

概述:

  • 检查先决条件
  • 将ISO安装到VMware vSphere上,然后导出为VMDK
  • 将VMDK上传到同一AWS账户的S3存储桶中
  • 安装和配置AWS命令行界面(CLI)
  • 设置VM Import服务角色
  • 使用CLI从S3中导入VM到Amazon机器实例(AMI)

这是一个漫长的过程,因此值得阅读先决条件。特别注意支持的操作系统/ Linux发行版和版本。

他们明确指出“请注意,您只能将通过VMware中的OVF导出过程创建的VMDK文件导入Amazon EC2。”

例如,您可以使用VirtualBox获取VMDK文件,但是如果您尝试导入此文件,可能会在检查状态时看到以下错误:
aws ec2 describe-import-image-tasks --import-task-ids import-ami-someid

"StatusMessage": "客户端错误:磁盘验证失败[不支持的VMDK文件格式]"
然而,Oracle有一些关于以开放虚拟化格式(OVF)导出虚拟机的文档
如果一切顺利,您可以像往常一样启动新导入的AMI。

4
非常有帮助,谢谢。对于其他人尝试这个过程,尽管亚马逊的说明,我成功地从VirtualBox导入了一个虚拟机。我将虚拟机创建为一个单独的VMDK文件,并使用OVA 2进行导出,它成功地被导入了。 - SOS
这里有一个非常好的指南,包括示例和截图: https://dev.to/otomato_io/from-iso-to-ami-how-to-create-your-own-custom-ami-5213通过它,我能够将我的VirtualBox VM转换为OVA 2,并将其导入AWS。 - Davidou

5
您可以使用自定义的ISO创建VMware虚拟机,并将其从您的VMware主机移动到EC2。了解更多信息:VM导入/导出

-5

只有 Windows Server 2008 变种才能从 VMDK 转换为 AMI。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接