gpt4 book ai didi

amazon-web-services - 从快照启动 aws 实例,找不到内核 ID

转载 作者:行者123 更新时间:2023-12-04 08:17:39 25 4
gpt4 key购买 nike

简短版本:

对于 AWS,您如何从给定的 ami id 或从使用该 ami 启动的实例中找到内核 id。

长版:

我有一个 aws 实例,其中所有驱动器都支持 ebs。我正在尝试从驱动器快照启动它的精确副本。

此过程的第一步是从根卷快照创建一个新的 ami。当我之前这样做时,我只是用谷歌搜索了 ami id,发现某个地方发布了我从 aws 控制台选择的标准 ubuntu ami 的内核 ID,但这一次似乎不起作用。

大量搜索、阅读文档和 aws 论坛使内核文件听起来应该填充在实例描述中,但对我(以及论坛中的许多其他人)来说它是空白的。我尝试启动一个新的(从控制台)实例 [Amazon Linux AMI 2014.09 (HVM) - ami-08842d60],该实例的内核字段也为空白。

如果我创建一台全新的机器,对其进行快照,然后将内核保留为默认内核,ami 工作正常,但默认设置不适用于我尝试过的任何旧 ami。

有人知道现在为 ami 查找 kernek ID 的过程是怎样的吗?

最佳答案

简短版本:

如果您的 ami 是一个 hvm,您似乎根本不需要内核 ID,只要您正确设置选项即可。

长版:

如果您使用像这样的 boto 调用创建您的 ami:

    ami_id = conn.register_image(
name='some_name',
description='some_description',
architecture='x86_64',
root_device_name='/dev/sda1',
snapshot_id=snapshot_id,
delete_root_volume_on_termination=True)

如果实例的原始 ami 是 aws 控制台中列出的最新 hvm ami,它似乎可以工作。但是一旦 aws 更新了它的默认 ami,它就停止工作了。我假设它是因为后端的某些东西选择了正确的内核 ID 或其他东西。无论哪种方式,这项工作都非常困惑!

但是,如果您将 virtualization_type 设置为 hvm,它似乎在没有内核 ID 的情况下始终有效。

    ami_id = conn.register_image(
name='some_name',
description='some_description',
architecture='x86_64',
virtualization_type='hvm',
root_device_name='/dev/sda1',
snapshot_id=snapshot_id,
delete_root_volume_on_termination=True)

另一方面,如果您的实例是准虚拟的,那么只要您指定了内核,您就不需要在 boto 调用中指定 virtualization_type。

关于amazon-web-services - 从快照启动 aws 实例,找不到内核 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26243042/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com