Amazon EC2:Ubuntu(PV) 或 Ubuntu(HVM)
Posted
技术标签:
【中文标题】Amazon EC2:Ubuntu(PV) 或 Ubuntu(HVM)【英文标题】:Amazon EC2: Ubuntu(PV) or Ubuntu(HVM) 【发布时间】:2014-04-03 12:34:59 【问题描述】:我即将在 Amazon EC2 上启动 Ubuntu 实例。我在 PV 和 HVM 选项之间进行选择。我发现 PV 确实提供了一种更有效的虚拟化模型,尽管我可能是错的,并且由于亚马逊提供了这两种选择,我建议 HVM 可能会带来一些我不会从 PV 中获得的好处。我想在未来将这个虚拟机用于 GIT 和 Team City。你能帮我选择吗?
【问题讨论】:
我注意到 HVM 实例类型发生了变化,一些较弱的实例将消失。例如,Ubuntu 12.04 (HVM) 中没有 m1.Large。 @PaulWhipp:该文件现在已经过时了。 HVM images can now use PV drivers 以获得更高的性能。 什么是 PV 和 HVM?? 【参考方案1】:除非你有理由,否则我会说“使用 PV”(在 Linux 上)。 PV 得到了更好的测试,因为多年来它是唯一的选项。 (Linux 的 HVM 是最近才在非常特殊的计算集群节点之外引入的。)
在它们之间进行转换并不难——尤其是如果你做得对的话。 “做对了”是指使用Chef 或Puppet 或Ansible 之类的东西来构建您的服务器。这让您可以将您的“服务器”(也就是服务器构建过程)置于版本控制之下,从而为每个人创建即时文档以了解您的服务器上的内容。
您的根驱动器应该是临时,这样如果服务器死机,您可以重新启动并重新附加您的 EBS 数据。 (你可以通过启动第二个实例来快速升级操作系统或服务器软件。)如果你有一个 EBS 根驱动器,你将不得不付费存储/备份你的操作系统,你永远不会知道你的服务器配置是否签入版本控制。
更新:展望未来,我会倾向于 HVM,因为性能会更好(即“增强网络”)。而且,它不再是“全新的”了。
【讨论】:
这是一个非常好的和正确的答案。但是,请参阅 @Kristo J 对新t2
实例的可突增性能的回答,这实质上意味着 HVM 实例的成本效益比 PV 显着提高。我在对该答案的评论中链接了一篇关于该主题的详尽博客文章。
同意。许多新的实例类型只是 HVM,我还没有看到任何 HVM 特有的问题。
如果你想使用“增强网络”(docs.aws.amazon.com/AWSEC2/latest/UserGuide/…),你必须选择HVM。
我同意“做对”部分。虽然在 2014 年 4 月给出这个答案时“使用 PV”是准确的,但今天对于 Linux 服务器应该是“使用 HVM”。
同意。正在更新答案。【参考方案2】:
2014 年夏天,亚马逊开始推荐使用 HVM 而不是 PV AMI,因为 HVM 似乎是未来的愿景。许多较新的和当前一代的实例类型仅受 HVM AMI 支持,例如,内存优化 r3
类型 See here
随着亚马逊在优化 HVM 方面的推动和研发投入,PV AMI 性能优势将越来越小 IMMO。
【讨论】:
Aerospike:HVM 更好highscalability.com/blog/2014/8/18/…【参考方案3】:亚马逊最近刚刚推出了仅使用 HVM 的 t2 实例。在 t2 实例中,aws 引入了 burstable performance(在需要时使用 credits 使用资源,否则不要满功率运行)和 cpu credits(如果没有运行则获得 credits 24 小时内的全功率)到 ec2 实例,这大大降低了价格。
目前这仅适用于 micro、small 和 medium 实例。
请注意,它没有本地实例存储,因此您需要包含至少一个 ebs 卷。
查看博客post
【讨论】:
这是一个非常重要的考虑因素,t2
实例比 t1
实例更具成本效益。这是一篇不错的博客文章,附有图表:aws.amazon.com/blogs/aws/low-cost-burstable-ec2-instances以上是关于Amazon EC2:Ubuntu(PV) 或 Ubuntu(HVM)的主要内容,如果未能解决你的问题,请参考以下文章
amazon ec2 sudoers 文件 - ubuntu 用户要求输入密码
socket_bind():无法绑定地址 [99](Amazon EC2 上的 Ubuntu)
如何在 Amazon EC2 Ubuntu 服务器上设置 GUI