目錄
- 1,什么是PXE
- 2, PXE批量部署的優點
- 3,部署要求
- 4, 搭建PXE遠程安裝服務器
- 5,等待用戶控制的方式實作PXE啟動選單安裝
- 6,PXE客戶機自動安裝---俗稱無人值守(以上系統環境不用改變)
1,什么是PXE
預啟動執行環境,在作業系統之前運行
PXE(Pre-boot Execution Environment)是由Intel設計的協議,是遠程引導技術,也叫預啟動執行環境,它可以使計算機通過網路啟動,協議分為client和server兩端,PXE client在網卡的ROM中,當計算機引導時,BIOS把PXE client調入記憶體執行,并顯示出命令選單,經用戶選擇后,PXE client將放置在遠端的作業系統通過網路下載到本地運行,
同時它也是RPL(Remote Initial Program Load,遠程啟動服務)的升級產品,它們的不同之處為:RPL是靜態路由,PXE是動態路由,不難理解:RPL是根據網卡上的ID號加上其它的記錄組成的一個幀向服務器發出請求,而服務器那里早已經有了這個ID資料,匹配成功則進行遠程啟動;PXE則是根據服務器端收到的作業站MAC地址(就是網卡號),使用DHCP服務給這個MAC地址指定一個IP地址,每次重啟動可能同一臺作業站有與上次啟動有不同的IP,即動態分配地址,
原理圖如下:

下圖為裝機程序開機自啟動的流程:

2, PXE批量部署的優點
- 規模化:同時裝配多臺服務器
- 自動化:安裝系統,配置各種服務
- 遠程實作:不需要光碟,U盤等安裝介質
3,部署要求
服務端
- 運行DHCP服務,用來分配地址,定位引導程式
- 運行TFTP服務,提供引導程式下載
客戶端
- 網卡支持PXE協議
- 主板支持網路引導
4, 搭建PXE遠程安裝服務器
PXE遠程安裝服務 ,作業在C/S模式,客戶機通過網路從遠程服務器下載引導鏡像,并加載安裝整個作業系統,
PXE遠程服務器所需準備:
- 安裝源(系統盤檔案);
- TFTP服務;(發布裝機檔案,讓客戶機可訪問)
- XINETD服務;(因為tftp由xinetd管理)
- DHCP服務;
- Linux內核:
所要實作的功能:
能夠向客戶機裸機發送PXE引導程式
啟動選單及無人應答檔案等
客戶端要求:
客戶端的網卡支持PXE協議,且主板支持網路引導(現在多數都支持);
設定BIOS允許NETwork或LAN啟動;
5,等待用戶控制的方式實作PXE啟動選單安裝
服務器上的配置:
- 1,安裝需要的服務器(TFTP-server、DHCP/FTP)
`yum -y install tftp-server`
`vi /etc/xinetd.d/tftp`
` service_args = -s /var/lib/tftpboot -c` (指定存盤路徑-c,允許上傳)
`disable = no` (開啟tftp)
`yum -y install dhcp`
`vi /etc/dhcp/dhcpd.conf`
` ddns-update-style none; ` //支持DNS動態更新,一般選擇關閉//
``next-server 192.168.1.100; `` //指定TFTP服務器地址
` filcname "/pxclinux.0"; ` //引導檔案TFTP上的位置//
`subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.150 192.168.1.200;
option routers 192.168.1.100;
option domain-name-servers 8.8.8.8 114.114.114.114;`
將光碟發布以ftp協議發布
` yum -y install vsftpd`
` mount /dev/cdrom /var/ftp/pub` //讓光碟掛載到共享目錄下,讓ftp客戶機可訪問光碟,目的是裝機用,
- 2,復制網路啟動所需要檔案到tftp服務器的根目錄下
` yum -y install syslinux ` //安裝引導加載程式
` cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/`
` mkdir /var/lib/tftpboot/pxelinux.cfg`
` cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default` //啟動選單
` cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot` // linux引導加載模塊
` cp/mnt/images/pxcboot/vmlinuz/var/lib/tftpboot/ ` //壓縮內核
` cp/mnt/isolinux/vesamenu.c32/var/lib/tftpboot ` //圖形化啟動選單
修改安裝的組態檔
`[root@1ocalhost ]# vi /var/lib/tftpboot/pxelinux.cfg/default`
`default auto_ ` #默認圖形化安裝(當你選擇的時候什么也不選時自動加載的引導方式)
`prompt i ` #需要用戶選擇
`label auto `
`kernel vmlinuz`
`append rescue initrd=initrd.img method=ftp://192.168.1.100/pub ` #指定救援模式的光碟引導路徑
`label linux text
kernel vmlinuz
append text initrd=initrd.img method=ftp://192.168.1.100/pub` #指定文本的光碟引導路徑
`label linux rescue
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://192.168.1.100/pub` #指定救援模式的光碟引導路徑
- 3,啟動所有服務器
`service dhcpd restart
service vsftpd restart
yum -y install xinetd
service xinetd start`
`chkconfig --level 35 xinetd on`】括號內的非必裝
`chkconfig --level 35 tftp on `
`service firewalld stop` //不關閉沒法下載TFTP中的引導程式//
``setenforce 0``
客戶機設定
客戶機重啟虛擬機,將bios的boot選項選擇為network啟動方式
6,PXE客戶機自動安裝—俗稱無人值守(以上系統環境不用改變)
Kickstart是一種無人值守的安裝方式,它的作業原理是在安裝程序中記錄需要人工干預填寫的各種引數,并生成一個名為ks.cfg的檔案,如果在安裝程序中出現要填寫引數的情況,安裝程式首先會去查找ks.cfg檔案,根據此檔案的引數自動應答,ks.cfg檔案涵蓋了安裝程序中可能出現的所有需要填寫的引數從而實作無人值守自動安裝,
【1】kickstart技術的實作
(1)創建應答檔案ks.cfg,預先定義好各種安裝設定
(2)免去互動設定程序,從而實作全自動化安裝
【2】應答檔案的來源
(1)應答檔案來源,使用工具system-config-kickstart,在服務其上點擊圖形界面配置相關引數,最后生成ks.cfg檔案
(2)ks.cfg檔案中的軟體包來源復制/root/anaconda-ks.cfg檔案中的(root檔案就是ks.cfg的模板)
服務器設定
- 1.自動安裝配置
`yum -y install system-config-kickstart ` //安裝檔案,可以圖形化界面向導來配置安裝應答檔案
圖形界面打開kickstart 進行配置,(注意ftp目錄 指定為pub)
圖形化界面操作如下:







安裝后腳本設定:
``cd /etc/yum.repos.d``
`rm -f *`
`echo -e ''[base]" >>aa.repo`
`echo -e "baseurl=ftp://192.168.1.100/pub" >> aa.repo`
`echo -e "gpgcheck=0" >>aa.repo`
腳本默認保存在/root/ks.cfg中
備注:修改ks.cfg內容
將服務器本地 anaconda.ks.cfg內的%packages...%end內容即為gnome桌面開發環境必裝軟體添加進ks.cfg
`cp /root/ks.cfg /var/ftp/` //將應答檔案拷貝到ftp共享目錄,目的是讓客戶機可訪問
`vi /var/1ib/ tftpboot/ pxelinux. cfg/ default`
`default auto`
`prompt 0` # 無需用戶選擇
`label auto`
`kernel vml inuz`
`append initrd-ini trd. img. method-ftp://192. 168. 1. 100/pub ks-ftp://192. 168. 1. 100/ks. cfg`
#指定引寧光碟的路徑及應答檔案的路徑
- 2,客戶機設定
客戶機重啟虛擬機,將bios的boot選項選擇為network啟動方式即可,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/248058.html
標籤:其他
