Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >亚马逊EC2:如何将现有的PV转换为HVM

亚马逊EC2:如何将现有的PV转换为HVM
EN

Stack Overflow用户
提问于 2014-06-20 07:26:16
回答 2查看 27.2K关注 0票数 83

问题:

如何在不重新创建整个系统设置的情况下对现有的AMI使用新的AWS EC2类(r3、i2)?

新的EC2类只支持基于HVM的虚拟化,但我只有PVM映像。

EN

回答 2

Stack Overflow用户

发布于 2014-10-09 03:02:38

答案:

  1. 启动Ubuntu HVM linux,任何版本,新的
  2. 使用我现有的AMI / PVM启动一个Ubuntu /,并在它们上安装grub包:apt-get install grub-pc grub-pc-bin grub-legacy-ec2 grub-gfxpayload-lists
  3. 停止PVM linux
  4. 在PVM中分离根分区(/dev/sda1 1)
  5. 将PVM linux根分区附加到运行HVM linux的某处,例如: /dev/sdf
  6. 在HVM linux上:mkdir -p /mnt/xvdf && mount /dev/xvdf /mnt/xvdf
  7. rsync -avzXA /boot/ /mnt/xvdf/boot/
  8. mount -o bind /dev /mnt/xvdf/dev && mount -o bind /dev/pts /mnt/xvdf/dev/pts && mount -o bind /proc /mnt/xvdf/proc && mount -o bind /sys /mnt/xvdf/sys
  9. chroot /mnt/xvdf
  10. grub-install --no-floppy --recheck --force /dev/xvdf
  11. update-grub2
  12. 出口色度: CTRL+D
  13. 停止HVM Linux
  14. 分离/dev/sdf 1原始根和detach /dev/sdf PVM根
  15. 将PVM根目录附加到HVM作为/dev/sda1 1
  16. 启动HVM linux,哇!
  17. 从运行的HVM linux中创建一个新的AMI映像,它将被虚拟化。
票数 77
EN

Stack Overflow用户

发布于 2019-07-01 12:14:25

@divyenduz的答案是可行的,但对于现代(大约2019年)的AWS EC2,需要进行一些清理和澄清。重要的是,现代实例类以不同的方式转换设备名称。

这是我修改过的步骤。

为了清晰起见,节点是:

  • 要升级到HVM的原始PVM节点是"PVM01“。
  • 要将HVM 01的根磁盘迁移到"HVM01“的新HVM节点。

继续之前的:备份原始节点PVM01

  1. 在Node PVM01上安装先决条件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- install grub packages on PVM01

apt-获取安装grub-pc grub-pc-bin grub-旧式-EC2 grub-gfx负载-列表

  1. 停止节点PVM01

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- Create snapshot of /dev/sda1
- OR create AMI of entire node

  1. 在PVM01上创建原始根卷的快照,并从此快照创建新卷
    • 在PVM01上创建/dev/sda1 1的快照
    • 从这个快照创建第一卷
    • 为每个资源加上相应的 标签
      • 标签:名称;值: pvm01:/dev/sda1:snapshot-for-conversion-to-hvm:2019-07-01

  1. 创建实例:新的Ubuntu实例"HVM01“。任何实例类都应该工作;但是,设备名称可能有所不同,请参见下面的注释
    • 我使用了仿生Ubuntu 18.04 HVM AMI ID ami-0a313d6098716f372和实例类C5.XLARGE

  1. 将PVM01根分区(从上一步开始的新卷)附加到新的HVM01 /dev/sdf

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- **NOTE**: Older instance classes such as C3 will translate the volume name to /dev/xvdf
- **NOTE**: Newer instance classes such as C5 will translate the volume name to /dev/nvme1  
    - On newer instance classes, the **root vol** will be /dev/nvme0 -- ZERO
    - On newer instance classes, the **attached, secondary vol** will be /dev/nvme1 -- ONE

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- Make a note of the attached volume device name

