Computer >> Máy Tính >  >> Phần mềm >> Máy ảo

Làm quen với ảo hóa song song Xen

Hãy để tôi cảnh báo bạn trước khi chúng ta bắt đầu; nếu bạn thử sử dụng Xen mà không có ảo hóa phần cứng, hành trình của bạn sẽ gặp nhiều vấn đề. Đây là một gợi ý không tinh tế rằng bạn không nên thử Xen nếu bạn không có CPU hiện đại với các phần mở rộng ảo hóa. Khác xa với các giải pháp gia đình như VirtualBox hay có lẽ là VMware Player, nhưng sau đó, Xen nhắm đến một phân khúc thị trường hoàn toàn khác.

Nhưng hãy nói rằng bạn cũng bướng bỉnh như tôi và muốn chinh phục thế giới bằng các bài hướng dẫn. Sau đó, bạn sẽ thử ảo hóa song song Xen và không thành công. Trở ngại lớn nhất là khiến các khách Xen của bạn khởi động từ đĩa CD và hình ảnh đĩa CD, để bạn có thể bắt đầu cài đặt. Và mạng ảo hóa cũng không phải là niềm vui. Chà, hôm nay, tôi sẽ cố gắng làm mọi thứ đơn giản hơn. Sự nhấn mạnh là cố gắng.

Chúng ta sẽ tìm hiểu những vấn đề chúng ta gặp phải, các triệu chứng là gì, cách khắc phục chúng, nếu có, cách làm việc với các tệp initrd và kernel được ảo hóa song song cũng như cách định cấu hình bộ điều hợp mạng bắc cầu cho khách của chúng ta. Tất cả những điều này và hơn thế nữa, được bao bọc trong sự không chắc chắn. Theo tôi.

Làm quen với ảo hóa song song Xen

Tại sao ảo hóa song song có thể là một vấn đề khó khăn

Đây là lời giải thích chính thức:

Paravirtualization là một kỹ thuật ảo hóa nhẹ và hiệu quả do Xen giới thiệu, sau này cũng được các giải pháp ảo hóa khác áp dụng. Ảo hóa song song không yêu cầu phần mở rộng ảo hóa từ CPU chủ. Tuy nhiên, các khách được ảo hóa song song yêu cầu hạt nhân đặc biệt được chuyển để chạy tự nhiên trên Xen, vì vậy, khách biết về trình ảo hóa và có thể chạy hiệu quả mà không cần mô phỏng hoặc phần cứng giả lập ảo.

Điểm nhấn là từ khách yêu cầu nhân đặc biệt. Nếu bạn không biết đây là gì hoặc làm thế nào để có được nó, bạn sẽ cần phải làm việc chăm chỉ để hoàn thành công việc. Đáng chú ý nhất, bạn sẽ gặp vấn đề khi cố gắng khởi động từ hình ảnh CD trực tiếp, đây phải là bước đầu tiên trong quá trình cài đặt hệ thống.

Khởi động từ đĩa CD hoặc ảnh ISO

Sự cố sẽ bắt đầu khi bạn cố gắng thiết lập máy ảo mới của mình. Giống như chúng tôi đã làm hàng triệu lần trước đây, chúng tôi muốn khách của mình khởi động từ CD trước.

Làm quen với ảo hóa song song Xen

Làm quen với ảo hóa song song Xen

Nhưng sau đó, bạn gặp phải loại lỗi khó chịu này, ngay cả khi bạn thử sử dụng ISO:

Làm quen với ảo hóa song song Xen

Làm quen với ảo hóa song song Xen

Nếu bạn truy cập Intertubes, bạn sẽ tìm thấy bảy triệu công thức cho bạn biết cách này có thể hoặc không thể thực hiện được. Nhưng nó không bao giờ là một lớp lót, không bao giờ cắm và chạy. Hầu hết các giải pháp phổ biến khác nhau giữa việc trích xuất hình ảnh và tải nó lên máy chủ HTTP và gắn hình ảnh dưới dạng thiết bị lặp lại.

