Trần Lê Uyên Thy
Intern
I. MÔ TẢ YÊU CẦU CỦA BÀI LAB
1. Mô tả sơ bộ
Bài thực hành Lab 9 tập trung vào việc chuẩn hóa quy trình triển khai máy ảo trên nền tảng VMware vSphere 8.0. Thay vì phải cài đặt hệ điều hành và cấu hình phần mềm thủ công từng máy ảo từ file ISO, bài lab hướng dẫn xây dựng VM Templates, Content Libraries, Guest OS Customization Specifications và quản lý vòng đời nâng cấp bản mẫu thông qua Template Versioning.
Bước 1.1: Nhân bản thành Template (Clone to Template) - Khuyên dùng khi vẫn muốn giữ VM gốc để tiếp tục sử dụng
2. TÙY BIẾN DANH TÍNH TỰ ĐỘNG (GUEST OS CUSTOMIZATION SPECIFICATIONS)
Để giải quyết bài toán chống trùng Hostname và IP khi bung máy ảo từ Template, vSphere tích hợp công cụ Guest OS Customization Specification.
Bước 2.1: Khởi tạo Customization Specification mới
3. TRIỂN KHAI MÁY ẢO TỪ TEMPLATE
Bước 3.1: Áp dụng cấu hình và tùy biến tự động
4. THƯ VIỆN NỘI DUNG (CONTENT LIBRARIES) & PHÂN LOẠI THƯ VIỆN
Content Library là giải pháp tập trung hóa dữ liệu mẫu (Templates, OVF/OVA, ISO files) cho toàn bộ trung tâm dữ liệu.
Bước 4.1: Tạo mới Local Content Library
Bước 4.2: Đưa máy ảo vào Content Library dưới dạng OVF Template
Đây là định dạng đóng gói tệp nén theo chuẩn mở, tối ưu tuyệt đối về mặt dung lượng lưu trữ và sẵn sàng phục vụ việc xuất khẩu (Export) ra ngoài môi trường vSphere.
Tiến trình xử lý ngầm của hệ thống:
Bước 4.3: Đưa máy ảo vào Content Library dưới dạng VM Template
Đây là định dạng giữ nguyên vẹn toàn bộ các tính năng độc quyền của VMware, hỗ trợ đầy đủ cơ chế quản lý vòng đời và kiểm soát phiên bản (Versioning).
Thao tác thực hiện:
Đặc điểm & Khả năng hỗ trợ:
Bước 4.4: Triển khai từ một VM Template trong Content Library
5. SỬ DỤNG SUBSCRIBED CONTENT LIBRARIES (MÔ HÌNH PUBLISHER - SUBSCRIBER)
Trong các mô hình doanh nghiệp có nhiều trung tâm dữ liệu phân tán (Multi-site) hoặc nhiều máy chủ vCenter Server độc lập, việc sao chép thủ công các file mẫu .iso, .ova, VM Templates qua USB hay FTP vừa tốn thời gian vừa dễ gây lệch chuẩn phiên bản.
Tính năng Subscribed Content Library trong VMware vSphere hoạt động theo mô hình Publisher - Subscriber:
Bước 5.2: Tạo Thư viện đăng ký (Subscribed Content Library) tại vCenter đích
Bước 5.3: Tạo Subscription cho VM Templates
Bước 5.4: Deploy VM từ Subscribed Library
Do hạn chế tài nguyên nên em viết phần 2 ở bài khác: https://securityzone.vn/t/lab-9-par...tent-libraries-va-versioning-templates.13601/
1. Mô tả sơ bộ
Bài thực hành Lab 9 tập trung vào việc chuẩn hóa quy trình triển khai máy ảo trên nền tảng VMware vSphere 8.0. Thay vì phải cài đặt hệ điều hành và cấu hình phần mềm thủ công từng máy ảo từ file ISO, bài lab hướng dẫn xây dựng VM Templates, Content Libraries, Guest OS Customization Specifications và quản lý vòng đời nâng cấp bản mẫu thông qua Template Versioning.
2. Vấn đề kỹ thuật cần giải quyết
- Sự chậm trễ và lãng phí thời gian khi cài đặt thủ công: Việc cài đặt từng máy ảo từ ISO tốn hàng giờ đồng hồ cho các bước cấu hình OS, cập nhật bản vá (security patches) và nạp VMware Tools. Cần cơ chế nhân bản nhanh từ một máy mẫu chuẩn đã được "đóng băng" cấu hình (Golden Image).
- Xung đột định danh mạng khi nhân bản máy ảo (Identity Duplication): Nếu chỉ nhân bản thông thường một máy ảo đang chạy, máy ảo mới sinh ra sẽ mang trùng Hostname, trùng IP và trùng mã định danh bảo mật SID (trên Windows) hoặc Machine-ID / SSH Host Keys (trên Linux). Điều này dẫn đến sự cố xung đột IP mạng, lỗi xác thực Active Directory và đứt gãy dịch vụ.
- Phân tán và khó khăn khi chia sẻ tài nguyên mẫu giữa nhiều site: Các VM Template truyền thống chỉ nằm cục bộ trên một Datastore/vCenter nhất định. Doanh nghiệp có nhiều văn phòng chi nhánh hoặc nhiều cụm Datacenter không thể chia sẻ trực tiếp template này nếu không có giải pháp thư viện nội dung tập trung.
- Bài toán cập nhật bản vá cho Template (Template Lifecycle & Versioning): Một khi máy ảo đã chuyển thành Template truyền thống (.vmtx), nó bị khóa hoàn toàn và không thể bật nguồn (Power On) để cài thêm phần mềm hay vá lỗi. Thao tác chuyển đổi qua lại giữa VM và Template rất thủ công, dễ gây nhầm lẫn phiên bản. Cần áp dụng cơ chế Template Versioning của vSphere 8.x với tính năng Check-Out / Check-In.
II. GIẢI PHÁP VÀ TRIỂN KHAI THỰC TẾ
1. TẠO VÀ QUẢN LÝ VM TEMPLATE TRUYỀN THỐNGBước 1.1: Nhân bản thành Template (Clone to Template) - Khuyên dùng khi vẫn muốn giữ VM gốc để tiếp tục sử dụng
- Nhấp chuột phải vào Ubuntu-Lab -> chọn Clone -> chọn Clone to Template...
- Khai báo tên Template mới: chọn folder lưu trữ, chọn host tính toán và chọn Datastore.
- Bấm Finish. Hệ thống sẽ chạy tiến trình sao chép toàn bộ đĩa cứng .vmdk sang một thư mục mới độc lập.
2. TÙY BIẾN DANH TÍNH TỰ ĐỘNG (GUEST OS CUSTOMIZATION SPECIFICATIONS)
Để giải quyết bài toán chống trùng Hostname và IP khi bung máy ảo từ Template, vSphere tích hợp công cụ Guest OS Customization Specification.
Bước 2.1: Khởi tạo Customization Specification mới
- Tại menu chính bên góc trái của vSphere Client, chọn mục Policies and Profiles.
- Trong danh mục bên trái, chọn Customization Specification Manager.
- Nhấp vào nút + NEW để mở trình hướng dẫn tạo cấu hình tùy biến.
Bước 2.2: Thiết lập thông số định danh hệ điều hành
- Name and OS:
- Name: Nhập Ubuntu-Custom-Spec.
- Target guest OS: Chọn Linux.
- Bấm NEXT.
- Computer Name:
- Tùy chọn Use the virtual machine name: Cho phép hệ điều hành tự động lấy tên máy ảo đặt trên vCenter làm Hostname bên trong Linux, bảo đảm không bao giờ bị trùng tên mạng.
- Domain name: Nhập tên miền nội bộ uyenthy.local.
- Bấm NEXT.
- Time Zone: Chọn múi giờ chuẩn của hệ thống.
- Network:
- Chọn card mạng NIC 1.
- DNS: Khai báo Primary DNS là máy Windows Server 10.30.194.12.
- Ready to complete: Rà soát lại toàn bộ thông tin -> bấm FINISH. Cấu hình mẫu này được lưu trữ trong vCenter để tái sử dụng vĩnh viễn.
3. TRIỂN KHAI MÁY ẢO TỪ TEMPLATE
Bước 3.1: Áp dụng cấu hình và tùy biến tự động
- Chuyển sang góc nhìn VMs and Templates.
- Nhấp chuột phải vào template Ubuntu-Template -> chọn New VM from This Template....
- Select a name and folder:
- Virtual machine name: Nhập ubuntu-VM1.
- Location: Chọn thư mục Lab-UT.
- Select a compute resource: Chọn host esxi.uyenthy.local.
- Select storage: Chọn Datastore.
- Select clone options:
- Tích chọn ô: Customize the operating system.
- Bấm NEXT.
- Customize guest OS:
- Bảng danh sách các cấu hình tùy biến hiện ra, chọn đúng bản mẫu Linux-Custom-Spec vừa tạo ở Phần 2.
- Bấm NEXT.
- Ready to complete: Bấm FINISH.
- Theo dõi bảng Recent Tasks: Quá trình Clone virtual machine diễn ra ngầm.
- Kiểm tra xác nhận các tuỳ chỉnh đã được áp dụng: hostname, địa chỉ IP,…
- Sau khi máy ảo bật nguồn:
- VMware Tools sẽ phối hợp cùng dịch vụ Cloud-Init/Perl bên trong OS khách nạp cấu hình tùy biến.
- Tạo mới SSH Host Keys và nhận đúng IP cấu hình mà không hề có sự can thiệp thủ công của con người
4. THƯ VIỆN NỘI DUNG (CONTENT LIBRARIES) & PHÂN LOẠI THƯ VIỆN
Content Library là giải pháp tập trung hóa dữ liệu mẫu (Templates, OVF/OVA, ISO files) cho toàn bộ trung tâm dữ liệu.
Bước 4.1: Tạo mới Local Content Library
- Mở menu chính của vSphere Client -> chọn Content Libraries.
- Bấm vào nút CREATE.
- Name and location:
- Name: Nhập Lab-Local-Library.
- vCenter Server: Chọn vcenter.uyenthy.local.
- Bấm NEXT.
- Configure content library (Chọn loại thư viện):
- Tích chọn Local content library.
- Tùy chọn xuất bản (Publishing): Nếu muốn các chi nhánh hoặc các vCenter khác đồng bộ được kho này, tích chọn Enable publishing (sẽ sinh ra một đường link Subscribed URL). Trong bài lab này tạm thời để nội bộ.
- Bấm NEXT.
- Add storage:
- Chọn Datastore lưu trữ các file của thư viện: Chọn Datastore dùng chung.
- Bấm NEXT.
- Ready to complete: Bấm FINISH. Thư viện nội dung mới được khởi tạo thành công.
Bước 4.2: Đưa máy ảo vào Content Library dưới dạng OVF Template
Đây là định dạng đóng gói tệp nén theo chuẩn mở, tối ưu tuyệt đối về mặt dung lượng lưu trữ và sẵn sàng phục vụ việc xuất khẩu (Export) ra ngoài môi trường vSphere.
- Quay lại view VMs and Templates.
- Nhấp chuột phải vào template Ubuntu-Template -> chọn Clone -> chọn Clone to Template in Library...
- Clone options: Tích chọn vào ô OVF template.
- Template details:
- Template name: Đặt tên nhận diện là Ubuntu-OVF-Template.
- Select a library: Chọn thư viện Lab-Local-Library.
- Bấm NEXT.
- Ready to complete: Rà soát lại các mục -> bấm FINISH.
Tiến trình xử lý ngầm của hệ thống:
- vCenter gửi lệnh cho host ESXi thực hiện chuyển đổi định dạng đĩa ảo .vmdk thông thường sang định dạng nén tối ưu (Stream-optimized disk format).
- Đóng gói toàn bộ cấu hình máy ảo thành một file đặc tả XML duy nhất mang đuôi .ovf, kèm theo file băm kiểm tra tính toàn vẹn .mf (Manifest) và các file dữ liệu .vmdk.
- Ghi trực tiếp các file này vào thư mục cấu trúc của Content Library trên Datastore.
Bước 4.3: Đưa máy ảo vào Content Library dưới dạng VM Template
Đây là định dạng giữ nguyên vẹn toàn bộ các tính năng độc quyền của VMware, hỗ trợ đầy đủ cơ chế quản lý vòng đời và kiểm soát phiên bản (Versioning).
Thao tác thực hiện:
- Tại cây Inventory, chuyển sang góc nhìn VMs and Templates.
- Tìm đến máy ảo hoặc template nguồn.
- Nhấp chuột phải vào máy ảo -> chọn Clone -> chọn Clone to Template in Library....
- Trong cửa sổ wizard Clone to Template in Library:
- Clone options: Tích chọn ô VM Template (không chọn OVF template).
- Template details:
- Template name: Đặt tên nhận diện là Ubuntu-VM-Template.
- Select a library: Chọn thư viện vừa tạo Lab-Local-Library.
- Bấm NEXT.
- Select a compute resource: Chọn máy chủ thực thi esxi.uyenthy.local -> bấm NEXT.
- Select storage: Chọn Datastore đích -> bấm NEXT.
- Ready to complete: Bấm FINISH.
Đặc điểm & Khả năng hỗ trợ:
- File lưu trên Datastore vẫn là cấu trúc thư mục vSphere chuẩn (.vmtx, .vmdk).
- Hỗ trợ tính năng Versioning: Cho phép sử dụng nút CHECK OUT / CHECK IN trực tiếp trong Content Library để bảo trì, cài thêm phần mềm và theo dõi lịch sử thay đổi phiên bản.
Bước 4.4: Triển khai từ một VM Template trong Content Library
- Nhấp chọn thư viện Lab-Local-Library -> chuyển sang tab Templates.
- Nhấp chuột phải vào template Ubuntu-VM-Template -> chọn New VM from This Template...
- Cấu hình thông số triển khai qua Wizard:
- Select a name and folder:
- Virtual machine name: Đặt tên cho máy ảo mới
- Select a location: Chọn thư mục quản lý máy ảo -> bấm NEXT.
- Select a compute resource:
- Chọn máy chủ ESXi chịu trách nhiệm cấp phát CPU/RAM: Chọn esxi.uyenthy.local.
- Đảm bảo phần Compatibility checks báo trạng thái Compatibility checks succeeded -> bấm NEXT.
- Select storage:
- Chọn Datastore dùng chung.
- Select clone options:
- Tích chọn: Customize the operating system (nếu muốn áp dụng bản mẫu cấu hình tự động đổi IP/Hostname Linux-Custom-Spec đã tạo ở Phần 2).
- Tích chọn thêm: Power on virtual machine after creation (tùy chọn) để máy tự khởi động sau khi bung xong -> bấm NEXT.
- Customize guest OS: Chọn bản mẫu tùy biến danh tính Linux-Custom-Spec -> bấm NEXT.
- Ready to complete: Rà soát lại bảng tổng hợp cấu hình -> bấm FINISH.
- Select a name and folder:
5. SỬ DỤNG SUBSCRIBED CONTENT LIBRARIES (MÔ HÌNH PUBLISHER - SUBSCRIBER)
Trong các mô hình doanh nghiệp có nhiều trung tâm dữ liệu phân tán (Multi-site) hoặc nhiều máy chủ vCenter Server độc lập, việc sao chép thủ công các file mẫu .iso, .ova, VM Templates qua USB hay FTP vừa tốn thời gian vừa dễ gây lệch chuẩn phiên bản.
Tính năng Subscribed Content Library trong VMware vSphere hoạt động theo mô hình Publisher - Subscriber:
- Published Library (Thư viện xuất bản): Nằm tại vCenter máy chủ chính, đóng vai trò là "nguồn chân lý" (Source of Truth), xuất bản một đường dẫn URL chứa danh mục mẫu chuẩn.
- Subscribed Library (Thư viện đăng ký): Nằm tại các vCenter chi nhánh, đăng ký vào đường link URL của Publisher để tự động tải về và đồng bộ danh mục mẫu định kỳ qua mạng IP.
- Trên giao diện vSphere Client của vCenter chính, mở menu chính -> chọn Content Libraries.
- Nhấp chọn thư viện đã tạo ở bước trước -> chuyển sang tab Actions -> chọn Edit Settings... (hoặc kích hoạt ngay từ bước tạo thư viện ban đầu).
- Cấu hình Publishing:
- Tích chọn vào ô: Enable publishing.
Bước 5.2: Tạo Thư viện đăng ký (Subscribed Content Library) tại vCenter đích
- Mở menu chính -> chọn Content Libraries -> bấm nút CREATE.
- Name and location:
- Name: Nhập tên định danh.
- vCenter Server: Chọn máy chủ vCenter quản lý thư viện này -> bấm NEXT.
- Configure content library (Thiết lập đăng ký):
- Tích chọn vào ô: Subscribed content library.
- Subscription URL: Dán đường link URL vừa sao chép từ Bước 1 vào ô này.
- Security Warning (SSL Thumbprint): Nếu vCenter dùng chứng chỉ SSL tự ký (Self-signed), hệ thống sẽ hiện popup cảnh báo dấu vân tay SSL Thumbprint -> bấm YES để chấp nhận tin cậy.
- Authentication: Nếu thư viện Publisher có đặt mật khẩu bảo vệ, tích chọn và nhập đúng mật khẩu.
- Tùy chọn tải dữ liệu xuống (Download Options):
- Lựa chọn 1: Download all library content immediately (Tải toàn bộ ngay lập tức): Hệ thống sẽ tự động kéo toàn bộ file dữ liệu (file nén OVF, ISO, disk VMDK) về lưu trữ trên Datastore cục bộ của Subscriber ngay khi có thay đổi.
- Lựa chọn 2: Download library content only when needed (On-Demand) (Chỉ tải khi có yêu cầu sử dụng - Khuyến nghị tiết kiệm đĩa): Hệ thống chỉ đồng bộ thông tin mô tả siêu dữ liệu (Metadata / Headers). Dung lượng chiếm dụng trên Datastore gần như bằng 0. Khi nào kỹ sư tại chi nhánh bấm Deploy VM từ template đó, ESXi mới bắt đầu tải dữ liệu nhị phân về.
- Bấm NEXT.
- Add storage:
- Chọn Datastore cục bộ tại chi nhánh để chứa dữ liệu đồng bộ -> bấm NEXT.
- Ready to complete: Kiểm tra lại toàn bộ thông tin -> bấm FINISH.
Bước 5.3: Tạo Subscription cho VM Templates
- Mở menu chính của vSphere Client -> chọn mục Content Libraries.
- Tại danh sách bên trái, chọn thư viện gốc đang đóng vai trò Publisher: Lab-Local-Library (thư viện hiện đang chứa OVF/OVA Templates và VM Templates).
- Nhấp vào nút ACTIONS trên thanh công cụ -> chọn New Subscription...
- Trình hướng dẫn Create Subscription xuất hiện.
- Select subscription type, hệ thống đưa ra hai lựa chọn:
- Create a new subscription to a new Subscriber library: Tự động tạo mới một Subscriber library song song.
- Create a new subscription to an existing Subscriber library: Liên kết với một thư viện Subscriber đã có sẵn.
- Tích chọn vào ô: Create a new subscription to an existing Subscriber library.
- Nhấn NEXT.
- Configure subscription:
- vCenter Server: Chọn máy chủ VCENTER.UYENTHY.LOCAL.
- Danh sách Discovered Subscribed Libraries sẽ tự động liệt kê các thư viện đăng ký tương thích đang trỏ tới Publisher này.
- Nhấp chọn thư viện: Lab-Subscribed-Library.
- Nhấn NEXT
- Select folder:
- Chọn thư mục quản lý máy ảo logic trên cây Inventory tại site đích: Chọn folder Lab-UT.
- Mục đích: Khi VM Template được đẩy sang Subscriber, nó sẽ tự động được định vị nằm gọn gàng bên trong folder này.
- Nhấn NEXT.
- Select compute resource:
- Chọn máy chủ ESXi sẽ tiếp nhận và quản lý template: Chọn esxi.uyenthy.local.
- Khung kiểm tra tương thích báo Compatibility checks succeeded.
- Nhấn NEXT.
- Select network:
- Chọn Port Group mạng mặc định để gắn cho card mạng ảo của template: Chọn VM Network.
- Nhấn NEXT.
- Review, kiểm tra lại toàn bộ bảng thông số tổng kết
Bước 5.4: Deploy VM từ Subscribed Library
- Chọn thư viện đăng ký: Lab-Subscribed-Library.
- Chuyển sang tab Templates.
- Nhấp chuột phải vào template cần triển khai -> chọn New VM from This Template...
- Select a name and folder:
- Virtual machine name: Nhập tên định danh máy ảo mới
- Select a location: Chọn thư mục quản lý máy ảo.
- Bấm NEXT.
- Select a compute resource:
- Chọn máy chủ tính toán đích: esxi.uyenthy.local.
- Kiểm tra khung Compatibility checks báo trạng thái Compatibility checks succeeded.
- Bấm NEXT.
- Select storage:
- Chọn Datastore lưu trữ cục bộ.
- Bấm NEXT.
- Select clone options:
- Tích chọn ô: Customize the operating system.
- (Tùy chọn): Tích chọn Power on virtual machine after creation nếu muốn máy ảo tự khởi động sau khi tạo xong.
- Bấm NEXT.
- Customize guest OS:
- Chọn bản mẫu cấu hình định danh đã chuẩn bị trước: Linux-Custom-Spec.
- Bấm NEXT.
- Select networks:
- Ánh xạ card mạng của máy ảo vào Port Group thực tế: Chọn VM Network.
- Bấm NEXT.
- Ready to complete: Rà soát lại toàn bộ bảng thông số tổng kết -> bấm FINISH.
Do hạn chế tài nguyên nên em viết phần 2 ở bài khác: https://securityzone.vn/t/lab-9-par...tent-libraries-va-versioning-templates.13601/
Đính kèm
Sửa lần cuối:
Bài viết liên quan
Được quan tâm
Bài viết mới