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

Cài đặt và cấu hình KVM Hypervisor trên CentOS / RHEL

Trong bài viết này, chúng tôi sẽ xem xét cách cài đặt và định cấu hình KVM hypervisor trên máy chủ chạy Linux RHEL hoặc CentOS. Chúng tôi sẽ hướng dẫn cách tạo một máy ảo trong KVM, thay đổi cài đặt của nó và cài đặt hệ điều hành khách. Chúng tôi cũng sẽ mô tả một số lệnh điển hình để quản lý một máy ảo.

KVM (Máy ảo dựa trên hạt nhân) là một trình siêu giám sát Linux sử dụng công nghệ ảo hóa phần cứng Intel VT- hoặc AMD SVM. Sử dụng KVM, bạn có thể tạo các máy ảo biệt lập với phần cứng ảo của riêng chúng:bộ điều hợp mạng, đĩa, thẻ đồ họa hoặc các thiết bị khác. Bạn có thể cài đặt bất kỳ hệ điều hành khách nào trên máy ảo (không chỉ Linux).

Cách cài đặt KVM trên CentOS / RHEL?

Khi bạn định cấu hình KVM trên máy chủ của mình, bạn nên bắt đầu với việc kiểm tra CPU. Bạn phải đảm bảo rằng CPU được cài đặt trên máy chủ của bạn có hỗ trợ ảo hóa phần cứng hay không. Chạy lệnh sau trong bảng điều khiển máy chủ của bạn:

# cat /proc/cpuinfo | egrep "(vmx|svm)"

Nếu bộ xử lý của bạn hỗ trợ VT-x , bạn sẽ thấy một kết quả như thế này:

Cài đặt và cấu hình KVM Hypervisor trên CentOS / RHEL

Nếu lệnh không trả về kết quả nào, nhưng bạn biết rằng CPU của mình hỗ trợ ảo hóa, hãy đảm bảo rằng tùy chọn này không bị tắt trong máy chủ BIOS . Tìm kiếm Công nghệ ảo hóa Intel hoặc CHẾ ĐỘ SVM tùy chọn.

Máy chủ của tôi hỗ trợ VT-x và nó đã được kích hoạt, vì vậy chúng tôi có thể cài đặt các gói cần thiết trên CentOS / RHEL bằng yum / dnf:

# yum install libvirt libvirt-python libguestfs-tools qemu-kvm virt-install –y

  • qemu-kvm - trình siêu giám sát KVM
  • váy ngắn - thư viện quản lý ảo hóa
  • cài đặt ảo - Các công cụ CLI để quản lý máy ảo KVM

Rất nhiều gói sẽ được cài đặt trên máy chủ Linux của bạn. Đảm bảo rằng không có lỗi nào xảy ra trong quá trình cài đặt.

Sau đó, thêm libvirtd dịch vụ khởi động và chạy nó :

# systemctl enable libvirtd
# systemctl start libvirtd

Cài đặt và cấu hình KVM Hypervisor trên CentOS / RHEL

Đảm bảo rằng kvm_intel kvm kernel mô-đun đã được tải:

# lsmod | grep kvm

kvm_intel 188688 0
kvm 636931 1 kvm_intel
irqbypass 13503 1 kvm

Nếu lệnh không trả về kết quả nào, hãy khởi động lại máy chủ của bạn và kiểm tra lại.

Tạo và định cấu hình mạng cầu nối cho KVM

Sau đó, tạo thư mục để lưu trữ đĩa máy ảo và ảnh ISO trong:

# mkdir -p /vz/{disk,iso}

Để các máy ảo của bạn có quyền truy cập Internet, bạn phải định cấu hình mạng bằng cầu nối . Để làm điều đó, bạn sẽ cần bridge-utils . Đảm bảo nếu nó được cài đặt trên máy chủ Linux của bạn bằng lệnh sau:

# rpm -qa | grep bridge-utils

Cài đặt nó nếu cần:

# yum install bridge-utils -y

Sau khi cài đặt gói, virbr0 giao diện mạng xuất hiện trong hệ điều hành:

# ip a

Cài đặt và cấu hình KVM Hypervisor trên CentOS / RHEL

Để tạo cầu nối , bạn phải thiết lập tệp cấu hình của giao diện mạng máy chủ của mình:

# cp /etc/sysconfig/network-scripts/ifcfg-enp1s0f0 /etc/sysconfig/network-scripts/ifcfg-enp1s0f0_bak - sao lưu tệp
# nano /etc/sysconfig/network-scripts/ifcfg-enp1s0f0 - mở nó để chỉnh sửa

Xóa nội dung tệp và thay thế bằng nội dung sau:

DEVICE="enp1s0f0"
ONBOOT="yes"
BRIDGE=br0

Trong trường hợp của bạn, tên giao diện có thể khác (lấy tên bằng cách sử dụng ip a lệnh).

Sau đó, tạo một tệp:

# nano /etc/sysconfig/network-scripts/ifcfg-br0
chứa cấu hình sau:

DEVICE="br0"
TYPE=BRIDGE
ONBOOT=yes
BOOTPROTO=static
IPADDR="IP_address_of_the_server"
NETMASK="255.255.255.0"
GATEWAY="Default_gateway"
DNS1="8.8.8.8"
DNS2="8.8.4.4"

Bạn phải chỉ định địa chỉ IP máy chủ và cổng mặc định của mình. Sau khi bạn đã chỉnh sửa tệp cấu hình giao diện mạng, hãy khởi động lại mạng:

# service network restart

Nếu sau khi khởi động lại mạng, bạn không thể truy cập máy chủ của mình, hãy thử khởi động lại máy chủ. Đôi khi nó là cần thiết để cấu hình cầu một cách chính xác.

Để xem trạng thái cầu, hãy sử dụng lệnh sau:

# brctl show

bridge name bridge id STP enabled interfaces
br0 8000.ac1f6b654321 no enp1s0f0
virbr0 8000.525400abcdef1 yes virbr0-nic

Ở bước cuối cùng, hãy định cấu hình chuyển tiếp lưu lượng mạng:

# echo -e "net.ipv4.ip_forward=1" >> /etc/sysctl.conf && sysctl -p

Sau đó, khởi động lại libvirtd :

# service libvirtd restart

Cấu hình mạng KVM cơ bản đã kết thúc và bạn có thể tạo một máy ảo.

Tạo Máy ảo trong KVM

Trước khi tạo máy ảo, tôi đã tải hình ảnh CentOS 8 từ máy nhân bản chính thức xuống / vz / iso :

# cd /vz/iso && wget https://mirror.imt-systems.com/centos/8.3.2011/isos/x86_64/CentOS-8.3.2011-x86_64-dvd1.iso

Để tạo một máy ảo KVM mới, hãy chạy như sau:

virt-install -n test-centosvm \
--noautoconsole \
--network=bridge:br0 \
--ram 2048 --arch=x86_64 \
--vcpus=4 --cpu host --check-cpu \
--disk path=/vz/disk/test-centosvm.img,size=32 \
--cdrom /vz/iso/CentOS-8.3.2011-x86_64-dvd1.iso \
--graphics vnc,listen=IP,password=p@sswdr0w1 \
--os-type linux --os-variant=rhel7 --boot cdrom,hd,menu=on

  • test-centosvm - tên máy ảo
  • noautoconsole - sau khi tạo VM, bạn sẽ không tự động kết nối với bảng điều khiển VM
  • network - một loại mạng (trong trường hợp của tôi là cầu nối);
  • ram - dung lượng RAM trong máy ảo;
  • vcpus - số lượng lõi CPU (cấu hình vCPU cho một máy ảo)
  • disk - đĩa ảo, đường dẫn - đường dẫn đến đĩa, kích thước - kích thước của đĩa (bạn có thể mở rộng / thu nhỏ nó sau này)
  • cdrom - một CDROM ảo, ảnh ISO để cài đặt hệ điều hành mạnh mẽ được gắn vào;
  • graphics - các tham số để kết nối với máy ảo bằng bảng điều khiển đồ họa. Chúng tôi sẽ sử dụng VNC để kết nối với nó, vì vậy, để lắng nghe, hãy chỉ định địa chỉ IP của máy chủ KVM, nơi bạn đã tạo VM và mật khẩu để kết nối với bảng điều khiển máy ảo

Để làm cho máy ảo khởi động tự động, hãy chạy:

# virsh autostart test-centosvm

Cách kết nối với máy ảo KVM bằng VNC và cài đặt hệ điều hành?

Để kết nối với máy ảo KVM bằng VNC, bạn cần tìm cổng mà nó đang chạy:
# virsh vncdisplay test-centovms

IP:0

0 có nghĩa là số cổng để kết nối bằng VNC là 5900. Nếu bạn nhận được giá trị khác, chỉ cần thêm số mà lệnh đã trả về 5900.

Để kết nối với máy chủ sử dụng VNC, tôi đang sử dụng TightVNC . Chạy nó và chỉ định địa chỉ IP của máy chủ của bạn và cổng VNC mà chúng tôi đã nhận trước đó (với dấu hai chấm làm dấu phân tách).

Cài đặt và cấu hình KVM Hypervisor trên CentOS / RHEL

Nhấp vào Kết nối và nhập mật khẩu bạn đã đặt khi tạo KVM VM. Nếu bạn đã thực hiện đúng, bảng điều khiển máy chủ sẽ xuất hiện, trong đó cài đặt CentOS (hoặc một hệ điều hành khách khác, hình ảnh mà bạn đã gắn kết) đang chạy.

Cài đặt và cấu hình KVM Hypervisor trên CentOS / RHEL

Nếu tường lửa được bật trên máy chủ của bạn, hãy mở các cổng 5900-5910 cho VNC trong firewalld / iptables (đủ mười cổng). Sau khi cài đặt hệ điều hành khách trên máy ảo, hãy khởi động máy ảo từ bảng điều khiển máy chủ:

Cài đặt và cấu hình KVM Hypervisor trên CentOS / RHEL

Để tắt máy ảo KVM, hãy sử dụng lệnh sau:

# virsh shutdown test-centosvm

Để hiển thị danh sách tất cả các máy ảo KVM đã đăng ký:

# virsh list --all

Tìm hiểu thêm về cách quản lý máy ảo KVM từ bảng điều khiển máy chủ bằng virsh (cách thêm RAM, CPU, đĩa hoặc giao diện mạng). Nếu bạn thích giao diện đồ họa, bạn có thể sử dụng trình quản lý ảo KVM GUI.

Cấu hình máy chủ KVM cơ bản đã kết thúc và một máy ảo đã được tạo. Bạn có thể tạo bất kỳ số lượng máy ảo nào trong KVM, điều đó chỉ phụ thuộc vào tài nguyên máy chủ và nhu cầu của bạn.