PXE部署實例

一、原理

這是基於C/S架構的方式,Client嵌入到網卡的ROM芯片中,Server需要單獨配置,包括DHCPTFTP。開機後選擇PXEclient發起廣播連接請求,DCHP-Server響應分配IP和系統啓動鏡像位置,client拿到地址,然後單播請求Server系統啓動鏡像pxelinux.0,獲得後,引導啓動安裝過程,請求內核和根文件系統,然後進入正式安裝過程。安裝過程同時結合Linux kickstart安裝,包含http配置等

本實例目的

實現自動安裝rhel5.3_32   rhel5.5_64     rhel6.2_64

按數字1 引導 rhel5.3_32 ;按數字2引導rhel5.5_64 ;按數字3引導rhel6.2_64

需要安裝的工具

 1.syslinux 2.kickstart 

需要安裝的服務

    1.dhcp 2.http 3.tftp-server 

準備工作:

1、服務器IP192.168.8.64 系統版本rhel6.4_64

2、用xshell遠程連接192.168.8.64

3、 上傳rhel6.4_64.iso 、 rhel5.3_32.iso、rhel6.5_64.iso 、rhel6.2_64.iso  鏡像到/data1

4、配置本地yum源

[root@localhost ~]# mount -o loop /data1/rhel-server-6.4-x86_64-dvd.iso     /mnt/

[root@localhost ~]# vim /etc/yum.repos.d/rhel-source.repo

[rhel-source]

name=Red Hat Enterprise Linux $releasever - $basearch - Source

baseurl=file:///mnt/

enabled=1

gpgcheck=0

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

5、關閉防火牆

[root@localhost ~]# service iptables stop 

[root@localhost ~]# setenforce 0

開始部署安裝:

1.安裝syslinux和kickstart

[root@localhost ~]# yum install syslinux -y

[root@localhost ~]# yum install system-config-kickstart -y


2.安裝dhcp服務

[root@localhost ~]# yum -y  install dhcp

配置dhcpd.conf

[root@localhost ~]# vim /etc/dhcp/dhcpd.conf  #紅色區域爲重點代碼

wKiom1P0nUuBtWLvAAEst4aIZHQ102.jpg

啓動dhcpd服務

[root@localhost ~]# service dhcpd start 

3.安裝httpd

[root@localhost ~]# yum -y install httpd

啓動httpd

[root@localhost ~]# service httpd start 

在/var/ww/html新建3個目錄:rhel5u3_32   rhel5u5_64        rhel6u2_64

[root@localhost ~]# cd /var/www/html/

[root@localhost html]# mkdir rhel5u3_32 

[root@localhost html]# mkdir rhel5u5_64

[root@localhost html]# mkdir rhel6u2_64


分別掛載鏡像到各自目錄

[root@localhost html]# mount -o loop /data1/rhel5.3_32.iso /var/www/html/rhel5u3_32

[root@localhost html]# mount -o loop /data1/rhel5.5_64.iso /var/www/html/rhel5u5_64

[root@localhost html]# mount -o loop /data1/rhel6.2_64.iso /var/www/html/rhel6u2_64


4.安裝tftp-server

[root@localhost ~]# yum -y install tftp-server

tftp-server是以xinetd方式管理,更改配置文件

server_argstftp的目錄,本次定義在  /tftpboot ,disable改爲no,否則無法啓動。


[root@localhost ~]# vim /etc/xinetd.d/tftp #紅色區域爲重點代碼

wKioL1P0nhijE-pQAAFpiapisJI820.jpg

啓動xinetd服務

[root@localhost ~]# service xinetd start 

配置PXE啓動文件

[root@localhost ~]# mkdir /tftpboot          

[root@localhost ~]# mkdir /tftpboot/pxelinux.cfg

[root@localhost ~]# mkdir /tftpboot/rhel5u3_32

[root@localhost ~]# mkdir /tftpboot/rhel5u5_64

[root@localhost ~]# mkdir /tftpboot/rhel6u2_64

[root@localhost ~]# cp /usr/share/syslinux/pxelinux.0     /tftpboot/

[root@localhost ~]# cp /mnt/isolinux/isolinux.cfg     /tftpboot/pxelinux.cfg/default 

