|
||||||||
|
||||||||
|
|
Công Cụ | Xếp Bài |
06-03-2014, 03:19 PM | #1 |
Guest
Trả Lời: n/a
|
Hướng dẫn cài đặt và sử dụng KVM trên máy chủ CentOS 6.0
Hướng dẫn cài đặt và sử dụng KVM trên máy chủ CentOS 6.0 Từ lâu, KVM (Kernel-based Virtual Machine) được rất nhiều người biết đến là một cơ sở hạ tầng ảo hóa cho nhân Linux dành cho những CPU hỗ trợ công nghệ ảo hóa như Intel VT hoặc AMD-V... Trước đây chúng tôi đã từng hướng dẫn các bạn ảo hóa với KVM trên nền tảng Fedora 12 Server. Hôm nay chúng tôi sẽ tiếp tục giúp các bạn có thể cài đặt, sử dụng KVM để khởi tạo và chạy các máy ảo trên máy chủ CentOS 6.0. 1. Một số lưu ý Phần minh họa sau chúng tôi sử dụng máy chủ CentOS 6.0 với hostname server1.example.com, địa chỉ IP của KVM host là 192.168.0.100. SELinux cần được vô hiệu hóa trên hệ thống CentOS 6.0 để có thể làm việc tốt nhất (nếu bạn để SELinux ở chế độ on nó vẫn hoạt động nhưng chúng tôi không chắc chắn về những sự cố có thể xảy ra). vi /etc/selinux/config Set SELINUX=disabled # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of these two values: # targeted - Targeted processes are protected, # mls - Multi Level Security protection. SELINUXTYPE=targeted Sau đó khởi động lại: reboot Ngoài ra chúng ta cần hệ thống desktop được cài đặt virt-manager để kết nối tới giao diện điều khiển đồ họa của máy ảo mà chúng ta sẽ tạo. Ở đây sử dụng Fedora 15. 2. Cài đặt KVM Trước khi tiến hành, bạn cần xác định xem CPU của mình có hỗ trợ ảo hóa phần cứng hay không: egrep '(vmx|svm)' --color=always /proc/cpuinfo Nếu màn hình hiển thị thông tin dạng như sau: [root@server1 ~]# egrep '(vmx|svm)' --color=always /proc/cpuinfo flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy misalignsse flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy misalignsse [root@server1 ~]# Như vậy là CPU của bạn có hỗ trợ, ngược lại nếu không hiển thị gì thì bạn hãy dừng lại ở đây. Bây giờ chúng ta import các key GPG cho các gói phần mềm: rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY* Tiến hành cài đặt KVM và virtinst (một công cụ để tạo máy ảo): yum install kvm libvirt python-virtinst qemu-kvm Sau đó khởi động libvirt daemon: /etc/init.d/libvirtd start Kiểm tra xem KVM đã cài đặt thành công hay chưa, chạy lệnh: virsh -c qemu:///system list Nếu màn hình hiển thị thông tin sau đây chứng tỏ bạn đã thành công: [root@server1 ~]# virsh -c qemu:///system list Id Name State ---------------------------------- [root@server1 ~]# Ngược lại, bạn hãy thực hiện thêm lần nữa. Tiếp theo chúng ta cần thiết lập một cầu nối cho mạng trên máy chủ (network bridge) để có thể truy cập máy ảo từ xa bằng các host khác nhau như hệ thống vật lý trong mạng. Để làm điều này, cài đặt gói bridge-utils: yum install bridge-utils Và cấu hình một bridge. Tạo file /etc/sysconfig/network-scripts/ifcfg-br0 (hãy sử dụng các giá trị IPADDR, PREFIX, GATEWAY, DNS1 và DNS2 từ tập tin /etc/sysconfig/network-scripts/ifcfg-eth0); bạn cũng cần chắc chắn rằng mình đang dùng giá trị TYPE=Bridge, không phải TYPE=Ethernet: vi /etc/sysconfig/network-scripts/ifcfg-br0 DEVICE="br0" NM_CONTROLLED="yes" ONBOOT=yes TYPE=Bridge BOOTPROTO=none IPADDR=192.168.0.100 PREFIX=24 GATEWAY=192.168.0.1 DNS1=8.8.8.8 DNS2=8.8.4.4 DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="System br0" Chỉnh sửa /etc/sysconfig/network-scripts/ifcfg-eth0 như sau (các giá trị BOOTPROTO, IPADDR, PREFIX, GATEWAY, DNS1, DNS2 để ở dạng chú thích và thêm dòng BRIDGE=br0): vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" NM_CONTROLLED="yes" ONBOOT=yes HWADDR=00:1E:90:F3:F0:02 TYPE=Ethernet #BOOTPROTO=none #IPADDR=192.168.0.100 #PREFIX=24 #GATEWAY=192.168.0.1 #DNS1=8.8.8.8 #DNS2=8.8.4.4 DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="System eth0" UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 BRIDGE=br0 Khởi động lại mạng: /etc/init.d/network restart Và chạy lệnh: ifconfig Network bridge (br0) sẽ hiển thị như sau: [root@server1 ~]# ifconfig br0 Link encap:Ethernet HWaddr 00:1E:90:F3:F0:02 inet addr:192.168.0.100 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::21e:90ff:fef3:f002/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:103 errors:0 dropped:0 overruns:0 frame:0 TX packets:79 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:7434 (7.2 KiB) TX bytes:21398 (20.8 KiB) eth0 Link encap:Ethernet HWaddr 00:1E:90:F3:F0:02 inet6 addr: fe80::21e:90ff:fef3:f002/64 Scope:Link UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1 RX packets:19511 errors:0 dropped:0 overruns:0 frame:0 TX packets:11592 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:25980124 (24.7 MiB) TX bytes:1104371 (1.0 MiB) Interrupt:28 Base address:0x6000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:7 errors:0 dropped:0 overruns:0 frame:0 TX packets:7 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:3608 (3.5 KiB) TX bytes:3608 (3.5 KiB) virbr0 Link encap:Ethernet HWaddr 6A:12:69:18:2B:05 inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) [root@server1 ~]# 3. Cài đặt virt-viewer hoặc virt-manager trên Fedora 15 Desktop Tiếp theo chúng ta cần một phương tiện để kết nối tới giao diện điều khiển đồ họa của các guest. Ở đây sử dụng virt-manager cho Fedora 15. Bắt đầu bằng sử dụng tài khoản root su Và chạy: yum install virt-manager libvirt qemu-system-x86 openssh-askpass Sau đó cài đặt virt-manager (trong trường hợp bạn đang dùng Ubuntu 11.04). sudo apt-get install virt-manager 4. Tạo một Debian Squeeze Guest từ dòng lệnh Bây giờ quay trở lại CentOS 6.0 KVM host. Và xem: man virt-install Để tìm hiểu cách sử dụng virt-install. Chúng ta sẽ tạo một máy ảo dựa trên hình ảnh trong thư mục /var/lib/libvirt/images/ đã được tạo ra khi cài đặt KVM ở phần 2. Để tạo một Debian Squeeze guest (trong chế độ bridging) với tên vm10, dung lượng RAM 512MB, hai CPU ảo và file ảnh đĩa cứng /var/lib/libvirt/images/vm10.img (kích thước 12GB). Cho đĩa CD Debian Squeeze Netinstall vào ổ CD và chạy: virt-install --connect qemu:///system -n vm10 -r 512 --vcpus=2 --disk path=/var/lib/libvirt/images/vm10.img,size=12 -c /dev/cdrom --vnc --noautoconsole --os-type linux --os-variant debiansqueeze --accelerate --network=bridge:br0 --hvm Tất nhiên, bạn cũng có thể tạo file ảnh ISO của Debian Squeeze Netinstall CD (khuyến cáo nên tạo trong /var/lib/libvirt/images/ bởi khi tạo máy ảo thông qua virt-manager từ Fedora sẽ tìm kiếm file ISO trong thư mục này). dd if=/dev/cdrom of=/var/lib/libvirt/images/debian-6.0.2.1-amd64-netinst.iso Và sử dụng file ISO đó bằng lệnh virt-install: virt-install --connect qemu:///system -n vm10 -r 512 --vcpus=2 --disk path=/var/lib/libvirt/images/vm10.img,size=12 -c /var/lib/libvirt/images/debian-6.0.2.1-amd64-netinst.iso --vnc --noautoconsole --os-type linux --os-variant debiansqueeze --accelerate --network=bridge:br0 --hvm Kết quả sẽ hiển thị như sau: [root@server1 ~]# virt-install --connect qemu:///system -n vm10 -r 512 --vcpus=2 --disk path=/var/lib/libvirt/images/vm10.img,size=12 -c /var/lib/libvirt/images/debian-6.0.2.1-amd64-netinst.iso --vnc --noautoconsole --os-type linux --os-variant debiansqueeze --accelerate --network=bridge:br0 --hvm Starting install... Allocating 'vm10.img' | 12 GB 00:00 Creating domain... | 0 B 00:00 Domain installation still in progress. You can reconnect to the console to complete the installation process. [root@server1 ~]# 5. Kết nối tới Guest KVM guest sẽ khởi động từ Debian Squeeze Netinstall và bắt đầu cài đặt Debian – đó là lý do tại sao bạn cần kết nối tới giao diện điều khiển đồ họa của guest. Bạn có thể làm điều này với virt-manager trên Fedora 15 desktop. Vào Applications > System Tools > Virtual Machine Manager để khởi động virt-manager: Khi virt-manager được chạy lần đầu tiên, bạn sẽ nhận được thông báo lỗi “Unable to open a connection to the libvirt management daemon.” Hãy yên tâm và bỏ qua nó bởi chúng ta không muốn kết nối tới libvirt daemon cục bộ. Kích Close. Vào File > Add Connection để kết nối vào CentOS 6.0 KVM host: Tại mục Hypervisor chọn QEMU/KVM, đánh dấu tích vào Connect to remote host. Kích vào nút mũi tên cạnh mục Method để mở một danh sách mới, chọn SSH, phần Username bạn nhập root, phần hostname nhập server1.example.com hoặc địa chỉ IP 192.168.0.100 của CentOS 6.0 KVM host. Cuối cùng ấn Connect. Nếu đây là lần đầu tiên kết nối tới máy chủ KVM từ xa, bạn cần gõ yes và ấn OK: Sau đó nhập mật khẩu root của CentOS 6.0 KVM host: Bạn sẽ thấy vm10 đang chạy. Đánh dấu vào guest đó và kích nút Open để mở giao diện điều khiển: Nhập lại mật khẩu root cho KVM host lần nữa: Bây giờ bạn sẽ được kết nối với giao diện điều khiển đồ họa của guest và xem trình cài đặt Debian: Tiến hành cài đặt Debian như cách thông thường trên một hệ thống vật lý. Lưu ý ở phần cuối của quá trình cài đặt, Debian guest cần khởi động lại. Sau đó guest tự động dừng hoạt động, bạn cần khởi động lại nó. Đối với virt-manager hoặc CentOS 6.0 KVM host ta dùng lệnh sau: irsh --connect qemu:///system start vm10 quit Như vậy bạn có thể kết nối tới guest lần nữa với virt-manager và cấu hình cho nó. Nếu bạn cài đặt OpenSSH (gói openssh-server) trong guest, bạn có thể kết nối tới nó qua SSH client (giống như PuTTY). Tham khảo: http://www.quantrimang.com.vn/ao-hoa...ntos-6-0-83251 Theo Đ.Hải - QuanTriMang |
|
|