[Cobbler] Tổng quan về PXE – Preboot eXecution Environment

30/12/2020

Theo các truyền thống khi bạn muốn cài đặt hệ điều hành cho một thiết bị PC, server nào đó thì bạn nghĩ ngay tới việc tạo một chiếc USB boot, một đĩa CD boot với hệ điều hành mong muốn. Đây là một cách làm chuẩn nhưng mang tính chất thủ công khi muốn cài đặt cho số lượng máy nhiều thì bắt buộc phải làm lần lượt tốn nhiều thời gian và công sức hoặc chuẩn bị số lượng lớn các ổ đĩa CD, USB…

Vậy liệu có phương pháp nào cho phép cài đặt hệ điều hành cho số lượng lớn các thiết bị PC, server một cách tự động mà không cần tấn USB, ở đĩa CD? Quả là một câu hỏi khó nhưng hoàn toàn có câu trả lời đó là triển khai một PXE server (Preboot eXecution Environment) cài đặt hệ điều hành qua mạng LAN. PXE server là gì các bạn cùng new.Onet.vn tìm hiểu ở dưới.

Mục lục

  1. PXE là gì?
  2. Mô hình PXE
  3. Sự hoạt động của PXE

1. PXE là gì ?

PXE đặc tả môi trường thực thi preboot mô tả môi trường server – client được tiêu chuẩn hóa để khởi động một tổ hợp phần mềm, được truy xuất từ ​​một mạng, trên các máy client hỗ trợ PXE. Trên máy client bắt buộc phải có card mạng PXE-capable NIC (network interface controller) và sử dụng một số giao thức chuẩn như DHCP và TFTP (Theo Wikipedia)

Hiểu một cách đơn giản PXE là cơ chế cho phép khởi động một phần mềm lấy qua mạng. Trong ngữ cảnh server vật lý để có thể khởi động PXE thì phía máy client cần NIC card mạng hỗ trợ PXE và hệ thống mạng có máy chủ DHCP và TFPT để cấp IP và phân bổ các image hệ điều hành xuống client. Đa số các thiết bị ngày này đều hỗ trợ cho chế boot PXE. Quá trình cài đặt OS xuống client hoàn toàn tự động.

2. Mô hình PXE

PXE được phát triển bởi một số các nhà sản xuất phần mềm và phần cứng lớn. Được thiết kế ban đầu bởi Intel, cùng với sự tham gia của các nhà sản xuất như HP, 3Com, Dell, Phoenix Technologies. PXE làm việc với network card (NIC) trong client, biến NIC thành một boot device. PXE boot hệ điều hành cho các client từ network bằng cách lấy một boot image từ server. File này có thể là một OS hay pre-OS cho client. Bởi PXE làm việc cùng với NIC nên yêu cầu NIC phải có PXE-enable.

  • PXE bao gồm 2 thành phần: PXE client PXE server

+ PXE Server là thành phần triển khai chạy trên một thiết bị nào đó trong mạng LAN. Phần mềm này hỗ trợ các giao thức TFTP, DHCP. DHCP cấp phát địa chỉ IP để các máy client có thể liên lạc với các máy khác và với TFTP server để lấy các file boot và file cấu hình cần thiết. TFTP cung cấp dịch vụ truyền các file boot và file cấu hình cần thiết cho client.

+ PXE client nằm trên card mạng. Các server, PC hầu hết đều cho phép khởi động máy tính qua mạng với PXE boot code. Các mainboard có card mạng onboard cũng hầu hết có thành phần này.

3. Sự hoạt động của PXE

Bước 1: Máy client được khởi động NIC của client gửi đi bản tin broadcast DHCPDISCOVER dùng giao thức UDP đến cổng 67.
Bước 2: DHCP server nhận được bản tin của client và gửi lại bản tin DHCPOFFER các thông tin cần thiết cho client.
Bước 3: Khi client nhận được các thông tin này, cliern gửi DHCPREQUEST đến máy chủ DHCP để nhận thông tin boot image.
Bước 4: TFTP server gửi lại boot image (pxelinux.0), và client sẽ xử lý.
Bước 5: Mặc định boot image tìm được thư mục pxelinux.cfg trên TFTP server để lấy các file cấu hình.
Các bước còn lại client tải tất cả các file cần thiết (filesystem, kickstart, …) và tải về và tự động cài đặt.

Hy vọng những ý cơ bản ở trên giúp các bạn có kiến thức cơ bản về PXE server.

ONET IDC thành lập vào năm 2012, là công ty chuyên nghiệp tại Việt Nam trong lĩnh vực cung cấp dịch vụ Hosting, VPS, máy chủ vật lý, dịch vụ Firewall Anti DDoS, SSL… Với 10 năm xây dựng và phát triển, ứng dụng nhiều công nghệ hiện đại, ONET IDC đã giúp hàng ngàn khách hàng tin tưởng lựa chọn, mang lại sự ổn định tuyệt đối cho website của khách hàng để thúc đẩy việc kinh doanh đạt được hiệu quả và thành công.
Bài viết liên quan

[NGINX] Hướng dẫn cài đặt Nginx trên CentOS 8

NGINX (đọc là “engine x”) là một phần mềm mã nguồn mở cho web serving, reverse proxying, caching,...
30/12/2020

[Ubuntu] Hướng dẫn khôi phục tên network interface về dạng eth[x] trên Ubuntu 16.04 / 18.04

Khi mới quản trị hệ thống, bạn sẽ nhận thấy tên interface mạng mặc định trên Ubuntu theo...
30/12/2020

Cách chạy Cron cứ sau 5 phút, giây, giờ, ngày, tháng

1. Execute a cron job every 5 Minutes The first field is for Minutes. If you specify * in this field, it runs every minutes....
13/01/2021