มี python-vm-builder ที่ทันสมัยหรือไม่?


11

ฉันพยายามค้นหาวิธีปฏิบัติที่ดีที่สุดและทันสมัยในการทำสิ่งที่ฉันเคยทำกับpython-vm-builder (หรือที่รู้จักกันในชื่อ ubuntu-vm-builder)

ฉันต้องการวิธีสคริปต์ที่ทำซ้ำได้ที่จะเริ่มจากบางสิ่งเช่นubuntu-core (หรือที่รู้จักกันในชื่อศิลปินJeOS ) เพิ่มแพคเกจบางอย่างกำหนดสคริปต์ที่ทำงานครั้งแรกและอื่น ๆ

สิ่งที่ฉันตามมาคือสิ่งที่คล้ายกับการหมุน ISO แบบกำหนดเอง (แม้ว่าจะไม่ใช่ ISO แต่จะเป็นระบบ "ติดตั้ง") ผลลัพธ์จะต้องเป็นเคอร์เนลอิมเมจเริ่มต้นและรูทที่เหมาะสำหรับการบูต PXE แบบ diskless ที่มี NFS

เครื่องมืออะไรที่ใช้ในการสร้างภาพ Ubuntu netboot (หรือรูปภาพ Ubuntu สำหรับเรื่องนั้น) มีความยืดหยุ่นเพียงพอสำหรับความต้องการของฉันหรือไม่?

เครื่องมือที่ใช้ในการสร้างสภาพแวดล้อมการติดตั้งใหม่ที่ใช้สำหรับการทดสอบการรวม Ubuntu เป็นอย่างไร พวกเขาจะเหมาะสมหรือไม่

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


2
ฉันไม่ได้รับคำตอบเพราะฉันไม่แน่ใจว่าวิธีการปฏิบัติที่ดีที่สุดในปัจจุบัน แต่ฟังดูน่าสงสัยเหมือนเป็นงานสำหรับ Chef หรือ Puppet ซึ่งอาจเป็นไปได้มาก
Marco Ceppi

1
ทำไม vmbuilder ไม่เหมาะกับความต้องการของคุณอีกต่อไป? มันใช้debootstrapเพื่อสร้างระบบฐาน ("chroot" ซึ่งสามารถคัดลอกไปยังภาพดิสก์) ลองดูและช่วยดูว่า
เซเลม

vmbuilder จะทำงานได้ฉันคิดว่า แต่นี่เป็นระบบระยะยาวดังนั้นฉันไม่ต้องการสร้างบิตที่ตายไปแล้วในน้ำ
jderose

คำตอบ:


7

คุณสามารถใช้รูปภาพระบบคลาวด์อย่างเป็นทางการโดยตรงจากนั้นสร้างอิมเมจ ISO ขนาดเล็กโดยใช้cloud-localds(จากcloud-utilsแพ็คเกจ) เพื่อใช้เป็นแหล่งข้อมูล "nocloud" ไปยัง cloud-init

จากนั้นคุณสามารถใช้ userdata จากคลาวด์(ตัวอย่าง)เป็นกลไกเดียวในการเพิ่มแพ็กเกจและเรียกใช้สคริปต์รันครั้งแรกของคุณเองในผู้ให้บริการคลาวด์ที่ให้ภาพ Ubuntu Cloud อย่างเป็นทางการเช่นเดียวกับ VM ท้องถิ่นของคุณ

หากคุณรันcloud-localdsโดยไม่มีพารามิเตอร์จะแสดงตัวอย่างการใช้งานเพื่อกำหนดค่าและเรียกใช้ VM โดยใช้ kvm โดยตรง

หากต้องการเรียกใช้ VM ด้วยวิธีอื่นเพียงแค่จัดหาอิมเมจคลาวด์ (เช่นดาวน์โหลดจากhttps://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-amd64-disk1.imgเป็น 12.04) ดิสก์ตัวแรกและนำเสนอผลลัพธ์อิมเมจ ISO จากcloud-localdsเป็นซีดีรอม

ข้อมูลเพิ่มเติมในบล็อกโพสต์สกอตต์ของโมเซอร์


1
ฉันไม่แน่ใจว่าจะใช้งานได้อย่างไรหากคุณต้องการที่จะจบลงด้วยระบบเดสก์ท็อป
Robie Basak

ขอบคุณ! ดูเหมือนว่าสิ่งที่ฉันกำลังมองหา และสภาพแวดล้อมนี้ไม่ได้มีไว้สำหรับระบบเดสก์ท็อป BTW ฉันกำลังสร้างบางสิ่งบางอย่างเล็กน้อยเช่นสภาพแวดล้อมชั่วคราว MAAS มันต้องมีความครอบคลุมมากกว่าพูดหลักของ Ubuntu เพียงอย่างเดียว แต่ฉันอยากให้มันเล็กกว่าการติดตั้งเซิร์ฟเวอร์ Ubuntu เล็กน้อยนิดหน่อย
jderose

2

ฉันไม่เคยบรรจุ ISO ดังนั้นฉันจึงไม่สามารถแสดงความคิดเห็นจากประสบการณ์ของฉันเอง แต่ปรากฏว่าคำตอบสำหรับคำถามของคุณคือ Cobbler ( http://cobbler.github.com )

จากเอกสารชุมชนของ Ubuntu:
"Ubuntu ใช้ cobbler เป็นเซิร์ฟเวอร์การจัดเตรียมที่ต้องการสำหรับเครื่อง Ubuntu" -  https://help.ubuntu.com/community/Cobbler


1
help.ubuntu.com/community/Cobblerล้าสมัย ฉันเพิ่งขอให้อัปเดต ขออภัยที่พลาดมาก่อน
Robie Basak

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

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