บทความนี้เป็นส่วนเสริมของการตั้งค่าสภาพแวดล้อมการบูต PXE ก่อนหน้าของฉันบน RHEL/CentOS 7 และเน้นที่วิธีการดำเนินการติดตั้งอัตโนมัติของ RHEL/CentOS 7 โดยไม่ต้องให้ผู้ใช้ดำเนินการใดๆ บนเครื่องที่ไม่มีส่วนหัวโดยใช้ไฟล์ Kickstart ที่อ่านจาก เซิร์ฟเวอร์ FTP ท้องถิ่น

การเตรียมสภาพแวดล้อมสำหรับการติดตั้งประเภทนี้ได้รับการประมวลผลแล้วในบทช่วยสอนก่อนหน้านี้เกี่ยวกับการตั้งค่าเซิร์ฟเวอร์ PXE ซึ่งเป็นคีย์เดียวที่หายไป ไฟล์ Kickstart จะมีการกล่าวถึงเพิ่มเติมในบทช่วยสอนนี้

การติดตั้ง RHEL/CemtOS 7 หลายรายการโดยใช้ Kickstart

วิธีที่ง่ายที่สุดในการสร้างการปรับแต่ง Kickstart ที่คุณสามารถใช้เพิ่มเติมสำหรับการติดตั้งหลาย ๆ อย่างคือทำการติดตั้ง RHEL/CentOS 7 ด้วยตนเอง และคัดลอกหลังจากกระบวนการติดตั้งเสร็จสิ้น ไฟล์ชื่อ anaconda-ks.cfgที่อาศัยอยู่ใน /root เส้นทางไปยังตำแหน่งเครือข่ายที่เข้าถึงได้ และระบุ initrd พารามิเตอร์การบูต inst.ks=protocol://path/to/kickstart.fileto PXE Menu Configuration File.

ความต้องการ

  1. ตั้งค่า PXE Network Boot Server บน RHEL/CentOS 7

บทช่วยสอนนี้และการกำหนดค่าไฟล์ Kickstart ครอบคลุมเฉพาะการติดตั้งขั้นต่ำของ RHEL/CentOS 7 โดยไม่มีการติดตั้งแบบกราฟิก โดยทั่วไปไฟล์ Kikstart เป็นผลมาจากขั้นตอนการติดตั้งขั้นต่ำก่อนหน้าของ RHEL/CentOS 7

  1. ขั้นตอนการติดตั้งขั้นต่ำของ CentOS 7
  2. RHEL 7 ขั้นตอนการติดตั้งขั้นต่ำ

หากคุณต้องการไฟล์ Kickstart ที่ครอบคลุม GUI การติดตั้งและตารางพาร์ติชั่นเฉพาะ เราขอแนะนำให้คุณดำเนินการปรับแต่งก่อน
การติดตั้งแบบกราฟิกของ RHEL/CentOS 7 ในสภาพแวดล้อมเสมือนจริงและการใช้งานที่ส่งผลให้ไฟล์ Kickstart สำหรับการติดตั้ง GUI ในอนาคต

ขั้นตอนที่ 1: สร้างและคัดลอกไฟล์ Kiskstart ไปยัง FTP Server Path

1. ในขั้นตอนแรก ไปที่เครื่อง PXE ของคุณ /root และคัดลอกไฟล์ชื่อ anaconda-ks.cfg ถึง Vsftpd เส้นทางเซิร์ฟเวอร์เริ่มต้น (/var/ftp/pub) – ยังเป็นเส้นทางสำหรับ RHEL/CentOS 7 Local Mirror Installation Source กำหนดค่าเมื่อ PXE network Boot Server – Step 6 (ดูบทความการตั้งค่าเซิร์ฟเวอร์ PXE ด้านบน)

# cp anaconda-ks.cfg  /var/ftp/pub/
# chmod 755 /var/ftp/pub/anaconda-ks.cfg

2. หลังจากที่คัดลอกไฟล์แล้ว ให้เปิดไฟล์ด้วยโปรแกรมแก้ไขข้อความที่คุณชื่นชอบ แล้วทำการเปลี่ยนแปลงเล็กน้อยดังต่อไปนี้