ssh PVM01 sudo fdisk -l

  1. 在HVM01上:用于xvdf,例如在C3.XLARGE DEVNAME=xvdf1 #上用于nvme例如,在C5.XLARGE上,DEVNAME=nvme1n1 mkdir -p /mnt/${DEVNAME} &&挂载/dev/${DEVNAME} /mnt/${DEVNAME} rsync -avzXA /-avzXA/ /mnt/$ {DEVNAME}/ -o bind /dev /mnt/${DEVNAME}/dev /mnt/${DEVNAME}/dev &&挂载-o bind /dev/pts /mnt/${DEVNAME}/dev/pts &&挂载-o bind /proc /mnt/${DEVNAME}/proc &&挂载-o bind /sys /mnt/${DEVNAME}/sys chroot /mnt/${DEVNAME} grub-安装-无软盘-重新检查-强制/dev/${DEVNAME}更新-污垢2
  2. 用CTRL+D输出色度
  3. 停止HVM01
  4. 分离两个卷
    • /dev/nvme0 0 PVM01根
      • 注意:这是C3实例类上的/dev/sda1 1

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- detach /dev/${DEVNAME} (DEVNAME from above script)

  1. 将PVM01根卷附加到HVM01作为/dev/sda1 1
    • 同样,/dev/sda1 1名称在控制台中;根据实例类的现代化程度,这个名称将被转换为/dev/ name 0或/dev/xvda1 1。

  1. 启动HVM01
  2. 可选:从正在运行的HVM01创建一个新的AMI映像,它将被虚拟化。
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24330721

