GNU/Linux >> Belajar Linux >  >> Linux

Booting PXE dengan perangkat keras UEFI dilanjutkan

Artikel ini adalah bagian dua dari dua seri pendek. Jika Anda melewatkannya, pastikan untuk membaca artikel pertama, Cara menyiapkan boot PXE untuk perangkat keras UEFI .

Pada artikel pertama, Anda membuat server PXE yang berfungsi, server DHCP yang dikonfigurasi untuk mengirimkan alamat IP ke sistem yang di-boot PXE, dan server TFTP untuk mengirimkan sistem yang dapat di-boot dan citra ISO. Artikel ini melanjutkan tugas menyelesaikan lingkungan Anda dan menyertakan beberapa kiat pemecahan masalah saat terjadi kesalahan.

Penyiapan HTTP

Server HTTP diperlukan untuk menyediakan server baru dengan Kickstart file serta OS yang akan diinstal. Dimungkinkan untuk menyediakan file-file ini melalui HTTPS, tetapi untuk sebagian besar server baru, untuk kesederhanaan, HTTP digunakan.

Berikut adalah langkah-langkah untuk menyiapkan server HTTP:

1- Instal HTTP server:

# yum install -y httpd

2- Pasang image ISO Red Hat Virtualization Host (jika tidak dipasang):

# mount -t iso9660 /path/iso-file.iso /mnt -o loop,ro

3- Salin gambar Squash dan file ISO ke lokasi target:

# mkdir /var/www/html/rhv4.3/{ISO,image}

# cp -a /mnt /var/www/html/rhv4.3/ISO

# cp /mnt/Packages/redhat-virtualization-host-image-update* /tmp

# rpm2cpio redhat-virtualization-host-image-update* | cpio -idmv

# cp /tmp/usr/share/redhat-virtualization-host-version_number_version.squashfs.img /var/www/html/rhv4.3/image

4- Salin Kickstart file ke lokasi target:

# mkdir /var/www/html/kickstarts/

# vi /var/www/html/kickstarts/ks.cfg 🡪 Create a new file called ks.cfg

5- Aktifkan dan mulai httpd layanan:

#systemctl enable httpd; systemctl start httpd

File pembuka

Berikut adalah contoh Kickstart file yang dapat digunakan untuk menginstal OS RHVH. Red Hat sangat menyarankan penggunaan opsi "Secara otomatis mengkonfigurasi pembagian" di tujuan penginstalan.

lang en_US
keyboard us
eula --agreed
rootpw Redhat --plaintext

#platform x86, AMD64, or Intel EM64T
reboot
text
bootloader --location=mbr --append="rhgb quiet crashkernel=auto"
zerombr
liveimg --url=http:// 192.168.1.10/rhv4.3/image/redhat-virtualization-host-version_number_version.squashfs.img
clearpart --drives=sda --all
ignoredisk --only-use=sda
autopart --type=thinp

%post --erroronfail
nodectl init
%end

Keterangan:

1- URL di bawah ini disediakan oleh Red Hat dan dapat digunakan untuk membuat Kickstart customized yang disesuaikan berkas:

