So stellen Sie ein Linux-System automatisch mit PXE bereit

So stellen Sie ein Linux-System automatisch mit PXE bereit

Hintergrund

In einem Rechenzentrum sind Dutzende oder sogar Hunderte von Servern gleichzeitig online, und die Systeminstallation wird sehr mühsam. Nach der Installation des Systems sind viele Konfigurationen erforderlich, und der Arbeitsaufwand ist sehr groß. Viele Virtualisierungsplattformen wie VMware und FusionCompute werden normalerweise einzeln über ISO oder Herstellertools installiert, was problematisch ist.

PXE ist Pre-Boot Execution Environment
PXE-Technologie zum Booten über die Netzwerkkarte
1. BIOS-Unterstützung
2. Netzwerkkartenunterstützung
3. Es muss im BIOS aktiviert werden; die Server-BMC-Schnittstelle wird geöffnet, um einen Server bereitzustellen und DHCP+tftp auf dem Server zu installieren (DHCP ermöglicht die dynamische IP-Erfassung).
Netzwerkkarte DCHP erhält Informationen
Neben der Vergabe von IP-Adressen kann DHCP auch den Namen des Bootprogramms und die Adresse des TFTP-Servers bereitstellen. Das Bootprogramm wird in den Speicher geladen und gemäß der Konfigurationsdatei gebootet.

Ideen:

Konfigurieren Sie die Yum-Quelle, um Firewall und Selinux auszuschalten
Installieren Sie die Pakete DHCP, TFTP-Server, HTPPD und Syslinux. Konfigurieren Sie DHCP, TFTP-Server und starten Sie den Dienst. Installieren Sie das Paket system-config-kickstart und generieren Sie ein unbeaufsichtigtes Skript für KS. Konfigurieren Sie das Startmenü.

DHCP konfigurieren

Mounten Sie die CD

mount /dev/cdrom /media

Konfigurieren Sie die Yum-Quelle

. `vim dvd.repo
	[Entwicklung] #Definieren Sie den späteren Paketauswahlnamen = centos
	baseurl=Datei:///Medien
	gpgcheck=0
	aktiviert=1`

Bearbeiten von DHCP-Dateien (Dynamic Host Configuration Protocol)

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf #Kopieren Sie die Vorlage und überschreiben Sie die Conf-Datei
vim /etc/dhcp/dhcpd.conf #Wählen Sie zwischen globaler Konfiguration und Unterkonfiguration.
   Globale Konfigurations-#Optionsdefinitionen, die für alle unterstützten Netzwerke gelten ...
  7 Option Domänenname „example.org“;
  8 Optionen für Domänen-Nameserver: ns1.example.org, ns2.example.org;
  9 
 10 Standard-Leasingdauer 600;
 11 maximale Leasingdauer 7200;
 12 next-server 192.168.100.10; #Geben Sie an, wo sich der TFTP-Server befindet. 13 Dateiname „/pxelinux.0“; #Netzwerk-Boot-Programmdatei # Unterkonfiguration Eine etwas andere Konfiguration für ein internes Subnetz.
 47 #Subnetzkonfiguration 48 Subnetz 192.168.100.0 Netzmaske 255.255.255.0 {
 49 Bereich 192.168.100.11 192.168.100.30; #DHCP-Adresspool-Bereich 50 Option Domain-Name-Server 192.168.100.2; #DNS-Adresse (kann festgelegt werden)
 51 Option Domänenname "example.com"; #Domänenname-Adresse52 Option Router 192.168.100.1; #Gateway-Adresse53 Option Broadcast-Adresse 192.168.100.255; #Broadcast-Adresse54 Standard-Lease-Time 600; #Wie lange bleibt die während der Leasingdauer erhaltene IP erhalten?55 Maximale Leasingdauer 7200; #Wenn die Leasingdauer abläuft, kann sie weiterhin verwendet werden, sofern sie noch verfügbar ist, andernfalls wird sie automatisch recycelt56 }

TFTP-Konfiguration

[root@pxeserver ~]# vim /etc/xinetd.d/tftp 

# Standard: aus
# Beschreibung: Der TFTP-Server stellt Dateien über den einfachen Dateitransfer bereit \
# Protokoll. Das TFTP-Protokoll wird häufig zum Booten ohne Festplatte verwendet.
# Arbeitsstationen, Konfigurationsdateien auf netzwerkfähige Drucker herunterladen, \
# und um den Installationsvorgang für einige Betriebssysteme zu starten.
TFTP-Dienst
{
        socket_type = dgram
        Protokoll = UDP
        warten = ja
        Benutzer = root
        server = /usr/sbin/in.tftpd
        server_args = -s /var/lib/tftpboot
        deaktivieren = nein ##Ja in Nein ändern
        pro_Quelle = 11
        cps = 100 2
        Flags = IPv4
}

