• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • PXE + KickStart實現全自動化系統安裝

    標簽: 自動化  Linux  自動化運維  無人值守虛擬機安裝  pxe引導全自動系統

    關于kickstart的介紹以及自動應答腳本的生成設置請參考我的上一篇博客 kickstart自動應答腳本生成及虛擬機自動安裝 ,而且本文的部分設置包含在上一篇博客中,所以此文有略過,如果要完成自動化安裝全程,需要先閱讀上一篇博客,然后接著本文進行配置

    什么是PXE,它的作用是什么

    嚴格來說,PXE 并不是一種安裝方式,而是一種引導的方式。進行 PXE 安裝的必要條件是要安裝的計算機中包含一個 PXE 支持的網卡(NIC),即網卡中必須要有 PXE Client。PXE (Pre-boot Execution Environment)協議使計算機可以通過網絡啟動。協議分為 client 和 server 端,PXE client 在網卡的 ROM 中,當計算機引導時,BIOS 把 PXE client 調入內存執行,由 PXE client 將放置在遠端的文件通過網絡下載到本地運行。運行 PXE 協議需要設置 DHCP 服務器和 TFTP 服務器。DHCP 服務器用來給 PXE client(將要安裝系統的主機)分配一個 IP 地址,由于是給 PXE client 分配 IP 地址,所以在配置 DHCP 服務器時需要增加相應的 PXE 設置。此外,在 PXE client 的 ROM 中,已經存在了 TFTP Client。PXE Client 通過 TFTP 協議到 TFTP Server 上下載所需的文件。
    

    PXE + KickStart自動化系統安裝所需條件或設置

    • TFTP 服務器;
    • DHCP 服務器;
    • HTTP服務
    • pxelinux.0
    • KickStart所生成的ks.cfg配置文件

    一. tftp服務的安裝和配置

    1. 如果不知道提供tftp服務的軟件是什么可以使用以下命令進行搜索
    [root@foundation ~]# yum search tftp
    Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
    This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
    ==================================== N/S matched: tftp ====================================
    tftp.x86_64 : The client for the Trivial File Transfer Protocol (TFTP)
    tftp-server.x86_64 : The server for the Trivial File Transfer Protocol (TFTP)

    Name and summary matches only, use “search all” for everything.
    2. 通過yum安裝tftp服務
    [root@foundation ~]# yum install tftp-server.x86_64
    Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
    This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
    Package tftp-server-5.2-12.el7.x86_64 already installed and latest version
    Nothing to do
    #因為我個人系統中已經安裝過了所以提示nothing to do

    3. 拷貝系統安裝過程中需要用的配置或者內核模塊等到tftp服務目錄中

    cp /var/www/html/iso/isolinux/* /var/lib/tftpboot/
    #tftp開機自啟動
    vim /etc/xinetd.d/tftp 
    編輯disable的選項為no
    

    這里寫圖片描述

    二. httpd服務的安裝和配置

    yum install httpd
    #安裝httpd服務
    mkdir /var/www/html/iso
    #在httpd服務的根目錄下為鏡像的掛載創建一個目錄
    mount /iso/rhel-server-7.2-x86_64-dvd.iso /var/www/html/iso/
    #掛載鏡像到httpd服務上
    systemctl start httpd
    #在瀏覽器中訪問測試httpd是否可以訪問,下圖為正常訪問狀態
    

    這里寫圖片描述

    cp /var/www/html/iso/isolinux/* /var/lib/tftpboot/
    #然后將系統啟動所需配置及文件復制到tftp訪問目錄中
    

    三. dhcp服務的安裝和配置

    yum install dhcp
    cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
    #cp: overwrite '/etc/dhcp/dhcpd.conf'? y
    用示例配置文件覆蓋dhcp配置文件
    

    然后我們對dhcp配置文件進行對應修改,使其能夠正確提供服務
    vim /etc/dhcp/dhcpd.conf

     # option definitions common to all supported networks...
      7 option domain-name "example.com";       #域名
      8 option domain-name-servers 172.25.254.250;#DNS
      9 
     10 default-lease-time 600;#默認租約期
     11 max-lease-time 7200;#最長租約期
    
        26 
     27 #subnet 10.152.187.0 netmask 255.255.255.0 {
     28 #}#需要注釋掉
     29 
     30 # This is a very basic subnet declaration.
     31 
     32 subnet 172.25.254.0 netmask 255.255.255.0 {#網段及子網掩碼
     33   range 172.25.254.60 172.25.254.66; ##獲取的ip地址范圍設置
     34   option routers 172.25.254.250;  ####網關
     35   next-server 172.25.254.36; ###tftp主機地址
     36   filename "pxelinux.0";  #pxe啟動程序
     37 }
     38 #之后的內容可以全部刪除掉
    

    這里寫圖片描述

    四. pexlinux.0獲取和相關配置

    首先通過查找相關信息得到pxelinux.0的來源

    [root@foundation ~]# yum search pxelinux
    Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
    This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
    ==================================== Matched: pxelinux ====================================
    syslinux.x86_64 : Simple kernel loader which boots from a FAT filesystem
    syslinux-extlinux.x86_64 : The EXTLINUX bootloader, for booting the local system.
    然后安裝相關軟件獲得pxelinux.0
    [root@foundation xinetd.d]# yum install syslinux.x86_64
    Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
    This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
    Package syslinux-4.05-12.el7.x86_64 already installed and latest version
    Nothing to do

    查找pxelinux.0文件以及用法,以后操作都是根據查找到的文檔指導完成的

    [root@foundation xinetd.d]# rpm -ql syslinux | grep pxelinux
    /usr/share/doc/syslinux-4.05/pxelinux.txt
    /usr/share/syslinux/gpxelinux.0
    /usr/share/syslinux/gpxelinuxk.0
    /usr/share/syslinux/pxelinux.0
    [root@foundation xinetd.d]#

    拷貝文件到指定目錄,下面操作指導可以在/usr/share/doc/syslinux-4.05/pxelinux.txt中找到

    cp /usr/share/syslinux/pxelinux.0 /var/lig/tftpboot/
    mkdir /var/lib/tftpboot/pxelinux.cfg
    cp /var/lib/tftpboot/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
    

    配置/var/lib/tftpboot/pxelinux.cfg/default文件使安裝程序能夠找到鏡像以及自動應答腳本

    #在關鍵字label linux后的第四行進行修改,指定你的鏡像地址與自動應答腳本的位置
    label linux
      menu label ^Install Red Hat Enterprise Linux 7.2
      kernel vmlinuz
      menu default
      append initrd=initrd.img repo=http://172.25.254.36/iso/ ks=http://172.25.254.36/ks.cfg quiet##########修改這一行額!!!
    

    這里寫圖片描述

    關于一開始提到的KickStart所生成的ks.cfg配置文件可以參考 kickstart自動應答腳本生成及虛擬機自動安裝 ,最后的結果就是有一個可以通過httpd服務訪問到的ks.cfg自動應答腳本文件就可以了

    完成配置之后檢查服務

    1.防火墻關閉

    systemctl stop firewalld
    systemctl disable firewalld
    systemctl mask firewalld
    

    2.開啟tftp并檢查服務端口是否開啟

    [root@foundation xinetd.d]# systemctl start tftp.service
    [root@foundation xinetd.d]# ss -anulpe | grep tftp
    UNCONN 0 0 :::69 :::* users:((“in.tftpd”,pid=11738,fd=0),(“systemd”,pid=1,fd=49)) ino:43984 sk:ffff8800d6078000 v6only:0 <->

    3.開啟dhcp

    systemctl start dhcpd.service 
    

    如果服務啟動有問題,可以先清空日志信息,再重啟服務,查看日志信息定位錯誤

    [root@foundation ~]>/var/log/messages
    [root@foundation ~]systemctl start dhcpd.service 
    [root@foundation ~]cat /var/log/messages
    

    到這里基本的配置就算是完成了,接下來就是安裝的選擇部分了

    啟動選擇

    NCI的網絡源要選擇Bridge方式
    Boot Options 將NIC選項放到首選啟動方式,但是記得完成一次安裝后要改回去,否則系統會進入循環安裝過程
    如果是通過物理機安裝虛擬機請拔掉網線或者不要聯網
    

    這里寫圖片描述

    這里寫圖片描述
    以下為啟動過程中的一些截圖

    進入pxe引導程序
    這里寫圖片描述

    安裝選擇界面,可以看到標題是修改過的,這個的話可以在/var/lib/tftpboot/pxelinux.cfg/default這個文件中進行修改
    這里寫圖片描述

    選擇安裝之后內核加載過程
    這里寫圖片描述

    自動創建分區
    這里寫圖片描述

    執行安裝后腳本過程
    這里寫圖片描述

    切記在完成一次安裝之后需要把Boot Options 的NIC選項改回去,否則系統會進入循環安裝過程

    版權聲明:本文為Lockey23原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/Lockey23/article/details/76383226

    智能推薦

    自動化部署操作系統-Kickstart+PXE自動部署

    目錄: 無人值守安裝簡介 實戰:PXE批量部署linux操作系統 前言 部署dhcp服務 HTTP服務 TFTP服務 復制PXE啟動時需要的文件 修改引導啟動菜單 配置kickstart自動安裝文件(ks.cfg) 裝機測試 無人值守安裝簡介 無人值守安裝(Unattended Setup)指軟件安裝時無需任何用戶干預,直接按默認或通過應答文件設置安裝,這對于無特殊需求的用戶或企業大批量部署安裝操...

    自動化運維之CentOS7下PXE+Kickstart+DHCP+TFTP+HTTP無人值守安裝系統

    一、概述 1、關于PXE Preboot Execution Environment翻譯過來就是預啟動執行環境;簡稱PXE;傳統安裝操作系統的方法是CDROM或U盤引導,而PXE技術解決的是從網絡引導安裝系統,當然PXE技術不是什么新技術了,是Intel和Microsoft在1998年定義的更大PC98規范的一部分。有關PXE規范的詳細文檔 2、pxe引導相關角色說明 PXE作用: 引導裝機 Ki...

    pxe自動化部署系統

    PXE:Preboot Excution Environment 預啟動執行環境 PXE是結合httpd,dhcp,tftp服務實現系統自動化安裝,只需機器開機,網絡通,機器就能自動安裝預定的系統 PXE環境的搭建大致分為三大步 一,軟件包的安裝 二,httpd,dhcp,tftp服務的配置 三,菜單的配置 PXE環境搭建 在做該實驗之前應把虛擬機的dhcp功能關閉 下面開始pxe環境的實現(為了...

    pxe自動化部署Linux系統

    pxe自動化部署Linux系統 實驗準備:虛擬機centos 7 需要部署:DHCP服務器,TFTP服務器,HTTP服務器 準備工作 1、HTTP服務器 2、kickstart應答文件 部署應答文件,安裝圖形工具 應答文件放到HTTP共享文件夾里 3、TFTP服務器 4、pxe引導文件 5、DHCP服務器 修改配置文件 重啟并監控日志 6、TFTP服務器部署相關文件 重啟服務器 測試 注意:報錯信...

    Kickstart無人值守安裝+pxe自動安裝

    環境準備 服務器系統 Centos6.5 內存 1G CPU 2核 IP地址 10.0.0.102 在21主機上操作...

    猜你喜歡

    PXE裝機自動化

    1.pxe裝機原理圖 PXE工作原理示意圖說明: 1. Client向PXE Server上的DHCP發送IP地址請求消息,DHCP檢測Client是否合法(主要是檢測Client的網卡MAC地址),如果合法則返回Client的IP地址,同時將啟動文件pxelinux.0的位置信息一并傳送給Client。 2. Client向PXE Server上的TFTP發送獲取pxelinux.0請求消息,T...

    HTML中常用操作關于:頁面跳轉,空格

    1.頁面跳轉 2.空格的代替符...

    freemarker + ItextRender 根據模板生成PDF文件

    1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...

    電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!

    Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...

    requests實現全自動PPT模板

    http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...

    精品国产乱码久久久久久蜜桃不卡