[root@localhost ~]# cp /var/www/html/rhel5u3_32/isolinux/initrd.img /tftpboot/rhel5u3_32

[root@localhost ~]# cp /var/www/html/rhel5u3_32/isolinux/vmlinuz  /tftpboot/rhel5u3_32

[root@localhost ~]# cp /var/www/html/rhel5u5_64/isolinux/initrd.img /tftpboot/rhel5u5_64

[root@localhost ~]# cp /var/www/html/rhel5u5_64/isolinux/vmlinuz  /tftpboot/rhel5u5_64

[root@localhost ~]# cp /var/www/html/rhel6u2_64/isolinux/initrd.img /tftpboot/rhel6u2_64

[root@localhost ~]# cp /var/www/html/rhel6u2_64/isolinux/vmlinuz /tftpboot/rhel6u2_64

root@localhost ~]# chmod     644     /tftpboot/pxelinux.cfg/default

[root@localhost ~]# vim /tftpboot/pxelinux.cfg/default   #紅色區域爲重點代碼

wKiom1P0ne3BNFIJAAKzapg8oHw226.jpg


[root@localhost ~]#vim /tftpboot/boot.msg                       #紅色區域爲重點代碼

wKiom1P0nJjwEBLMAADnJPhSMyk776.jpg

5.獲取3個系統版本的ks文件

在http根目錄下新建ks目錄

[root@localhost ~]# cd /var/www/html/

[root@localhost html]# mkdir ks

獲取ks文件(格式 爲.cfg),以rhel6u2_64系統爲例

在正在運行的rhel6u2_64系統上用 yum 安裝 system-config-kickstart

[root@localhost ~]# yum install system-config-kickstart -y

[root@localhost ~]# system-config-kickstart 

    加添配置時鐘,root密碼

wKioL1P0RiDgnRPjAAMNolAHsQ8286.jpg

    安裝模式 選擇HTTP ,填寫地址192.168.8.64 和 HTTP目錄

wKioL1P0RjyDLvrCAAIZwbsnWOk385.jpg

    默認

wKiom1P0RTjCJDDcAAIEgNFRQaM880.jpg

    劃分磁盤

wKiom1P0RUjj30ipAAKNzs0S_uA023.jpg

    選包    wKioL1P0Rm3xaXZ9AAL0IJdEdVY438.jpg

    添加安裝腳本(沒有不添加)

wKioL1P0Roew6fQCAAH7UyS0KRw983.jpg

    保存,名字爲 rhel6u2_64.cfg ,並把這個文件放到192.168.8.64的/var/www/html/ks 下

wKioL1P0RpXT25W1AAKkZEDO08k098.jpg


注:rhel5u3_32也是在正在運行的rhel5.3_32系統運行system-config-kickstart,經過圖形界面配置等,保存

爲rhel5u3_32.cfg ,傳到/var/www/html/rhel5u3_32

        rhel5u5_64也是在正在運行的rhel5.5_64系統運行system-config-kickstart,經過圖形界面配置等,保存

爲rhel5u5_64.cfg ,傳到/var/www/html/rhel5u5_64

6.客戶機測試使用網絡安裝

1.第一種方法

使用測試電腦(192.168.8.0網段與192.168.8.64相通),開機使用網絡啓動

wKiom1P0sqfgqfn9AAT_B9qhXjI455.jpg

2.第二種方法

使用測試電腦(192.168.8.0網段與192.168.8.64相通)在測試電腦上安裝vmware,vmware網卡橋接

wKioL1P0o1-T3mJcAADmg7oLItQ049.jpg

開啓虛擬機, F2 進入BIOS設置爲使用網絡啓動

wKiom1P0oqSTkcnLAADzxVlPtBg278.jpg

自動獲取IP和列表, 如:要安裝rhel5u5_64,輸入數字2 回車

wKioL1P0rfex9ni4AAHC0GiDug8249.jpg



總結:1.1)如果自動獲取IP超時,查看服務端dhcpd是否開啓服務

        2)可能IP已被佔用,增加range的ip範圍

      2.  1)如果TFTP超時,查看服務器xinetd是否開啓服務

          2)可能防火牆沒有關閉,service iptables stop ; setenforce 0





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章