Quay lại
2025/03/27
6. Cài đặt phân vùng cứng KVM trên Oracle Linux
Trong bài viết trước, chúng tôi đã giải thích về “khái niệm giấy phép Oracle” và “Chính sách phân vùng” cho các môi trường máy chủ ảo. Bây giờ bạn nên biết rằng có nhiều điều cần thận trọng khi sử dụng các sản phẩm Oracle trong môi trường máy chủ ảo.
Chúng tôi cũng đã giải thích rằng tính năng Phân vùng Cứng của Oracle Linux KVM cho phép bạn tối ưu hóa chi phí cấp phép cho các sản phẩm Oracle. Tuy nhiên, bạn không thể giới hạn số lượng giấy phép chỉ bằng cách sử dụng Oracle Linux, bạn cần gán một lõi CPU cụ thể cho máy ảo dưới dạng cố định (pinning).
Điều này cũng được ghi trong phần “Phân vùng cứng với Oracle Linux KVM” đã giới thiệu lần trước, nhưng thực tế là việc xây dựng nó khá khó khăn.
Do đó, trong bài viết này, chúng tôi sẽ tập trung vào các điểm cần lưu ý khi cấu hình. Tuy nhiên, bài viết này nhằm mục đích xác minh hoạt động, vì vậy nó khác với môi trường vận hành thực tế. Có nhiều điều cần xem xét, đặc biệt trong môi trường sản xuất, như tính sẵn sàng và bảo mật, nhưng trong bài viết này, chúng tôi sẽ bỏ qua các yếu tố này.
Ngoài ra, cần kiến thức về KVM để xây dựng môi trường, nhưng đó không phải là vấn đề chính, vì vậy chúng tôi chỉ đề cập ngắn gọn. Để biết thêm thông tin về Linux và KVM, hãy xem các tài liệu hướng dẫn của Oracle Linux và Red Hat Enterprise Linux ở cuối bài viết.
Yêu cầu cho phân vùng cứng
Sau khi đọc tài liệu trắng “Phân vùng cứng với Oracle Linux KVM” về Phân vùng cứng Oracle Linux, có lẽ bạn nghĩ rằng việc thực hiện phân vùng cứng bằng lệnh olvm-vmcontrol là dễ dàng?
Thực tế hoàn toàn khác. Ngoài việc sử dụng Oracle Linux KVM làm hypervisor, bạn còn cần công cụ quản lý Oracle Linux Virtualization Manager. Và việc thiết lập chúng khá khó khăn. Trong thế hệ sản phẩm ảo hóa trước đây, Oracle VM Server, bạn có thể thiết lập phân vùng cứng chỉ với một chút chỉnh sửa tệp cấu hình. Tình hình hiện tại rất khác.
Do đó, chúng tôi sẽ giải thích các yêu cầu tiên quyết.
Oracle Linux KVM và Oracle Linux Virtualization Manager
Đầu tiên, hãy xem lại các thành phần cơ bản.
Oracle Linux KVM
Oracle Linux KVM là một hypervisor sử dụng KVM được tích hợp trong nhân Oracle Linux. Bạn có thể sử dụng nhân với cả RHCK và UEK. Là hệ điều hành khách, nó hỗ trợ Ubuntu, SUSE Linux và Microsoft Windows cũng như Linux dựa trên RHEL. Lưu ý rằng không có sản phẩm nào được gọi là Oracle Linux KVM, và nó được thực hiện bằng cách tích hợp các gói ảo hóa vào Oracle Linux 7, Oracle Linux 8 và Oracle Linux 9.
Oracle Linux Virtualization Manager
Oracle Linux Virtualization Manager (OLVM) là một công cụ quản lý môi trường ảo tương đương với vCenter của VMware. Bạn có thể thực hiện các tác vụ cần thiết cho hoạt động của mình, như quản lý các máy chủ Oracle Linux KVM và máy ảo. Dưới đây, nó đôi khi được viết tắt là OLVM.
Oracle Linux Virtualization Manager dựa trên mã nguồn mở oVirt, và các công cụ quản lý dựa trên oVirt tương tự được sử dụng trong Red Hat Virtualization (RHV). Chính xác hơn, triển khai mã nguồn mở của Red Hat Virtualization là oVirt. Mỗi cái có mối quan hệ như được hiển thị trong bảng sau.
Nhà cung cấp | Công cụ quản lý KVM | Công cụ quản lý cấu hình cơ sở hạ tầng |
---|---|---|
Red Hat | Red Hat Virtualization | Red Hat Satellite |
Triển khai mã nguồn mở | oVirt | Spacewalk |
Oracle | Oracle Linux Virtualization Manager | Oracle Linux Manager |
Yêu cầu Oracle Linux Virtualization Manager
Để cố định CPU cho phân vùng cứng, Oracle Linux KVM mục tiêu phải được quản lý bởi Oracle Linux Virtualization Manager.
Điều này rất quan trọng. Oracle Linux Virtualization Manager không bắt buộc để quản lý Oracle Linux KVM. Tuy nhiên, nó cần thiết cho phân vùng cứng. Vấn đề là tùy thuộc vào việc có sử dụng Oracle Linux Virtualization Manager hay không, cách xây dựng và vận hành sẽ hoàn toàn khác nhau.
Trong Linux KVM, bạn có thể quản lý bằng công cụ GUI virt-manager hoặc CLI virsh. Bạn cũng có thể sử dụng Cockpit, một công cụ quản lý dựa trên web. Tuy nhiên, nếu bạn chuyển sang Oracle Linux Virtualization Manager, bạn sẽ không thể sử dụng bất kỳ công cụ nào trong số này. Cơ sở là Oracle Linux Virtualization Manager dựa trên web, tiếp theo là giao diện REST.
Nếu bạn chuyển sang Oracle Linux Virtualization Manager, bạn sẽ không còn có thể quản lý nó bằng virt-manager hoặc virsh.
Dưới đây là tóm tắt các yêu cầu cho phân vùng cứng.
- Máy chủ Oracle Linux KVM được quản lý bởi Oracle Linux Virtualization Manager
- olvm-vmcontrol được thiết lập trong Oracle Linux Virtualization Manager
Kiến trúc Oracle Linux Virtualization Manager
Chìa khóa để sử dụng Oracle Linux Virtualization Manager là hiểu kiến trúc. Trong cả Oracle Linux Virtualization Manager và Red Hat Virtualization, tài liệu mô tả kiến trúc được viết ở đầu danh sách tài liệu. Phần này mô tả các thành phần chính và cách cấu hình chúng.
Các thành phần chính của Oracle Linux Virtualization Manager
Oracle Linux Virtualization Manager bao gồm hai thành phần chính:
o-Virt Engine
Thành phần chính của Oracle Linux Virtualization Manager, cung cấp dịch vụ cho GUI và REST API để quản lý tài nguyên. Nó được viết bằng Java và chạy trên WildFly (trước đây là JBoss), một container Java EE tích hợp sẵn. Nó sử dụng PostgreSQL để quản lý dữ liệu.
VDSM (Virtual Desktop Server Manager)
Tác nhân cho o-Virt Engine được cài đặt trên máy chủ KVM được quản lý.
Hai phương pháp cấu hình
Có hai cách sau để cấu hình hệ thống của bạn với Oracle Linux Virtualization Manager. Để xây dựng đúng cách, bạn cần hiểu đặc điểm của từng cách. Để biết chi tiết, vui lòng tham khảo tài liệu hướng dẫn, và chúng tôi sẽ giải thích ngắn gọn ở đây.
- Self-Hosted Engine
- Stand Alone Manager
Self-Hosted Engine
Cách phổ biến nhất là chạy Oracle Linux Virtualization Manager trên một máy ảo trên máy chủ Oracle Linux KVM. Sơ đồ cho thấy cấu hình hai máy chủ, nhưng cấu hình một máy chủ có thể được sử dụng khi không yêu cầu tính sẵn sàng.
Lợi ích
- oVirt Engine chạy trên máy ảo, vì vậy cần ít hơn một máy chủ vật lý
- Dư thừa có thể dễ dàng được thêm vào oVirt Engine
Nhược điểm
- oVirt Engine chạy trên máy chủ KVM, làm giảm CPU và bộ nhớ có sẵn cho máy chủ KVM
Stand Alone Manager
Với phương pháp này, oVirt Engine chạy trên một máy chủ khác ngoài máy chủ Oracle Linux KVM được quản lý. Một máy chủ vật lý hoặc một máy ảo được lưu trữ trong một môi trường ảo khác được sử dụng.
Lợi ích
- oVirt Engine độc lập với máy chủ được quản lý, vì vậy không có tải trên máy chủ
Nhược điểm
- Để làm cho oVirt Engine dư thừa, cần cấu hình cụm sử dụng phần mềm cụm HA hoặc tương tự.
Phương pháp không được hỗ trợ
Việc cài đặt Oracle Linux Virtualization Manager trên một máy chủ Oracle Linux KVM được quản lý như hiển thị dưới đây không được hỗ trợ.
Sự khác biệt về thuật ngữ giữa tài liệu Oracle và tài liệu bên thứ ba
Khi đọc tài liệu Oracle Linux Virtualization Manager, việc dịch thuật các thuật ngữ và cách tổ chức tài liệu gây nhầm lẫn. Bảng sau so sánh những điều này.
Nguồn | Phương pháp máy ảo trên KVM | Được lưu trữ riêng biệt với KVM |
---|---|---|
Tài liệu oVirt/RHV tiếng Anh | Self-Hosted Engine | Stand Alone Manager(*1) |
Tài liệu RHV tiếng Nhật | Self-Hosted Engine | Stand Alone Manager |
Tài liệu OLVM tiếng Anh | Self-Hosted Engine | Engine(*2) |
Tài liệu OLVM tiếng Nhật | Jiko Host Engine (Self-Hosted Engine) | Engine (*2) |
*1 Trước đây, có vẻ như đôi khi nó được gọi là Stand Alone Engine thay vì Stand Alone Manager.
*2 Stand Alone Manager cũng được sử dụng ở một vài nơi, nhưng không có mô tả rõ ràng phân biệt các cấu hình. Nó cũng đôi khi được gọi là Engine
Mặc dù dựa trên bản dịch máy, phiên bản tiếng Nhật của “Self-Hosted Engine” không phải là bản dịch tốt. Ngoài ra, nó gây nhầm lẫn vì không có tên nào rõ ràng chỉ ra phương pháp “Stand Alone Manager” trong hướng dẫn bắt đầu.
Lập kế hoạch xây dựng Oracle Linux Virtualization Manager
Để xây dựng Oracle Linux Virtualization Manager, bạn cần hiểu kiến trúc Oracle Linux Virtualization Manager và các yêu cầu hệ thống.
Lựa chọn Self-Hosted Engine và Stand Alone Manager
Khi xây dựng Oracle Linux Virtualization Manager lần đầu tiên, chúng tôi khuyên bạn nên sử dụng phương pháp Stand Alone Manager như hiển thị dưới đây. Trong môi trường sản xuất, chúng tôi khuyên dùng phương pháp Self-Hosted Engine, nhưng phương pháp Stand Alone Manager dễ xây dựng hơn. Khi có ít máy chủ khả dụng, vui lòng sử dụng hệ thống Self-Hosted Engine. Bạn cũng sẽ cần một máy chủ DNS mà bạn có thể tự quản lý.
Máy chủ Oracle Linux KVM và máy chủ Oracle Linux Virtualization Manager
Điều này sẽ được mô tả như một cách tổ chức thuật ngữ. Máy chủ cài đặt Oracle Linux Virtualization Manager được gọi là máy chủ Oracle Linux Virtualization Manager (máy chủ OLVM) hoặc máy chủ engine. Máy chủ Oracle Linux KVM được quản lý bởi Oracle Linux Virtualization Manager được gọi là máy chủ Oracle Linux KVM hoặc máy chủ KVM. Trong tài liệu chính thức, có những nơi chỉ gọi máy chủ Oracle Linux Virtualization Manager là máy chủ, vì vậy hãy đánh giá từ ngữ cảnh.
Bạn có thể xây dựng môi trường xác minh với VirtualBox không?
Khi chúng tôi cố gắng xây dựng với VirtualBox, chúng tôi có thể cài đặt Oracle Linux Virtualization Manager và thêm một máy chủ KVM. Tuy nhiên, lỗi “loại CPU máy chủ không được hỗ trợ trong khả năng tương thích cụm này” đã xảy ra và không thể thực hiện thêm thao tác nào. Có thể thực hiện được với các PC hoặc môi trường ảo khác.
Để thử nghiệm, có lẽ bạn nên sử dụng các dịch vụ sau trên Oracle Cloud Infrastructure.
- Oracle Linux Virtualization Manager: Máy ảo Compute
- Máy chủ Oracle Linux KVM: Phiên bản bare metal Compute
Yêu cầu hệ thống
Yêu cầu hệ thống cho máy chủ Oracle Linux Virtualization Manager và máy chủ Oracle Linux KVM như sau.
Yêu cầu máy chủ Oracle Linux Virtualization Manager
- Oracle Linux 8.5 hoặc mới hơn cho oVirt 4.4
- CPU: 2 lõi, RAM: 4GB, Ổ cứng: 25GB (Tất cả là yêu cầu tối thiểu)
Yêu cầu máy chủ Oracle Linux KVM
- Oracle Linux 7.6 hoặc mới hơn hoặc Oracle Linux 8.5 hoặc mới hơn cho oVirt 4.4
- CPU: 2 lõi, RAM: 2GB, Ổ cứng: 60GB (Tất cả là yêu cầu tối thiểu)
Điều quan trọng ở đây là yêu cầu máy chủ OLVM và máy chủ KVM được hỗ trợ khác nhau tùy thuộc vào phiên bản Oracle Linux Virtualization Manager. Vui lòng kiểm tra “Yêu cầu và Hạn chế Khả năng Mở rộng” trong “Kiến trúc và Lập kế hoạch” của “Tài liệu Oracle Linux Virtualization Manager” cho phiên bản sẽ sử dụng.
Mẹo xây dựng Oracle Linux Virtualization Manager
Do sự phức tạp của quy trình và độ khó của tài liệu, việc xây dựng môi trường Oracle Linux Virtualization Manager gây nhầm lẫn ngay cả khi bạn có một số kinh nghiệm với Linux và KVM. Trong phần này, chúng tôi sẽ giới thiệu các mẹo để xây dựng môi trường xác minh.
Ngoài ra, ít nhất hiện tại, tài liệu Red Hat Virtualization hoàn chỉnh hơn. Các lệnh bạn chạy trong quá trình cài đặt khác nhau, nhưng luồng tổng thể và các hạn chế là giống nhau. Nên xem qua một lần.
Quy trình xây dựng Oracle Linux Virtualization Manager
Sơ đồ sau cho thấy các bước để xây dựng Oracle Linux Virtualization Manager để đạt được phân vùng cứng. Có các quy trình khác nhau cho Stand Alone Manager và Self-Hosted Engine.
Ghi chú về xây dựng máy chủ Oracle Linux
Phần này mô tả các ghi chú về xây dựng máy chủ Oracle Linux trước khi cài đặt Oracle Linux Virtualization Manager. Máy chủ Oracle Linux Virtualization Manager giống với máy chủ Oracle Linux KVM.
Loại cài đặt cần chọn
Oracle Linux được cài đặt với “cài đặt tối thiểu”. Tuy nhiên, vì các lệnh cần thiết để xác minh hoạt động có thể không được cài đặt, tốt hơn là cài đặt ít nhất các lệnh sau:
dnf install bind-utils nc tmux tree -y
Các yêu cầu khác
Các yêu cầu khác bao gồm như sau. Vui lòng lưu ý rằng có một số điều không được ghi trong tài liệu.
- Có thể phân giải tên với cả DNS xuôi và ngược. Nói cách khác, bạn cần một máy chủ khác để chạy DNS ngoài Oracle Linux Virtualization Manager hoặc máy chủ Oracle Linux
- Tường lửa phải được bật. Việc mở các cổng cần thiết được thiết lập tự động bởi công cụ cài đặt
- SELinux nên được bật
- Ngôn ngữ của máy chủ Oracle Linux Virtualization Manager phải là en_US.utf8
Ngôn ngữ của máy chủ Oracle Linux Virtualization Manager phải là en_US.utf8. Nếu trông như thế này, không có vấn đề gì.
# localectl
System Locale: LANG=en_US.utf8
VC Keymap: jp
X11 Layout: jp
Nếu ngôn ngữ không phải là en_US.utf8, chẳng hạn như en_US.UTF-8, hãy thực hiện như sau để thay đổi:
# dnf install glibc-langpack-en -y
# localectl set-locale LANG=en_US.utf8
Chọn kho lưu trữ để sử dụng
Hướng dẫn bắt đầu Oracle Linux Virtualization Manager mô tả hai loại máy chủ sau như cài đặt trước khi cài đặt.
- Đối với các máy chủ đã đăng ký ULN
- Đối với các máy chủ Yum Oracle Linux
Loại trước là quy trình khi bạn đã đăng ký Hỗ trợ Premier Oracle Linux và đang sử dụng máy chủ đã đăng ký ULN. Loại sau là quy trình máy chủ tham chiếu kho Yum công cộng (https://yum.oracle.com) với hoặc không có hợp đồng Hỗ trợ Premier. Quy trình hơi khác nhau, vì vậy hãy chọn cái phù hợp. Quy trình này giống nhau đối với các máy chủ Oracle Linux KVM.
Cách thêm khóa công khai khi thêm máy chủ KVM
Khi bạn thêm máy chủ KVM trong Oracle Linux Virtualization Manager, bạn có thể chọn phương pháp mật khẩu hoặc phương pháp khóa công khai SSH. Chúng tôi khuyên dùng phương pháp khóa công khai SSH. Lúc này, khóa công khai do cổng quản lý tạo ra sẽ được thêm vào phía máy chủ KVM.
# mkdir -p /root/.ssh
# vi /root/.ssh/authorized_keys ←Khi thêm thủ công
# cat kvmhost.pub >> /root/.ssh/authorized_keys←Khi thêm từ tệp đã lưu
# chmod 600 /root/.ssh/authorized_keys
Truy cập Oracle Linux Virtualization Manager với FQDN khác
Cổng quản lý Oracle Linux Virtualization Manager được truy cập bằng FQDN, chẳng hạn như https://olvm.sample.com/ovirt-engine. Tuy nhiên, nếu bạn truy cập bằng tên máy chủ khác vì một lý do nào đó, chẳng hạn như chuyển tiếp cổng, màn hình đăng nhập sẽ không hiển thị. Lúc đó, hãy định nghĩa một tên máy chủ thay thế trên máy chủ Oracle Linux Virtualization Manager.
Chúng tôi sẽ tạo một tệp định nghĩa.
vi /etc/ovirt-engine/engine.conf.d/99-custom-sso-setup.conf
Nội dung cần thêm như sau. Phân cách nhiều máy chủ bằng dấu cách.
SSO_ALTERNATE_ENGINE_FQDNS="localhost hostname1 hostname2"
Khởi động lại dịch vụ.
systemctl restart ovirt-engine
Bạn có thể sử dụng virsh không?
Chúng tôi đã viết rằng lệnh virsh không khả dụng trong Oracle Linux Virtualization Manager. Tuy nhiên, chế độ chỉ đọc có thể được sử dụng. Thêm -r hoặc –readonly như sau.
# virsh -r list --all
Id Name State
----------------------------------
0 o19v1 running
1 o19v2 running
# virsh -r vcpuinfo o19vm1 --pretty
VCPU: 0
CPU: 0
State: running
CPU time: 5.4s
CPU Affinity: 0-1 (out of 12)
VCPU: 1
CPU: 1
State: running
CPU time: 2.9s
CPU Affinity: 0-1 (out of 12)
Trong trường hợp có vấn đề
Nếu bạn không thể thiết lập đúng cách, ngoài việc tìm kiếm trực tuyến, hãy kiểm tra các thông tin sau:
- “Sự kiện” của Oracle Linux Virtualization Manager trong Cổng Quản trị
- Tệp nhật ký:
/var/log/ovirt-engine/engine.log
- Hỗ trợ My Oracle

Kết luận
Một khi bạn đã cấu hình Oracle Linux Virtualization Manager, hãy làm theo hướng dẫn trong tài liệu trắng Phân vùng cứng với Oracle Linux KVM để cấu hình phân vùng cứng.
Có một điều cuối cùng cần ghi nhớ. Đó là tính sẵn sàng của một máy ảo được cấu hình phân vùng cứng. Đối với các cụm được cấu hình với nhiều máy chủ Oracle Linux KVM, máy ảo có thể được di chuyển trực tiếp. Tuy nhiên, các máy ảo có CPU cố định trong phân vùng cứng không đủ điều kiện để di chuyển trực tiếp. Nếu bạn cần một mức độ sẵn sàng nào đó, bạn nên xem xét một kế hoạch khôi phục cũng tính đến giấy phép.