Điểm:0

SLES 11 PV VM trên KVM

lá cờ br

Tôi có SUSE 11 SP4 VM, ban đầu nó hoạt động trên Xen ở chế độ PV. Bây giờ tôi đang chuyển nó sang KVM. Cách tiếp cận thông thường của tôi là khởi động mạng bất kỳ Linux nào trong máy ảo mục tiêu, gắn gốc của hệ điều hành mục tiêu, chroot và xây dựng lại initramfs, sau đó khởi động lại máy ảo vào hệ điều hành mục tiêu.

SLES 11 SP4 dường như thiếu một cái gì đó vì sau đó initramfs không thể tìm thấy bất kỳ thiết bị vbd nào để gắn root. Tuy nhiên, tôi đã quản lý để chạy nó thông qua lệnh qemu trực tiếp trên máy chủ KVM:

qemu-kvm -m 32768 -smp 8 -device virtio-net-pci,mac=42:5f:96:48:39:fa,netdev=vmnic -netdev tap,id=vmnic,script=/etc/ovs-ifup ,downscript=/etc/ovs-ifdown -nographic -serial mon:stdio -drive file=/dev/lvm/vm,if=none,id=drive0,format=raw -device virtio-blk-pci,drive=drive0, scsi=tắt

và nó hoạt động tốt.

Cấu hình KVM (liên quan đến đĩa) trông như thế này:

<devices>
  <emulator>/usr/bin/qemu-system-x86_64</emulator>
  <disk type="block" device="disk">
    <driver name="qemu" type="raw" cache="none" io="native"/>
    <source dev="/dev/lvm/vm"/>
    <target dev="vda" bus="virtio"/>
    <address type="pci" domain="0x0000" bus="0x03" slot="0x00" function="0x0"/>
  </disk>
  <controller type="pci" index="3" model="pcie-root-port">
    <model name="pcie-root-port"/>
    <target chassis="3" port="0xa"/>
    <address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x2"/>
  </controller>

và người quản lý tài năng của tôi không cho phép tôi thực hiện những thay đổi đáng kể ở đây.

Tôi có thể sai ở đây, nhưng tôi nghĩ sự khác biệt chính là cấu trúc thiết bị PCI nên initramfs hoạt động theo cách này chứ không hoạt động theo cách khác. Tôi đã so sánh các thiết bị PCI:

Cây thiết bị được tìm thấy trên VM được chạy trực tiếp qua lệnh qemu:

00:00.0 Cầu máy chủ: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 Cầu nối ISA: Tập đoàn Intel 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 Giao diện IDE: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.3 Cầu nối: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 Bộ điều khiển tương thích VGA: Thiết bị 1234:1111 (rev 02)
00:03.0 Bộ điều khiển Ethernet: Thiết bị mạng Red Hat, Inc Virtio
00:04.0 Bộ điều khiển lưu trữ SCSI: Thiết bị khối Virtio của Red Hat, Inc

Cây thiết bị được tìm thấy trên bất kỳ KVM VM nào khác (cùng Máy chủ):

00:00.0 Cầu máy chủ: Bộ điều khiển DRAM Express 82G33/G31/P35/P31 của Tập đoàn Intel
00:01.0 Cầu nối PCI: Red Hat, Inc. Cổng gốc QEMU PCIe
00:01.1 Cầu nối PCI: Red Hat, Inc. Cổng gốc QEMU PCIe
00:01.2 Cầu nối PCI: Red Hat, Inc. Cổng gốc QEMU PCIe
00:01.3 Cầu nối PCI: Red Hat, Inc. Cổng gốc QEMU PCIe
00:01.4 Cầu nối PCI: Red Hat, Inc. Cổng gốc QEMU PCIe
00:01.5 Cầu nối PCI: Red Hat, Inc. Cổng gốc QEMU PCIe
00:01.6 Cầu nối PCI: Red Hat, Inc. Cổng gốc QEMU PCIe
00:01.7 Cầu nối PCI: Red Hat, Inc. Cổng gốc QEMU PCIe
Cầu ISA 00:1f.0: Bộ điều khiển giao diện LPC Intel Corporation 82801IB (ICH9) (rev 02)
Bộ điều khiển SATA 00:1f.2: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) Bộ điều khiển SATA 6 cổng [Chế độ AHCI] (rev 02)
00:1f.3 SMBus: Bộ điều khiển SMBus Intel Corporation 82801I (Dòng ICH9) (rev 02)
01:00.0 Bộ điều khiển Ethernet: Red Hat, Inc. Thiết bị mạng Virtio (rev 01)
02:00.0 Bộ điều khiển USB: Red Hat, Inc. Bộ điều khiển máy chủ QEMU XHCI (rev 01)
03:00.0 Bộ điều khiển lưu trữ SCSI: Red Hat, Inc. Thiết bị khối Virtio (rev 01)
04:00.0 Thiết bị chưa được phân loại [00ff]: Red Hat, Inc. Bong bóng ký ức Virtio (rev 01)
05:00.0 Thiết bị chưa được phân loại [00ff]: Red Hat, Inc. Virtio RNG (rev 01)
08:00.0 Bộ điều khiển lưu trữ SCSI: Red Hat, Inc. Thiết bị khối Virtio (rev 01)

Ở đây tôi thấy sự khác biệt: qemu cho phép gắn bộ lưu trữ vào cầu nối máy chủ PCI gốc, nhưng trong KVM, nó luôn được gắn vào cổng QEMU PCIe Root.

Câu hỏi của tôi là:

  1. Có thể SLES 11 đã quá cũ để hỗ trợ cổng QEMU PCIe Root không?
  2. Có thể dễ dàng cấu hình VM để gắn trực tiếp bộ lưu trữ vào Cầu máy chủ không?
  3. Tôi xây dựng lại initramfs trong môi trường đích, không thêm gì vào tệp cấu hình. Tôi có thiếu thứ gì đó (móc hoặc trình điều khiển) khi xây dựng lại initramfs không?
Điểm:1
lá cờ cz

Bạn đã tạo VM với loại máy i440fx. Hãy thử lại với loại máy q35, đây là loại máy ảo khác của bạn sử dụng.

kab00m avatar
lá cờ br
Tôi đã có q35 không hoạt động cho SLES và i440fx đang hoạt động mà tôi đã chạy thủ công. Vâng, chính nó, tôi đã thay đổi chipset thành i440fx trong KVM và KVM hiện có thể chạy nó. Q35 dường như không được hỗ trợ trong SLES 11.
Michael Hampton avatar
lá cờ cz
Rất tiếc, đó là lạc hậu. Tôi cho rằng tôi không nên ngạc nhiên khi một bản phân phối cũ không thể chạy máy ảo q35. Hy vọng rằng bạn sẽ được nâng cấp một thời gian trong năm năm qua.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.