从现有的半虚拟Linux AMI创建AWS HVM Linux AMI

是否可以从现有的半虚拟(PV)AMI创建硬件虚拟机(HVM)AMI.

我最初的想法是启动一个新的PV实例并使用ec2-create-image命令创建一个新图像,同时将HVM指定为虚拟化类型.但是,ec2-create-image没有用于指定虚拟化类型的命令行参数.

还有另一种方法可以做到这一点吗?

解决方法

更新

AWS已在EC2 API中启用此功能.它在新的基于Boto的awscli中作为aws ec2 register-image的–virtualization-type选项提供.

原始答案

是!不幸的是,没有直接的方法可以做到这一点.此外,某些PV实例可能需要内核和引导加载程序修改.

>从现有的PV AMI创建一个卷.如果它是您自己的PV AMI,您可以从快照创建一个卷.如果是第三方AMI,则需要启动实例并拍摄快照.
>使用任何AMI启动HVM实例.
>停止该HVM实例.
>从该实例中分离根卷.
>将PV卷作为根卷(/ dev / sda1或/ dev / sda(如果已分区))附加到HVM实例.
>在HVM实例上运行ec2-create-image.
>使用新的HVM AMI启动其他实例.

如果这不起作用,那么在第5步之前,您需要将该卷附加到正在运行的实例,设置chroot,并为您的发行版安装内核和引导加载程序.您可能还想清除日志和任何cloud-init缓存.

相关文章

linux常用进程通信方式包括管道(pipe)、有名管道(FIFO)、...
Linux性能观测工具按类别可分为系统级别和进程级别,系统级别...
本文详细介绍了curl命令基础和高级用法,包括跳过https的证书...
本文包含作者工作中常用到的一些命令,用于诊断网络、磁盘占满...
linux的平均负载表示运行态和就绪态及不可中断状态(正在io)的...
CPU上下文频繁切换会导致系统性能下降,切换分为进程切换、线...