Tái bút Mời các bạn xem thêm phần Đọc thêm. Tài liệu tham khảo giải thích lý do tại sao Ubuntu, mà chúng tôi đã chọn để thử nghiệm ở trên, sẽ không thực sự khởi động với tư cách là khách ảo hóa nếu không thực hiện thêm công việc khó khăn và sửa đổi.

Vậy bạn nên làm gì?

Trước hết, không có gì. Rất ít phương pháp được đề xuất có thể dễ dàng thực hiện. Và chúng không thực sự hoạt động. Những gì bạn cần làm là kiểm tra thông báo lỗi. Nhấp vào Chi tiết và hy vọng điều tốt nhất. Mô tả có thể hữu ích.

Không giải thích chi tiết về tất cả các trường hợp có thể xảy ra, các vấn đề chính với ảo hóa song song thu hẹp thành hai vấn đề cốt lõi:1) bạn cần kernel và initrd phù hợp để khởi động hệ thống khách 2) giao diện mạng ảo hóa song song không tốt. Và sự kết hợp của cả hai điều này sẽ ngăn bạn khởi động máy ảo của mình từ CD/DVD.

Hạt nhân &hình ảnh initrd

Với ảo hóa hoàn toàn, nó khá đơn giản. Trong tệp cấu hình máy ảo, bạn cần chỉ định đúng trình tạo, kernel và chỉ thị khởi động. Hạt nhân hvmloader luôn có sẵn, vì vậy tất cả đều ổn ở đó.

Làm quen với ảo hóa song song Xen

Không có kernel hoặc initrd như vậy cho khách ảo hóa. Vì vậy, bạn sẽ cần phải ứng biến một chút. Khi bạn thử khởi chạy máy ảo của mình sau khi tạo nó bằng trình hướng dẫn GUI, bạn sẽ gặp lỗi CD-ROM. Nhưng tệp cấu hình sẽ được ghi vào đĩa.

Chuyển đến thư mục /etc/xen/vm và mở tệp trong trình soạn thảo văn bản. Lưu ý các dòng kernel và initrd, trỏ đến các ảnh initrd và kernel tạm thời bên dưới /tmp. Bạn có thể thay đổi hai mục nhập này để trỏ đến các tệp initrd và kernel Xen cố định, nhưng điều này có thể gây phiền phức vì bạn có thể cần phải tải xuống các mục này một cách riêng biệt hoặc tự xây dựng chúng. Bạn cũng có thể muốn kiểm tra nội dung của hình ảnh CD và tìm kiếm nội dung liên quan đến xen, sau đó bạn có thể sao chép và sử dụng để khởi động máy khách. Đây là một ví dụ:

Làm quen với ảo hóa song song Xen

Bạn cũng có thể sử dụng chỉ thị bộ nạp khởi động với các đối số phù hợp, nhưng một lần nữa, đây là một quá trình mệt mỏi vì mỗi máy ảo sẽ yêu cầu một tập hợp con khác nhau. Tuy nhiên, đối với hầu hết khách Linux, những điều sau đây sẽ hoạt động, có thể là lớn, ngụ ý:

bộ nạp khởi động ='/usr/lib/xen/boot/domUloader.py'
bootentry ='--entry-=xvda1:/boot/vmlinuz-xen,/boot/initrd-xen'

Tất nhiên, bạn sẽ cần điều chỉnh thiết bị ảo từ xvda1 thành bất kỳ thứ gì bạn đang sử dụng trong thiết lập của mình. Đây là một hack xấu xí và sẽ không nhất thiết phải hoạt động.

Giao diện mạng ảo hóa

Một trở ngại khác là chỉ thị vif. Xen khách ảo hóa có thể không thích thiết lập của bạn. Lý do là bạn không thể sử dụng trực tiếp bộ điều hợp mạng của mình mà không bắc cầu chúng. Bạn sẽ không thể sử dụng các thiết bị như eth0 hoặc wlan0, bạn sẽ phải sử dụng xenbr0 hoặc br0 và tương tự. Nếu bạn cố gắng khởi động một máy ảo từ dòng lệnh, thông báo lỗi sẽ to và rõ ràng:

