当前位置:  开发笔记 > 运维 > 正文

Amazon EC2实例如何选择其内核?

如何解决《AmazonEC2实例如何选择其内核?》经验,为你挑选了2个好方法。

我有一个使用亚马逊提供的Fedora 8 64位AMI的Amazon EC2实例,我想升级到Fedora 10.

我尝试通过运行"yum update"来升级内核和所有软件包.这似乎工作正常,我看到我现在安装了fc10内核,并且我所有已安装的软件包也已更新到Fedora 10版本.

但是,我也注意到仍然安装了fc8内核,当我重启我的映像时,它返回运行fc8内核,而不是fc10内核(我从"uname -a"的输出中推断出来).

我需要采取一些额外的步骤来使我的映像在fc10内核下启动,或者这是否可能?亚马逊文档没有找到对我有用的东西.



1> 小智..:

您可以创建自己的AMI,但需要使用Amazon提供的内核.他们提供的最新版本是2.6.21.我有一个用于CentOS实例的fc(Fedora Core)内核列表.我很确定他们也可以和Ubuntu一起使用.

当您使用ec2-register注册时,您需要将它们烘焙到您的AMI中.它们可以在您启动实例时进行更改,但我喜欢使用正确的AKI(内核)和ARI(ramdisk).添加对临时磁盘的支持也很有帮助.您需要为更大的实例支付额外的存储空间,您也可以使用它.我对ec2-register的神奇咒语:

ec2-register --snapshot snap-12345678 -K pk-XXXXXXXXXXX.pem -C cert-XXXXXXXXXXX.pem \
--description "EBS CentOS 5.5 i386" --name "base-image-i386-4" --architecture i386 \
--root-device-name /dev/sda1 -b /dev/sdb=ephemeral0 -b /dev/sdc=ephemeral1 \
-b /dev/sdd=ephemeral2 -b /dev/sde=ephemeral3 --region us-east-1 \
--kernel aki-6eaa4907 --ramdisk ari-e7dc3c8e

您可以更改区域,快照ID,描述,名称,拱门等.

还要记住内核和ramdisks是特定于区域的.我不记得我在哪里得到这个清单,但我找不到它.希望它可以帮助别人.

2.6.21内核可用作:

美国地区:

32位:

* aki-6eaa4907
* ari-e7dc3c8e
* ami-48aa4921

64位:

* aki-a3d737ca
* ari-4fdf3f26
* ami-f61dfd9f

欧盟地区:

32位:

* aki-02486376
* ari-aa6348de
* ami-0a48637e

64位:

* aki-f2634886
* ari-a06348d4
* ami-927a51e6

AP地区:

64位:

* aki-07f58a55
* ari-27f58a75
* ami-ddf58a8f

32位

* aki-01f58a53
* ari-25f58a77
* ami-c3f58a91



2> 小智..:

您无法将自己的内核映像上传到EC2/Amazon.只有授权用户才能上传内核映像.即使您上传自己的Linux操作系统映像并在EC2中从中启动,也会加载与您最初上载的内核不同的预定内核.这是亚马逊制定的政策决定.您可以做的最多是更改默认内核版本,从您希望实例启动的预定和可用的亚马逊内核列表中进行选择.

但是,您可以构建自己的内核模块,或者为要加载的内核重建内核模块.编译自己的模块或重新编译由正在加载的内核提供的模块有点棘手,因为亚马逊中的内核是使用Xen管理程序修改的.您需要找出在您的实例中加载的特定内核源代码.

干杯

Ernesto Benedito

推荐阅读
罗文彬2502852027
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有