EC2 - Создать AMI - Невозможно подключиться к новому экземпляру - PullRequest
1 голос
/ 06 марта 2011

Я испытываю трудности при попытке запустить AMI с тома EBS.Я в основном пытаюсь запустить другой экземпляр AMI на основе Linux (i386), который я уже настроил так, как хочу.Я следовал за многими руководствами за прошедшую неделю.Пока что я могу создать собственный закрытый AMI, но не могу подключиться к нему после запуска нового экземпляра.Я подозреваю, что созданный мной AMI неправильно настроен (возможно, файлы не были полностью скопированы).

В любом случае вот основные шаги, которые я собираюсь предпринять, чтобы попытаться создать AMI:

ec2-create-volume -K pk-xxxxxx.pem -C cert-xxxxxx.pem --size 10 - зона доступности us-east-1a

ec2-присоединить-том -K pk-xxxxxx.pem -C cert-xxxxxx.pem vol-xxxxxx - экземпляр xxxxxx -устройство / dev / sdh

да |mkfs -t ext3 / dev / sdh mkdir / mnt / ebsimage

echo '/ dev / sdh / mnt / ebsimage ext3 по умолчанию, noatime 0 0' >> / etc / fstab

mount /mnt / ebsimage

umount / mnt / ebsimage

ec2-detach-volume -K pk-xxxxxx.pem -C cert-xxxxxx.pem vol-xxxxxx - экземпляр xxxxxx

ec2-create-snapshot -K pk-xxxxxx.pem -C cert-xxxxxx.pem vol-xxxxxx

ec2reg -K pk-xxxxxx.pem -C cert-xxxxxx.pem -s snap-xxxxx-a i386 -d -n --kernel aki-xxxxx --ramdisk ari-xxxxxx

Я почти уверен, что либо мои команды, связанные с mount, испорчены, либо мои команды, связанные с ec2reg, перепутаны.Любые предложения?


Я также пытался заменить

да |mkfs -t ext3 / dev / sdh

mkdir / mnt / ebsimage

echo '/ dev / sdh / mnt / ebsimage ext3 по умолчанию, noatime 0 0' >> / etc / fstab

mount / mnt / ebsimage

со скриптом, предназначенным для использования rsync и добавления некоторых других деталей, но опять же, новый экземпляр запущенного ami не может быть подключен.Вот копия сценария.

#!/bin/sh
vol=/dev/sdh
ebsmnt=/mnt/ebsimage
mkdir ${ebsmnt}
mkfs.ext3 -F ${vol}
sync
echo "mount $vol $ebsmnt"
mount $vol $ebsmnt
mkdir ${ebsmnt}/mnt
mkdir ${ebsmnt}/proc
mkdir ${ebsmnt}/sys
devdir=${ebsmnt}/dev
echo "mkdir ${devdir}"
mkdir ${devdir}
mknod ${devdir}/null    c 1 3
mknod ${devdir}/zero    c 1 5
mknod ${devdir}/tty     c 5 0
mknod ${devdir}/console c 5 1
ln -s null ${devdir}/X0R
rsync -rlpgoD -t -r -S -l -vh \
--exclude /sys --exclude /proc \
--exclude /dev \
--exclude /media --exclude /mnt \
--exclude /sys --exclude /ebs --exclude /mnt \
-x /* ${ebsmnt}
df -h

Поскольку у меня те же результаты, что и в первом примере, я не уверен, что я ближе к решению этой проблемы или дальше.Любая помощь будет оценена.

Ответы [ 2 ]

0 голосов
/ 13 мая 2012

Я не знаю, какой дистрибутив вы пытаетесь запустить, но если вы хотите запустить debian, есть скрипт, который управляет всем процессом начальной загрузки, включая создание ami (загрузка EBS).

Вы можете найти его в моей учетной записи на github: https://github.com/andsens/ec2debian-build-ami

Скрипт был тщательно протестирован и позволяет вам включать другие скрипты для настройки вашего ami. Если вы хотите изменить сам скрипт, просто разветвите его, по крайней мере, у вас есть база для работы, с которой вы знаете, что все работает.

Я бы не рекомендовал описанный вами процесс, хотя он выглядит довольно "грязным".

0 голосов
/ 26 марта 2011

Чтобы создать свой EBS AMI из AMI на основе S3, вы можете использовать мою запись в блоге: http://www.capsunlock.net/2009/12/create-ebs-boot-ami.html

...