EBS ボリュームから AMI を起動しようとすると問題が発生します。基本的に、希望どおりに構成済みの Linux (i386) ベースの AMI の別のインスタンスを起動しようとしています。この 1 週間、多くのガイドに従ってきました。これまでのところ、カスタム プライベート AMI を作成できましたが、新しいインスタンスを起動した後に接続できません。作成した AMI の設定が間違っているのではないかと思います (ファイルが完全にコピーされていない可能性があります)。
とにかく、AMIを作成するために私が行っている基本的な手順は次のとおりです。
ec2-create-volume -K pk-xxxxxx.pem -C cert-xxxxxx.pem --size 10 --availability-zone us-east-1a
ec2-attach-volume -K pk-xxxxxx.pem -C cert-xxxxxx.pem vol-xxxxxx --instance xxxxxx --device /dev/sdh
はい | mkfs -t ext3 /dev/sdh mkdir/mnt/ebsimage
echo '/dev/sdh /mnt/ebsimage ext3 defaults,noatime 0 0' >> /etc/fstab
マウント /mnt/ebsimage
umount /mnt/ebsimage
ec2-detach-volume -K pk-xxxxxx.pem -C cert-xxxxxx.pem vol-xxxxxx --instance 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
マウントに関するコマンドがめちゃくちゃになっているか、ec2reg に関するコマンドがめちゃくちゃになっていると確信しています。助言がありますか?
私も交換してみました
はい | mkfs -t ext3 /dev/sdh
mkdir/mnt/ebsimage
echo '/dev/sdh /mnt/ebsimage ext3 defaults,noatime 0 0' >> /etc/fstab
マウント /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
最初の例と同じ結果が得られたので、この問題の解決に近づいているのか、それともさらに先なのかはわかりません。どんな助けでも大歓迎です。