- tut cài máy ảo bằng kvm
- tut cài máy ảo bằng virtualbox
Virtualization là ảo hóa (trong bài này nói về việc cài đặt các máy ảo để sử dụng). Ở mức người dùng cá nhân, công nghệ này dường như không thực sự thu hút đối với người dùng. Bởi nếu cần có 2 hệ điều hành để chạy song song thì thường người ta sẽ cài luôn cả 2 hệ điều hành ấy để dual-boot. Trên linux cũng có các chương trình giả lập môi trường window để chạy các phần mềm window (wine).
Bài viết này sẽ chỉ ra vài trường hợp mà công nghệ ảo hóa trở nên rất tiện lợi, và quan trọng:
- Bạn muốn thử dùng Ubuntu cho quen rồi mới dám cài thật, máy ảo chính là giải pháp tuyệt vời nhất.
- Một sinh viên muốn trở thành 1 sysadmin, nhưng chỉ có 1 chiếc máy tính duy nhất. Giải pháp chính là ảo hóa, cài 2-3-4 cái máy ảo cùng chạy sẽ giúp công việc học tập nghiên cứu trở nên dễ dàng, trực quan hơn. Chuyện chạy 2-4 server linux trên 1 máy tính cũng không có gì là nặng nề cả (that why I love it )
- Một developer muốn thử nghiệm các môi trường khác nhau cho phần mềm của mình, dựng các máy ảo và việc thử nghiệm của anh ta sẽ nhanh chóng + dễ dàng hơn rất nhiều.
- Các doanh nghiệp sẽ dùng đến công nghệ ảo hóa để phân bổ tài nguyên phần cứng hợp lý. VD: thay vì chạy mỗi máy là server, họ có thể cài lên 3 máy ảo và chạy các dịch vụ khách nhau.
- Các công nghệ ảo hóa hỗ trợ các tính năng như: tạo clone 1 máy, "chụp" lại trạng thái tại 1 thời điểm nhất định của 1 máy. Ảo hóa cũng chính là nền tảng của công nghệ cloud-computing IaaS, nó có thể cho phép cung cấp tài nguyên lúc cần thiết và thu hồi lúc không cần.
Các giải pháp ảo hóa phổ biến:
- kvm (tớ đang dùng cái này): đi kèm với kernel từ phiên bản 2.6.20. Hỗ trợ nhiều công cụ quản lý như virsh (CLI) , virt-manager (desktop GUI)... http://www.linux-kvm.org/page/Management_Tools (linux only)
- virtualbox: sản phẩm của oracle, tớ từng dùng trước khi chuyển sang KVM, rất ok, không có vấn đề gì (Windows,Linux)
- vmware: vmware có lẽ là cái tên nổi tiếng nhất trong thế giới ảo hóa. (Windows, Linux)
Vagrant: tool giúp tự động cài đặt các máy ảo http://docs.vagrantup.com/v1/docs/getting-started/why.html (hiện tại chỉ hỗ trợ virtualbox)
Bài viết này sẽ được update thêm...
cài ubuntu minimal cho máy ảo để dùng tối thiểu tài nguyên.
ReplyDeleteTóm tắt:
Khi bắt đầu cài ubuntu, sau khi chọn language xong, bấm F4, chọn Install a minimal virtual machine
Kết quả: sử dùng 1/2 đĩa cứng và 1/10 RAM so với cài bình thường.
http://erratasec.blogspot.co.uk/2013/03/ubuntu-low-mem-install-for-vms.html
Ubuntu nào cũng thế hay Ubuntu Server
ReplyDeletetrong bài tut là server
Deletecòn desktop thì ... lâu lắm rồi không cài máy :D
KVM trên Linux, phiên bản tớ đang dùng là 1.0:
ReplyDeleteroot@lappy: ~ () # kvm --version
QEMU emulator version 1.0 (qemu-kvm-1.0), Copyright (c) 2003-2008 Fabrice Bellard
hỗ trợ các máy ảo linux ngon lành.
Vừa thử nghiệm cài freebsd9 thì IO rất thấp, chạy gần 2 tiếng mầ không xong (trong khi cài freebsd9 trên máy thật mất có vài phút).
Giải pháp tình thế nếu cài freebsd9 là dùng virtualbox
Cài virtualbox thực hiện theo tut ở đây:
https://www.virtualbox.org/wiki/Linux_Downloads
Để cài freebsd8 trên KVM, dùng câu lệnh sau sẽ cho tốc độ chấp nhận được:
Deletevirt-install -n bsd83 -r 678 --disk /var/lib/libvirt/bsd83.img,size=8 --cdrom /tmp/FreeBSD-8.3-RELEASE-amd64-disc1.iso --accelerate --os-type unix --os-variant freebsd8 -v
(CÓ các option: --accelerate, --os-type unix , --os-variant freebsd8, -v)
đến thời điểm này có thể kết luận việc chạy máy ảo freebsd trên KVM gặp phải vấn đề rất tệ. IO rất kém (write <1MB/s)
DeleteTest trên host Ubuntu 12.04 kvm 1.0
có thể xem thêm ở đây:
http://www.slideshare.net/TakeshiHasegawa1/runningfreebsdonlinuxkvm
Giải pháp là dùng Virtualbox!
khi chạy 1 máy guest trên VirtuaBox mà bị lỗi này (xem ở syslog)
ReplyDeleteGeneral Protection Fault 0000 [1] SMP
là do bạn đang dùng kvm.
modprobe -r kvm
modprobe -r intel_kvm
là xong
để chạy máy ảo 64 bits:
Delete- cần bật chế độ VT-x/ AMD-V trong BIOS lên.
- Lúc tạo máy ảo mới phải chọn loại OS là 64bits
- Với FreeBSD, phải chọn Settings -> System -> Đánh dấu vào IO APCI