复制
相关文章
原 CentOS(亚马逊EC2,亚马逊班)
一、安装 nginx 今天早上看到新闻,nginx正式发布1.10稳定版,所以就不用系统内带的1.8的稳定版了,所以自己编译安装下。 1、下载 访问:http://nginx.org/ 找到最新版:http://nginx.org/en/download.html 下载最新版: wget http://nginx.org/download/nginx-1.10.0.tar.gz 下载后解压: tar -zxf nginx-1.10.0.tar.gz cd nginx-1.10.0 2、安装编译支持依赖模块
霡霂
2018/06/04
7830
certbot开启亚马逊EC2主机https
国内那么多云主机运营商, 你为何要买国外的主机呢, 你肯定在干些见不得人的勾当..
chuchur
2022/10/25
5080
原 亚马逊云EC2启用密码登陆
亚马逊的云服务器在创建的时候会让你选择一个秘钥,然后让你下载一个私钥,通过私钥连接,禁用root和密码登陆,这样十分安全,但是在管理也存在不方便的地方。 这篇文章就简单的介绍下,开启root权限和启用密码登陆。 一、启用root账号 为root设置密码 sudo passwd root 二、允许密码登陆 1、切换到root权限 su root 2、修改ssh配置文件,允许密码登陆 vim /etc/ssh/sshd_config 修改配置文件 ## 将下面的 no 改为 yes 可使用/搜索 Pass
霡霂
2018/06/04
1.7K0
Amazon EC2 虚拟化技术演进:从 Xen 到 Nitro
今年2月,由光环新网运营的AWS 中国(北京)区域和由西云数据运营的 AWS 中国(宁夏)区域发布新的实例类型,新的实例类型包括C5、C5d、R5、R5d。除了这四种之外,在AWS国外部分区域还上线了最新的C5n。
SammyLiu
2019/06/28
7K0
Amazon EC2 虚拟化技术演进:从 Xen 到 Nitro
手把手在亚马逊EC2上搭建Keras GPU
由于需要使用越来越复杂的神经网络,我们还需要更好的硬件。但我们的电脑通常不能承受那么大的网络,不过你可以相对容易地在亚马逊上租用一个功能强大的计算机,比如E2服务你可以相对容易地按照小时租用在亚马逊EC2服务。 我使用Keras——一个开源神经网络Python库。因为它的易用性,所以初学者可以很容易开始自己的深度学习旅程。它建立在TensorFlow之上(但是Theano也可以使用)—— 一个用于数值计算的开源软件库。租借的机器将通过浏览器使用Jupyter Notebook ——一个网络应用程序,允许共享
GPUS Lady
2018/04/02
2K0
手把手在亚马逊EC2上搭建Keras GPU
如何将ownCloud转换为Nextcloud
ownCloud的核心开发团队中一部分人员启动了一个名为Nextcloud的项目。虽然ownCloud将继续开发,但您可能想了解新项目的功能。Nextcloud和ownCloud共享一个公共代码库,这意味着将现有的ownCloud安装迁移到Nextcloud中。
小铁匠米兰的v
2018/08/02
2.6K0
如何将Array转换为List?
可以使用 Arrays.asList() 方法, 该方法接受一个数组作为输入,并返回一个列表作为输出。
程序你好
2018/07/23
1.4K0
java如何将String转换为enum
已知枚举对应的String值,希望得到对应的枚举值。例如,已知"A",希望得到对应的枚举——Blah.A,应该怎么做? Enum.valueOf()是否能实现以上目的,如果是,那我如何使用?
硬核编程
2020/07/23
3.9K0
AkShare-期货数据-期转现
期货转现货,简称期转现。期转现是指持有同一交割月份合约的多空双方之间达成现货买卖协议后,变期货仓位为现货仓位的交易。期转现方法是:达成协议的双方共同向交易所提出申请,获得交易所批准后,分别将各自持仓按双方商定的平仓价格由交易所代为平仓(现货的买方在期货市场须持有多头仓位,现货的卖方在期货市场须持有空头仓位)。同时双方按达成的现货买卖协议进行与期货合约标的物种类相同、数量相当的现货交换。
数据科学实战
2021/02/05
4320
AkShare-期货数据-期转现
如何将视频轻松转换为 GIF
有时看到一条有意思的视频想发到朋友圈,但朋友圈有限制时长,而且也不方便,这时可以把视频转GIF(再做成表情包也可以),再发到朋友圈或者微博(不用像视频一样需要等待审核)。
苏生不惑
2020/02/26
1.8K0
如何将pdf转换为word 2.0
再次以《新冠肺炎诊疗方案(试行第七版)》为例,该文件为图片性pdf,文字不可复制。
生信菜鸟团
2020/06/04
2.6K0
Java 如何将 List 转换为 MAP
上面的代码将会把 Id 作为 Key,然后生成的 Map 是以 id 为 Key,Animal 为Value 的 Map。
HoneyMoose
2022/10/12
2K0
Java 如何将 List 转换为 MAP
如何将pdf转换为word 3.0
相对于封装的软件,python和R的操作需要稍微折腾一下。浏览论坛的时候的发现了一款轻量级程序,尝试了一下还不错,看一下转换的效果:
生信菜鸟团
2020/08/04
1.7K0
如何将pdf转换为word 3.0
java如何将String转换为Int
Short.valueOf/parseShort, Long.valueOf/parseLong等也是有类似差别。
硬核编程
2020/07/23
1.6K0
如何将 JSON 转换为有序判断?
JSON(JavaScript Object Notation)是系统之间数据交换的流行格式。它是一种轻量级、基于文本且易于解析的格式,已成为互联网上数据交换的标准。但是,JSON 不会为数据结构中的元素提供任何顺序。虽然这在大多数情况下可能不是问题,但在某些情况下,元素的顺序很重要。
很酷的站长
2023/08/11
4100
如何将 JSON 转换为有序判断?
[1154]如何将字符串转换为datetime
1.把datetime转成字符串: 2017-11-23 17:05:18 2.把字符串转成datetime: 2017-11-23 16:10:10 3.把字符串转成时间戳形式: 1511424610.0 4.把时间戳转成字符串形式: 2017-11-23 17:05:18 5.把datetime类型转外时间戳形式: 1511427918.0
周小董
2022/07/27
3.3K0
mysql整型转字符串_java中如何将字符串转换为字符数组
select * from A order by cast(name as unsigned);
全栈程序员站长
2022/09/27
23.3K0
java中如何将数组转换为List
如何将其转换为ArrayList <Element> arraylist = ???
硬核编程
2020/07/23
3.1K0
如何将文字转换为对应的PathGeometry
其实我们可以使用FormattedText的BuildGeometry将字符串转成对应的Geometry
黄腾霄
2020/06/10
1.6K0
亚马逊AWS自研芯片深度分析
去年的AWS re:Invent 2021有很多跟芯片相关的内容值得展开来说的事情。但网上已经有很多专业的文章了,我就不再班门弄斧一一介绍了。
chaobowx
2022/12/16
9990
亚马逊AWS自研芯片深度分析

相似问题

如何确保xen DomU是HVM或PV

31

将amazon实例从PV转换为HVM的最简单方法

14

AWS:将t1.微(PV)转换为t2.介质(HVM)

11

如何知道HVM和PV支持哪种类型的实例?

20

亚马逊网络服务ElasticBeanstalk EC2出现postgresql连接错误

211
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文