[https://access.redhat.com/labs/kickstartconfig/](https://access.redhat.com/labs/kickstartconfig/)

2- Di %post bagian Kickstart file, perintah Linux dapat ditambahkan untuk mengatur IP statis untuk ovirtmgmt serta nama host .

Opsi otomatisasi

Prosedur ini cocok untuk menginstal beberapa server, tetapi memerlukan perubahan manual. Namun, ini dapat sepenuhnya diotomatisasi dengan cara yang berbeda.

Otomatisasi berada di luar cakupan artikel ini, tetapi dua opsi berbeda untuk otomatisasi akan disebutkan di sini pada tingkat tinggi:

Menggunakan Ansible untuk mengotomatiskan pengaktifan server

Sebagian besar vendor HW sekarang memiliki Ansible modul untuk mengambil detail yang berbeda mengenai server, serta untuk menghidupkan dan mematikannya, jadi untuk mengotomatiskan instalasi OS, kita perlu membuat buku pedoman Ansible untuk melakukan hal berikut:

  1. Mainkan 1:Buat template Jinja2 untuk Kickstart file tempat IP statis dan nama host diganti dengan benar di bagian postingan, menggunakan file variabel yang memetakan alamat MAC antarmuka PXE ke IP statis dan nama host untuk setiap server,  lalu dorong Kickstart file ke lokasi yang relevan di server HTTP.
  2. Mainkan 2:Nyalakan server yang diperlukan dengan menggunakan alamat MAC antarmuka PXE.
  3. Mainkan 3:Selidiki server yang baru diinstal menggunakan IP statis sebelum pindah ke server lain untuk menginstal.

Pro:

  1. Tidak diperlukan aktivitas manual selain memperbarui file variabel jika ada server baru.

Kekurangan:

  1. Opsi ini memerlukan integrasi dengan API pengelolaan perangkat keras.
  2. Opsi ini dapat menginstal OS di satu server pada satu waktu (Anda hanya dapat memiliki satu file kickstart yang dihosting di server http pada satu waktu).

Menggunakan Ansible untuk memposting konfigurasi host setelah OS diinstal

Di sini, di dhcpd.conf kami mengkodekan alamat IP yang akan ditetapkan untuk setiap alamat MAC server baru di Jaringan Penyediaan. Selanjutnya, kami membuat file inventaris termasuk IP ini, serta membuat file variabel yang berisi nama host dan alamat IP statis untuk setiap server yang dipetakan ke alamat IP-nya di jaringan penyediaan. Terakhir, buat satu Ansible play untuk memposting konfigurasi server setelah OS diinstal.

Pro:

  1. Tidak ada ketergantungan pada modul Ansible dari vendor perangkat keras.
  2. Beberapa server dapat dikonfigurasi secara paralel.

Kekurangan:

  1. Tidak sepenuhnya otomatis seperti dhcpd.conf perlu diubah, serta variabel untuk server baru, harus ditambahkan. Selain itu, server harus dinyalakan secara manual.

[ Butuh lebih banyak tentang Ansible? Ikuti kursus tinjauan teknis gratis dari Red Hat. Ansible Essentials:Kesederhanaan dalam Ikhtisar Teknis Otomasi ]

Pengaturan firewall dan jaringan

Jika ada firewall antara server PXE dan Jaringan Penyedia, lalu lintas TFTP dan HTTP yang masuk dari Jaringan Penyedia menuju server PXE harus diizinkan. Lalu lintas ICMP dari server PXE menuju Jaringan Penyedia (server baru harus dapat di-ping dari server DHCP) juga harus diizinkan.

Lalu lintas SSH yang masuk dari Jaringan Penyedia menuju server PXE harus diaktifkan demi pemecahan masalah, seperti yang akan dijelaskan di bagian berikut.

Selain itu, mengikat antarmuka PXE pada server baru memperumit penyiapan, dan itu tidak diperlukan.

Dari server PXE, layanan DHCP, TFTP, dan HTTP harus diaktifkan oleh firewalld . Dengan asumsi bahwa layanan DHCP, TFTP, dan HTTP semuanya terletak di server yang sama, perintah berikut harus dijalankan:

# firewall-cmd --permanent --add-service=http --add-service=dhcp --add-service=tftp

# firewall-cmd –reload

Pemecahan masalah

Penyiapan PXE memerlukan upaya di awal, dan pemecahan masalah mungkin menjadi masalah karena kami tidak dapat berbuat banyak di server baru karena mereka belum memiliki OS. Berikut adalah beberapa petunjuk yang mungkin membantu dalam pemecahan masalah:

  1. Periksa apakah server dapat dijangkau melalui IP DHCP. Ini dapat dilakukan dengan mencari alamat IP DHCP yang relevan di /var/lib/dhcpd/dhcpd.leases (atau dengan menggunakan salah satu skrip Python yang tersedia di publik untuk mengurai file ini) dan kemudian melakukan ping.
  2. Gunakan tcpdump di server PXE untuk membantu pemecahan masalah.
  3. Mengumpulkan /run/initramfs/rdsosreport.txt log in jika instalasi server gagal.

Ini adalah bagian tersulit dalam pemecahan masalah. Jika penginstalan gagal, Anda tidak akan memiliki jaringan untuk mentransfer file ini, dan dukungan Red Hat tidak akan dapat membantu Anda tanpa file ini.

Ada banyak cara untuk mengumpulkan file ini, tetapi cara termudah adalah sebagai berikut:

  1. Boot server baru dari RHEL 7 iso.
  2. Pilih Penyelamatan pilihan.
  3. Tekan Shift+F2 untuk mendapatkan prompt shell.
  4. Gunakan fdisk untuk membuat partisi baru di /dev/sda jenis Linux.
  5. Lepaskan ISO.
  6. Mulai ulang server.
  7. Setelah penginstalan gagal dan Anda berada di prompt baris perintah Dracut, lakukan hal berikut:
#mkdir /mnt

#mount /dev/sda1 /mnt

#cp /run/initramfs/rdsosreport.txt /dev/sda1

#umount /dev/sda1
  1. Reboot server lagi dan ulangi langkah dari 1 hingga 3.
  2. Pasang /dev/sda1
#mkdir /mnt

#mount /dev/sda1 /mnt
  1. Di sini Anda memiliki dua opsi:
  • Dapatkan alamat IP DHCP dengan menggunakan:
#dhclient

#scp /mnt/rdsosreport.txt [email protected]:/root
  • Pasang direktori di laptop Anda sebagai partisi di server baru Anda, dan salin rdsosreport.txt ke partisi ini.

Menutup

Selamat telah mencapai titik ini. Anda sekarang memiliki sistem PXE yang berfungsi yang dapat menerapkan host RHV baru. Ingatlah untuk merujuk ke bagian pemecahan masalah, jika semuanya tidak berfungsi seperti yang diharapkan. Anda juga harus menyelesaikan setiap langkah seperti yang tertulis untuk berhasil mencapai titik ini. Periksa pekerjaan Anda karena ada banyak langkah terperinci. Semoga sukses dengan lingkungan baru Anda.

Referensi

  • Host Instalasi untuk Virtualisasi Red Hat
  • Mempersiapkan Instalasi Jaringan

Linux
  1. Menyiapkan boot HTTP UEFI dengan libvirt

  2. Ganti Baris Baru Dengan Nul?

  3. Perangkat Keras UEFA Dan Dual Booting Dengan Windows?

  1. Memulai dengan ls

  2. Izin File di Linux dengan Contoh

  3. vncserver gagal dengan "Memulai server VNC:tidak ada tampilan yang dikonfigurasi"

  1. Pantau server dengan Munin

  2. Filter dan optimalkan permintaan file statis dengan NGINX di Ubuntu 18.04

  3. Pratinjau gambar dengan ngx_http_image_filter_module