Syslinux-Konfiguration

yum stellt "*/pxelinux.0" bereit. ##Finden Sie heraus, zu welchem ​​Paket diese Datei gehört. yum install -y syslinux #Installieren Sie syslinux.
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ #Kopieren Sie die Datei pxelinux.0 in das TFTP-Stammverzeichnis mkdir -p /var/lib/tftpboot/pxelinux.cfg #Platzieren Sie die Standardkonfigurationsdatei cp /media/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default ##Bootdatei cp in das Verzeichnis pxeLinux.cfg cp /media/isolinux/* /var/lib/tftpboot/ #cpPlatzieren Sie die ISO-Datei und lesen Sie sie standardmäßig (das Installationsmenü wird angezeigt)
Es gibt keine Systemkonfiguration Standarddatei Menü Trennzeichen # fügen Sie eine leere Zeile ein
Menütrennzeichen # fügt eine leere Zeile ein
 
Label Linux
  Menübezeichnung ^CentOS 7.5 installieren #Menüverzeichnis Kernel vmlinuz #Kerneldatei anhängen initrd=initrd.img ks=http://192.168.100.10/ks/ks.cfg

Konfigurieren Sie httpd

yum install -y httpd
systemctl start httpd
systemctl aktiviere httpd
mkdir -p /var/www/html/centos
cp -rfv /media/* /var/www/html/centos/
[root@pxe-server ~]# cat /etc/yum.repos.d/dvd.repo 
[Entwicklung] #Definieren Sie den später ausgewählten Paketnamen = centos
Basis-URL = http://192.168.100.10/centos
gpgcheck=0
aktiviert=1

Konfigurieren von unbeaufsichtigten

yum install -y system-config-kickstart
system-config-kickstart #Start

Die spezifische Konfiguration der Datei ks.cfg ist wie folgt:

Bildbeschreibung hier einfügen

Bildbeschreibung hier einfügen
Bildbeschreibung hier einfügen
Bildbeschreibung hier einfügen
Bildbeschreibung hier einfügen
Bildbeschreibung hier einfügen
Bildbeschreibung hier einfügen
Bildbeschreibung hier einfügen
Das Softwarepaket kann je nach Bedarf ausgewählt werden. Ich habe mich hier für die Minimalinstallation entschieden, also für ein Basispaket
Schreiben Sie Skripte, um Funktionen entsprechend Ihren Anforderungen zu implementieren

Dies ist das Ende dieses Artikels über die Automatisierung der Bereitstellung von Linux-Systemen mit PXE. Weitere Informationen zur automatisierten Bereitstellung von Linux mit PXE finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung der unbeaufsichtigten PXE+Kickstart-Installation des Betriebssystems unter CentOS 6.4
  • VMware implementiert den detaillierten Prozess der unbeaufsichtigten PXE+Kickstart-Installation des Centos7-Systems
  • Detailliertes Tutorial zur automatischen Installation von CentOS7.6 mit PXE
  • PXE-Kickstart - Installation des automatisierten Bereitstellungssystems

<<:  Detaillierte Erklärung der Homologie und der Domänenübergreifendkeit, die für Front-End-Interviews erforderlich sind

>>:  Detaillierte Erklärung zur Verwendung des <meta>-Tags in HTML

Artikel empfehlen

Node.js erstellt ein einfaches Crawler-Case-Tutorial

Vorbereitung Zuerst müssen Sie nodejs herunterlad...

Mit vsftp einen FTP-Server unter Linux aufbauen (mit Parameterbeschreibung)

einführen In diesem Kapitel wird hauptsächlich de...

So kapseln Sie Axios einfach in Vue

Axios in Vue einfügen importiere Axios von „Axios...

Die Grundprinzipien und die detaillierte Verwendung des Ansichtsfensters

1. Übersicht über das Ansichtsfenster Mobile Brow...

mysql installer web community 5.7.21.0.msi grafik-tutorial zur installation

In diesem Artikelbeispiel wird der spezifische Co...

Analyse des rel-Attributs in HTML

.y { background: url(//img.jbzj.com/images/o_y.pn...

Kann die wiederholbare Leseebene von MySQL Phantomlesevorgänge lösen?

Einführung Als ich mehr über die Datenbanktheorie...

Leitfaden zum Schreiben von HTML-Code

Gängige Konventions-Tags Selbstschließende Tags, ...

Zusammenfassung des Verständnisses des virtuellen DOM in Vue

Es handelt sich im Wesentlichen um ein allgemeine...

Detaillierte Erklärung von Prototypen und Prototypenketten in JavaScript

Inhaltsverzeichnis Prototyp-Kettendiagramm Grundl...

Lösen Sie das Problem des Syn Flooding in der MySQL-Datenbank

Der SYN-Angriff ist die häufigste und am leichtes...