เมื่อทำการโคลน VMware Virtual Machine ฉันจะป้องกันไม่ให้ที่อยู่ MAC & UUID ขัดแย้งกันได้อย่างไร


10

ฉันพบปัญหาต่อไปนี้บนทั้ง VMware Fusion (สำหรับ Macs) และกับ VMware ESXi / vSphere คุณหลายคนคุ้นเคยกับปัญหานี้และอธิบายไว้ที่ VMware KB: " ระบบเครือข่ายไม่สามารถใช้งานได้ในเครื่องเสมือน Linux แบบโคลนนิ่ง (2002767) "

  1. สร้าง CentOS VM
    • นี่คือ VM กระดูกที่เปลือยเปล่าพร้อมชุดซอฟต์แวร์ที่น้อยที่สุดและสแต็กเครือข่ายที่ใช้งานได้ แนวคิดก็คือเราจะใช้ VM ที่น้อยที่สุดทำการโคลนและเพิ่มซอฟต์แวร์เพิ่มเติมในภายหลัง
  2. โคลนที่ VM
  3. VMware Fusion หรือ vCenter จะกำหนดที่อยู่ MAC ใหม่ให้กับส่วนต่อประสานเครือข่ายบน VM ที่โคลน
  4. Linux ไม่รู้เกี่ยวกับที่อยู่ MAC ใหม่นี้ดังนั้นการเชื่อมต่อเครือข่ายจึงใช้งานไม่ได้ ไฟล์/etc/sysconfig/network-scripts/ifcfg-ethNนี้มีที่อยู่ MAC ของอินเทอร์เฟซบนเครื่องแรก
  5. ในการแก้ไขปัญหานี้ฉันต้องค้นหาที่อยู่ MAC ของ VM ใหม่แก้ไขifcfg-ethNและเพิ่ม MAC นี้ในHWADDR=ฟิลด์ ฉันไม่สามารถตัดและวาง MAC ลงในฟิลด์ได้ดังนั้นนี่อาจเป็นงานที่เกิดข้อผิดพลาดได้ง่ายโดยเฉพาะถ้าฉันลืมปากกาและกระดาษเขียน MAC
  6. (คะแนนโบนัส) บน VM ใหม่มักจะ eth0, eth1 ฯลฯ แสดงในลำดับที่ไม่ถูกต้อง การแก้ไขสิ่งนี้เกี่ยวข้องกับการเต้นรำที่เป็นความลับ/etc/udev/rules.d

ฉันสามารถทำสิ่งนี้ได้ แต่มันเกิดข้อผิดพลาดได้ง่ายและมีอาการปวดเมื่อฉันแค่อยากจะหมุน VM ใหม่เพื่อทดสอบบางอย่าง

มีวิธีที่จะทำให้กระบวนการคู่มือนี้ง่ายขึ้นหรือไม่? เมื่อคุณโคลนเครื่องใหม่คุณจะแก้ไขปัญหาที่อยู่ MAC ได้อย่างไร


สำหรับระบบเหล่านี้คุณสนใจที่จะรักษาความคงทนของอุปกรณ์เอาไว้หรือไม่?
Shane Madden

ไม่ใช่สำหรับเน็ตเวิร์กอินเตอร์เฟส
Stefan Lasiewski

คำตอบ:


13

เนื่องจากสิ่งที่มีอยู่ในอุปกรณ์ยังคงดำเนินต่อไปสำหรับ VMs เหล่านี้ให้คัดลอกมันออกมา:

  • ลบบรรทัดHWADDRและUUIDจากifcfgไฟล์และ
  • ลบ/etc/udev/rules.d/70-persistent-net.rulesก่อนทำการโคลน

นั่นควรให้ eth0 ที่มีที่อยู่ MAC ใหม่ใช้ifcfg-eth0กับการบู๊ตครั้งแรก


หืมนี่ดูเหมือนจะใช้ได้ ฉันไม่มีความคิดเลยว่าHWADDRเป็นตัวเลือก ฉันควรลบ UUID ด้วยหรือไม่
Stefan Lasiewski

1
@StefanLasiewski Ahh ใช่คุณควร
เชนหัวเสีย

+1 ทำงานอย่างมีเสน่ห์ J
deepdive

2
จากผลการค้นหา 10 อันดับแรกของ Google นี่เป็นสิ่งที่ใช้ได้! หมายเหตุ: ลบบรรทัดHWADDRAND UUIDออกจาก/etc/sysconfig/network-scripts/ifcfg-eth0
Howard Lee
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.