# nano /var/ftp/pub/anaconda-ks.cfg
  1. แทนที่ –urld ด้วยตำแหน่งต้นทางการติดตั้งเครือข่ายของคุณ: เช่น: –url=ftp://192.168.1.25/pub/
  2. แทนที่ network –bootproto dhcp ในกรณีที่คุณได้กำหนดค่าอินเทอร์เฟซเครือข่ายด้วยตนเองในกระบวนการติดตั้ง

ข้อความที่ตัดตอนมาเกี่ยวกับลักษณะของไฟล์ Kickstart ที่แสดงไว้ด้านล่าง

#version=RHEL7
# System authorization information
auth --enableshadow --passalgo=sha512

# Use network installation
url --url="ftp://192.168.1.25/pub/"
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
keyboard --vckeymap=us --xlayouts="us"
# System language
lang en_US.UTF-8

# Network information
network  --bootproto=dhcp --device=eno16777736 --ipv6=auto --activate
network  --hostname=localhost.localdomain
# Root password
rootpw --iscrypted $6$RMPTNRo5P7zulbAR$ueRnuz70DX2Z8Pb2oCgfXv4qXOjkdZlaMnC.CoLheFrUF4BEjRIX8rF.2QpPmj2F0a7iOBM3tUL3tyZNKsDp50
# System services
services --enabled="chronyd"
# System timezone
timezone Europe/Bucharest --isUtc
# System bootloader configuration
bootloader --location=mbr --boot-drive=sda
# Partition clearing information
clearpart --none --initlabel
# Disk partitioning information
part pv.20 --fstype="lvmpv" --ondisk=sda --size=19979
part /boot --fstype="xfs" --ondisk=sda --size=500
volgroup centos --pesize=4096 pv.20
logvol /  --fstype="xfs" --grow --maxsize=51200 --size=1024 --name=root --vgname=centos
logvol swap  --fstype="swap" --size=2048 --name=swap01 --vgname=centos

%packages
@compat-libraries
@core
wget
net-tools
chrony

%end
การกำหนดค่า CentOS Kickstart
การกำหนดค่าเริ่มต้น

สำหรับตัวเลือกไฟล์ Kickstart และไวยากรณ์ขั้นสูงเพิ่มเติม โปรดอ่าน เอกสารประกอบการเริ่มต้น RHEL 7.

3. ก่อนพยายามใช้ไฟล์นี้สำหรับขั้นตอนการติดตั้ง คุณต้องตรวจสอบไฟล์โดยใช้ ksvalidator รวมอยู่ใน Pykickstartโดยเฉพาะอย่างยิ่งหากมีการปรับแต่งด้วยตนเอง ติดตั้ง Pykickstart และตรวจสอบไฟล์ Kickstart ของคุณโดยออกคำสั่งต่อไปนี้

# yum install pykickstart
# ksvalidator /var/ftp/pub/anaconda-ks.cfg
ติดตั้ง Pykickstart ใน CentOS
ติดตั้งแพ็คเกจ Pykickstart
ตรวจสอบการกำหนดค่าเริ่มต้น
ตรวจสอบไฟล์ Kickstart

4. การตรวจสอบครั้งสุดท้ายคือเพื่อให้แน่ใจว่าไฟล์ Kickstart สามารถเข้าถึงได้จากตำแหน่งเครือข่ายที่คุณระบุ – ในกรณีนี้ FTP Local Mirror Installation Source กำหนดโดยที่อยู่ URL ต่อไปนี้

ftp://192.168.1.25/pub/
ตรวจสอบ FTP มิเรอร์
ตรวจสอบ FTP มิเรอร์

ขั้นตอนที่ 2: เพิ่ม Kikstart Installation Label ให้กับ PXE Server Configuration

5. เพื่อเข้าถึง Automatic Installation of RHEL/CentOS 7 จาก PXE Menu เพิ่มป้ายกำกับต่อไปนี้ในการกำหนดค่าไฟล์เริ่มต้นของ PXE

# nano /var/lib/tftpboot/pxelinux.cfg/default

ข้อความที่ตัดตอนมาจากป้ายเมนู PXE