Làm quen với ảo hóa song song Xen

Như một giải pháp thay thế tạm thời, hãy xóa hoặc nhận xét chỉ thị và máy ảo của bạn sẽ khởi động. Một lần nữa, không giống như hầu hết các hướng dẫn của tôi, vốn sử dụng câu trả lời tích cực, rõ ràng là có, ở đây chúng ta đang giải quyết những điều có thể gây khó chịu. Thay thế vif chung bằng bất kỳ loại chỉ thị nào bạn có thể có trong tệp cấu hình của mình.

#vif=['',]

Và sau đó, bảng điều khiển ma thuật:

Làm quen với ảo hóa song song Xen

Làm quen với ảo hóa song song Xen

Và sớm muộn gì bạn cũng sẽ gặp sự cố mạng:

Nói chung, bạn có thể không có mạng, nhưng điều này hầu như không hữu ích, vì chúng tôi muốn có kết nối cho khách của mình. Do đó, bạn sẽ cần kết nối bộ điều hợp của mình. Một số giao diện mạng của bạn có thể không hỗ trợ bắc cầu, vì vậy hãy tính đến điều đó.

Làm quen với ảo hóa song song Xen

Làm quen với ảo hóa song song Xen

Một lần nữa, điều này có thể giúp ích hoặc không. Hầu như không có gì đảm bảo. Ví dụ:bạn có thể gặp xui xẻo và nhìn thấy loại thông báo này cho bạn biết:bạn nên bỏ ngay bây giờ. Hoặc bạn có thể thử tạo cầu nối thủ công bằng tiện ích brctl.

Chúng ta có gì ở đây?

Hướng dẫn này hơi khó hiểu, vì vậy hãy xem những gì chúng tôi có cho đến nay. Bạn có hai vấn đề cốt lõi:một, bộ nạp khởi động giảm kernel cho khách của bạn; hai, giao diện mạng. Chạy ở chế độ ảo hóa song song, Xen yêu cầu các tệp initrd và kernel phù hợp cho khách của bạn được đặt ở đâu đó trên đĩa. It also requires bridged network adapters.

You can solve the first by letting the virtual machine wizard create temporary entries for you on the hard disk, but this works only for some types of guest operating systems. For instance, Scientific Linux 6, which is based on RedHat 6, explicitly supports this kind of thing, so you're lucky. See below for more details. Alternatively, you can manually place the proper Xen kernel and initrd somewhere on your hard disk. As a last option, you can also use the bootloader directly, again with the right files.

The second issue takes an extra step; you must configure a network bridge. You can bridge both wired and Wireless adapters, however some hardware may not support this.

Even so, things may not work. And they probably won't. Bottom line, Xen paravirtualization is a pain; best avoided. If you compare the difficulty in getting your virtual machines running this way when pitted against pretty much any alternative, the answer is quite obvious.

Đọc thêm

If you're still brave after this guide, then you may want to consider reading a few more articles presenting possible solutions to booting your guests from CD-ROM. Or rather, showing you why it doesn't work and why you shouldn't bother.

Xen domU support - Popular choices like Ubuntu and Fedora are a no-go, yet

How to boot SLES para-virtual domU as a rescue system

Kết luận

Working with Xen in paravirtualized mode is not a pleasant task. Depending on how advanced your guest systems are in supporting para-domU, you may get lucky and boot from a CD or an ISO image. But you will also require bridged networking, which may not always work, especially with Wireless adapters.

Moreover, you may need to hunt for Xen kernel and initrd files for your guest system, including even compiling your own custom version. This kind of work is too much for most people, both in terms of skill, patience and administrative overhead, especially since other virtualization solutions offer as much without breaking into sweat.

Hopefully, this guide clears the fog a little. Web server, loopback device, physical drive, it makes no difference. You need special kernel and initrd images and bridged networking. You may be lucky and have guests that support domU paravirtualization. If not, you're in for a lot of trouble. My warmest advice is, avoid if you can, go for alternative solutions. However, in its full hardware virtualization mode, Xen is rather cool.

Chúc mừng.