RHCSA系列:使用‘Kickstart’自動化RHEL 7安裝–第12部分

Linux 伺服器很少是獨立的設備。無論是在數據中心還是實驗室環境中,您可能不得不安裝多台將以某種方式互動的機器。如果將手動在單個伺服器上安裝 Red Hat Enterprise Linux 7 的時間乘以您需要設置的設備數量,這可能導致一個相當冗長的工作,可以通過使用一個稱為 kickstart 的無人值守安裝工具來避免。

在本文中,我們將展示您需要使用 kickstart 實用程序,以便在安裝過程中不必監督伺服器。

RHCSA: Automatic Kickstart Installation of RHEL 7

介紹 Kickstart 和自動安裝

Kickstart 是一種自動安裝方法,主要由 Red Hat Enterprise Linux(以及其他 Fedora 衍生版本,如 CentOS、Oracle Linux 等)用於執行無人值守的操作系統安裝和配置。因此,Kickstart 安裝允許系統管理員擁有相同的系統,就安裝的軟件包組和系統配置而言,同時避免了手動安裝每個系統的麻煩。

準備進行 Kickstart 安裝

要執行 Kickstart 安裝,我們需要按照以下步驟進行:

1. 創建一個 Kickstart 檔案,這是一個包含幾個預定義配置選項的純文本文件。

2. 將Kickstart文件存放在可移動存儲媒體、硬盤或網絡位置上。客戶將使用rhel-server-7.0-x86_64-boot.iso文件,而您需要將完整的ISO映像(rhel-server-7.0-x86_64-dvd.iso)存放在網絡資源上,例如HTTP或FTP服務器(在我們目前的情況下,我們將使用另一個IP為192.168.0.18的RHEL 7主機)。

3. 開始Kickstart安裝

要創建一個kickstart文件,請登錄您的Red Hat客戶門戶帳戶,使用Kickstart配置工具選擇所需的安裝選項。在向下滾動之前仔細閱讀每一個選項,選擇最適合您需求的選項:

Kickstart Configuration Tool

如果您指定安裝應通過HTTPFTPNFS執行,請確保服務器的防火牆允許這些服務。

雖然您可以使用Red Hat的在線工具創建kickstart文件,但您也可以根據以下行進行手動創建,以供參考。例如,您將注意到安裝過程將使用英語,使用拉丁美洲鍵盤布局和America/Argentina/San_Luis時區:

lang en_US
keyboard la-latin1
timezone America/Argentina/San_Luis --isUtc
rootpw $1$5sOtDvRo$In4KTmX7OmcOW9HUvWtfn0 --iscrypted
#platform x86, AMD64, or Intel EM64T
text
url --url=http://192.168.0.18//kickstart/media
bootloader --location=mbr --append="rhgb quiet crashkernel=auto"
zerombr
clearpart --all --initlabel
autopart
auth --passalgo=sha512 --useshadow
selinux --enforcing
firewall --enabled
firstboot --disable
%packages
@base
@backup-server
@print-server
%end

在線配置工具中,在選擇HTTP作為安裝來源後,將HTTP服務器設置為192.168.0.18,HTTP目錄設置為/kickstart/tecmint.bin。最後,點擊右上角的下載按鈕下載kickstart文件。

在上面的kickstart示例文件中,請仔細注意。

url --url=http://192.168.0.18//kickstart/media

該目錄是您需要解壓DVD或ISO安裝媒體的內容的地方。在這之前,我們將掛載ISO安裝文件到/media/rhel作為一個循環設備:

# mount -o loop /var/www/html/kickstart/rhel-server-7.0-x86_64-dvd.iso /media/rhel
Mount RHEL ISO Image

然後,將/media/rhel的所有內容複製到/var/www/html/kickstart/media中:

# cp -R /media/rhel /var/www/html/kickstart/media

完成後,/var/www/html/kickstart/media的目錄列表和磁盤使用情況應如下所示:

Kickstart Media Files

現在,我們準備開始kickstart安裝。

無論您選擇如何創建kickstart文件,檢查其語法是否正確都是一個好主意。為此,安裝pykickstart軟件包。

# yum update && yum install pykickstart

然後使用ksvalidator工具檢查文件:

# ksvalidator /var/www/html/kickstart/tecmint.bin

如果語法正確,則不會得到任何輸出;如果文件中存在錯誤,則會得到一條警告通知,指示語法不正確或未知的行數。

執行Kickstart安裝。

首先,使用rhel-server-7.0-x86_64-boot.iso文件启动客户端。当初始屏幕出现时,选择安装 Red Hat Enterprise Linux 7.0并按下Tab键,添加以下段落并按下Enter

# inst.ks=http://192.168.0.18/kickstart/tecmint.bin
RHEL Kickstart Installation

其中tecmint.bin是之前创建的 kickstart 文件。

按下Enter后,自动安装将开始,并显示正在安装的软件包列表(数量和名称根据您选择的程序和软件包组而异):

Automatic Kickstart Installation of RHEL 7

自动过程结束后,您将被提示移除安装介质,然后可以启动新安装的系统:

RHEL 7 Boot Screen

尽管您可以像之前提到的那样手动创建 kickstart 文件,但应尽可能使用推荐的方法。您可以使用在线配置工具或安装过程在 root 的主目录中创建的anaconda-ks.cfg文件。

实际上,该文件是一个 kickstart 文件,因此您可能希望手动安装第一个盒子时使用所有所需的选项(可能修改逻辑卷布局或每个卷上的文件系统),然后使用生成的anaconda-ks.cfg文件来自动安装其余部分。

此外,使用在线配置工具或anaconda-ks.cfg文件来指导未来的安装将使您能够使用开箱即用的加密根密码进行安装。

结论

既然您已經知道如何創建 kickstart 文件以及如何使用它們來自動安裝 Red Hat Enterprise Linux 7 伺服器,您就可以不再需要監督安裝過程了。這將為您節省時間,您可以做其他事情,或者如果運氣好的話,享受一些休閒時間。

無論如何,請使用下面的表格讓我們知道您對本文的看法。也歡迎提問!

閱讀更多使用 PXE 和 Kickstart 自動安裝多個 RHEL/CentOS 7 發行版

Source:
https://www.tecmint.com/automatic-rhel-installations-using-kickstart/