สำหรับ RHEL 7
label 5
menu label ^5) Install RHEL 7 x64 with Local Repo using Kickstart
kernel vmlinuz
append initrd=initrd.img inst.ks=ftp://192.168.1.25/pub/anaconda-ks.cfg inst.vnc inst.vncpassword=password
สำหรับ CentOS 7
label 5
menu label ^5) Install CentOS 7 x64 with Local Repo using Kickstart
kernel vmlinuz
append initrd=initrd.img inst.ks=ftp://192.168.1.25/pub/anaconda-ks.cfg inst.vnc inst.vncpassword=password
เพิ่ม Kickstart ไปที่เมนู PXE
เพิ่ม Kickstart ไปที่เมนู PXE

ดังที่คุณเห็นจากตัวอย่างนี้ การติดตั้งอัตโนมัติสามารถควบคุมได้ผ่าน VNC รหัสผ่าน (แทนที่รหัสผ่าน VNC ตามลำดับ) และไฟล์ Kickstart อยู่ในเซิร์ฟเวอร์ PXE และระบุโดย initrd พารามิเตอร์การบูต inst.ks= ตำแหน่งเครือข่าย FTP (แทนที่โปรโตคอลและตำแหน่งเครือข่ายตามนั้น หากคุณใช้วิธีการติดตั้งอื่นๆ เช่น HTTP, HTTPS, NFS หรือแหล่งการติดตั้งระยะไกลและไฟล์ Kickstart)

ขั้นตอนที่ 3: กำหนดค่าไคลเอนต์ให้ติดตั้ง RHEL/CentOS 7 โดยอัตโนมัติโดยใช้ Kickstart

6. ในการติดตั้ง RHEL/CentOS 7 โดยอัตโนมัติและดูแลกระบวนการติดตั้งทั้งหมด โดยเฉพาะบนเซิร์ฟเวอร์ที่ไม่มีส่วนหัว ให้สั่งเครื่องไคลเอนต์ของคุณจาก BIOS
บูตจากเครือข่าย รอสักครู่แล้วกด F8 และ Enters จากนั้นเลือก Kickstart จากเมนู PXE

เมนูบูต PXE
เมนูบูต PXE

7. หลังจาก kernel และ ramdisk โหลดและตรวจจับไฟล์ Kickstart กระบวนการติดตั้งเริ่มต้นโดยอัตโนมัติโดยไม่ต้องมีการแทรกแซงจากผู้ใช้ หากคุณต้องการดูขั้นตอนการติดตั้งให้เชื่อมต่อกับ a VNC ไคลเอนต์จากคอมพิวเตอร์เครื่องอื่นโดยใช้ที่อยู่ที่โปรแกรมติดตั้งมอบให้คุณและเพลิดเพลินกับการรับชม

การติดตั้ง CentOS 7 อัตโนมัติ
การติดตั้งระบบปฏิบัติการอัตโนมัติ
การติดตั้ง VNC Remote CentOs
เชื่อมต่อกับ VNC
เริ่มต้นการติดตั้ง CentOS อัตโนมัติ
เริ่มต้นการติดตั้งระบบปฏิบัติการอัตโนมัติ

8. หลังจากขั้นตอนการติดตั้งเสร็จสิ้น ให้เข้าสู่ระบบไปยังระบบที่ติดตั้งใหม่ด้วย root บัญชีและรหัสผ่านที่ใช้ในการติดตั้งครั้งก่อน (the
ที่คุณคัดลอกไฟล์ Kickstart) และเปลี่ยนรหัสผ่านรูทไคลเอนต์ของคุณโดยเรียกใช้ passwd.

เชื่อมต่อกับเซิร์ฟเวอร์ที่ติดตั้งใหม่
เชื่อมต่อกับเซิร์ฟเวอร์ที่ติดตั้งใหม่

นั่นคือทั้งหมด! Automatic Kickstart การติดตั้งมีประโยชน์มากมายสำหรับผู้ดูแลระบบในสภาพแวดล้อมที่พวกเขาต้องทำการติดตั้งระบบบนหลายเครื่องพร้อมกันในระยะเวลาอันสั้น โดยไม่จำเป็นต้องรบกวนกระบวนการติดตั้งด้วยตนเอง