วิธีการสร้าง AMI ที่ทำงานอยู่ใหม่จาก snapshot การกู้คืนหลังจากที่ 8 สิงหาคมขัดข้อง?


11

หลังจากที่ Amazon ของ8 สิงหาคมดับทั้งหมด (EBS based) Amis หยุดทำงานสำหรับหลาย ผู้ใช้ นี่คือสาเหตุที่ความเสียหายของบางภาคส่วนในภาพรวมที่ AMIs จะขึ้นอยู่กับ

อย่างไรก็ตาม Amazon สร้างภาพรวมการกู้คืนซึ่งปัญหาดิสก์ควรได้รับการแก้ไข สิ่งเหล่านี้ตั้งชื่อตามบรรทัดของ "Recovery snapshot for vol-xxxxxxxx"

ฉันสร้าง AMI ใหม่จาก snapshot การกู้คืนซึ่งทำงานได้ดี แต่อินสแตนซ์ที่เปิดใช้งานจาก AMI ใหม่นี้ไม่ทำงาน: สถานะของพวกเขาคือ "กำลังทำงาน" แต่ฉันไม่สามารถ ssh เข้าไปในเครื่องหรือเข้าถึงบริการเว็บใด ๆ มันจะลดลงถึงสิ่งนี้ (จากบันทึกของระบบสามารถเข้าถึงได้ผ่านคอนโซลการจัดการ AWS):

EXT3-fs: sda1: couldn't mount because of unsupported optional features (240).

EXT2-fs: sda1: couldn't mount because of unsupported optional features (244).

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1)

ฉันติดตั้งไดรฟ์ข้อมูลที่สร้างจากสแน็ปช็อตการกู้คืนนั้นในเซิร์ฟเวอร์อื่นบน AWS และทุกอย่างดูค่อนข้างปกติ ตัวอย่างเช่น fsck พูดว่า:

$ sudo fsck -a /dev/xvdg
fsck from util-linux-ng 2.17.2
uec-rootfs: clean, 53781/524288 files, 546065/2097152 blocks

ในการสนทนาในฟอรัม AWS ครั้งหนึ่งฉันพบคำแนะนำนี้จากคนที่มีปัญหาคล้ายกัน:

วิธีแก้ไขคือการทำวอลลุ่มจากสแน๊ปช็อตและแนบกับอินสแตนซ์ที่กำลังใช้งานใช้ fsck --force เพื่อบังคับการตรวจสอบระบบไฟล์และเมื่อเคลียร์แล้วคุณสามารถสร้างสแน็ปช็อตและใช้กับ AMI

แต่ฉันไม่รู้วิธีบังคับ fsck บน Ubuntu (11.04):

$ sudo fsck --force /dev/xvdg
fsck from util-linux-ng 2.17.2
fsck.ext3: invalid option -- 'o'

ใครรู้วิธีบังคับให้ระบบไฟล์ตรวจสอบปริมาณบน Ubuntu หรือไม่ แนวคิดอื่น ๆ เกี่ยวกับวิธีเปิดใช้งานอินสแตนซ์การทำงานที่ยึดตามสแน็ปช็อตการกู้คืนหรือไม่

ตอนนี้ดูเหมือนว่าอาจเร็วกว่าที่จะเพิ่งเริ่มต้นใหม่จากUbuntu AMI ที่สะอาดและติดตั้งบริการทั้งหมดของเราอีกครั้ง :-( แต่แน่นอนฉันไม่ต้องการทำเช่นนั้นหากมีวิธีใดที่จะทำให้ snapshot การกู้คืนทำงานได้จริง

คำตอบ:


14

ฉันพบปัญหาเดียวกันเมื่อพยายามทำสำเนาเครื่อง

ปัญหากลายเป็นเคอร์เนล ทั้งเมื่อสร้าง AMI และอินสแตนซ์ที่ฉันเลือกเป็นค่าเริ่มต้นสำหรับเคอร์เนลอิมเมจ

เพื่อแก้ไขปัญหาฉันสร้าง AMI ขึ้นใหม่โดยใช้อิมเมจเคอร์เนลเดียวกันกับอินสแตนซ์ดั้งเดิม


ในการชี้แจงภาพเคอร์เนลเริ่มต้นขาดการสนับสนุน ext4 แต่เคอร์เนลที่ใช้ในการสร้าง AMI ควรใช้ต่อไป
DCYorke

หากยังคงมีเพียงสแนปชอตเท่านั้นมันจะยากมากในการกู้คืน คุณสามารถแนะนำวิธีการสำรองข้อมูลเมตาดาต้าประเภทนี้ (เช่นกันซึ่งกลุ่มความปลอดภัยและข้อมูลผู้ใช้ที่ใช้) ด้วยสแนปชอตหรือที่อื่น?
Martijn Heemels

2

คุณลองคำสั่งต่อไปนี้ (note -f ตัวเลือกแทน --force): sudo fsck -f /dev/xvdg

หวังว่านี่จะช่วยได้ เฟร็ด


fsck -fทำอะไรมากกว่านี้แน่นอน(ไม่รู้ว่าอะไรจริงman fsckไม่พูดอะไรเกี่ยวกับเรื่องนี้) ดังนั้น +1 แต่ในกรณีนี้มันไม่สามารถแก้ปัญหาทั้งหมดได้ ฉันสร้างสแนปชอตแล้ว AMI จากโวลุ่ม fscked และ lauched อินสแตนซ์จากนั้นและยังคงได้รับข้อผิดพลาด "Kernel panic ... ไม่สามารถเมานต์รูท" ใน System Log
Jonik

0

ฉันไม่ต้องการเสียเวลามากขึ้นในการต่อสู้กับปัญหาเฉพาะ AWS แปลก ๆ ดังนั้นฉันจึงสร้างอินสแตนซ์ใหม่ที่สะอาดจากหนึ่งในUbuntu AMIsอย่างเป็นทางการ(ในกรณีของฉันami-359ea941ซึ่งเป็นอิมเมจ EBS แอ่น 32 บิตของ Ubuntu 11.04 ใน ภูมิภาค eu-west-1) และสร้างการตั้งค่าเซิร์ฟเวอร์ของฉันใหม่ที่นั่น

ความจริงที่ว่าฉันสามารถเมานต์โวลุ่มที่สร้างจากสแน็ปช็อตการกู้คืนในอินสแตนซ์ใหม่ทำให้การติดตั้งใหม่เร็วขึ้นมาก ตัวอย่างเช่นผมทำสิ่งที่ชอบที่จะเรียกคืนเป็นจำนวนมากทั้งของสิ่งที่อยู่ภายใต้cp -a /mnt/recovery/usr/local /usr/usr/local

ดังนั้นในกรณีของฉันการสำรองข้อมูลการกู้คืนนั้นห่างไกลจากไร้ประโยชน์เพราะฉันสามารถเข้าถึงข้อมูลของพวกเขาได้ แต่แน่นอนว่ามันคงดีกว่าที่จะสร้าง AMI จากภาพรวมและใช้งานต่อไป (อินสแตนซ์จาก) ที่เหมือนเหตุการณ์ทั้งหมดไม่เคยเกิดขึ้น (อย่าลังเลที่จะเพิ่มคำตอบถ้าคุณรู้วิธีที่จะประสบความสำเร็จ!)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.