Documentation for a newer release is available. View Latest

Menyiapkan Suatu Server Instalasi

Lampiran ini ditujukan bagi pengguna dengan pengalaman Linux sebelumnya. Bila Anda pengguna baru, Anda mungkin ingin memasang memakai media boot minimal atau DVD distribusi.

Ringkasan Instalasi PXE

Preboot Execution Environment, atau PXE, adalah suatu teknologi yang memungkinkan komputer boot secara langsung dari sumber daya yang disediakan melalui jaringan. Memasang Fedora melalui jaringan berarti Anda tidak perlu membuat media, dan Anda dapat memasang ke beberapa komputer atau mesin virtual secara simultan. Proses tersebut melibatkan sejumlah komponen dan fitur yang bekerja bersama untuk menyediakan sumber daya yang diperlukan.

Komputer berkemampuan PXE

Kebanyakan komputer modern memiliki kapabilitas boot jaringan. Biasanya, suatu tombol fungsi yang ditekan selama boot akan memunculkan suatu menu pemilihan boot. Dalam lingkungan yang dirancang untuk administrasi tanpa pengawasan, sistem seringkali dikonfigurasi agar pertama kali mencoba boot dari jaringan, lalu boot dari penyimpanan lokal, dan server instalasi dikonfigurasi untuk hanya menawarkan instalasi ketika diperlukan. Manual komputer Anda akan memberikan instruksi spesifik tentang menata prioritas boot.

Server DHCP

Ketika suatu sistem meminta sebuah alamat selama boot jaringan, server DHCP juga menyediakan lokasi berkas untuk boot. Suatu jaringan mesti hanya punya satu server DHCP.

Server TFTP

Karena lingkungan pra-boot sangat sederhana, berkas-berkas mesti disediakan dalam cara yang sangat sederhana. Trivial File Transfer Protocol, atau TFTP, menyediakan sistem dengan bootloader yang diperlukan untuk melanjutkan proses instalasi.

Bootloader

Karena tugas mem-boot suatu sistem operasi terlalu rumit bagi lingkungan pra-boot, suatu bootloader dipakai untuk memuat kernel dari berkas-berkas terkait. Itu juga menyediakan informasi konfigurasi ke installer, dan dapat menawarkan sebuah menu untuk memilih dari konfigurasi yang berbeda.

Kernel dan Initramfs

Kernel adalah inti dari setiap sistem operasi Linux, dan initramfs menyediakan kernel dengan alat dan sumber daya yang diperlukan. Berkas-berkas ini juga disediakan oleh tftp.

Repositori paket

Repositori Fedora harus tersedia untuk instalasi. Contoh di bagian ini menggunakan cermin Fedora publik sebagai sumber repositori, tetapi Anda juga dapat menggunakan repo pada jaringan lokal yang disediakan oleh NFS, FTP, atau HTTP. Repositori dapat dikonfigurasi menggunakan opsi boot inst.repo=; lihat Menentukan Sumber Instalasi untuk detailnya.

Konfigurasi Server DHCP

Memasang dan mengonfigurasi dhcpd
  1. Memasang paket server dhcp.

    # dnf install dhcp
  2. Buat konfigurasi sederhana untuk server dhcp di /etc/dhcp/dhcpd.conf

    subnet 192.168.1.0 netmask 255.255.255.0 {
    authoritative;
    default-lease-time 600;
    max-lease-time 7200;
    ddns-update-style none;
    
    option domain-name-servers 192.168.1.1;
    option routers 192.168.1.1;
    
    }
  3. Uji konfigurasi Anda dan atasi masalah apa pun yang Anda temukan.

    systemctl start dhcpd
    journalctl --unit dhcpd --since -2m --follow
  4. Tambahkan entri untuk mengarahkan klien ke bootloader mereka dan server yang menyediakannya ke konfigurasi subnet Anda di /etc/dhcp/dhcp/dhcpd.conf. Karena klien DHCP menyediakan server dengan informasi identifikasi bersama dengan permintaan alamat mereka, klien BIOS dan klien UEFI masing-masing dapat diarahkan ke bootloader yang benar. Menggunakan kode opsi arsitektur prosesor terbaru, yang dapat ditemukan di halaman pendaftaran IANA DHCPv6, memungkinkan beberapa arsitektur untuk berbagi satu server DHCP.

    # refer to RFC4578 & IANA DHCPv6 for possible arch option values
    option arch code 93 = unsigned integer 16;
    
    subnet 192.168.1.0 netmask 255.255.255.0 {
    if option arch = 00:07 {
    # x64 UEFI
    filename "uefi/shimx64.efi";
    next-server 192.168.1.2;
    } else if option arch = 00:0b {
    # aarch64 UEFI
    filename "uefi/shimaa64.efi";
    server-name "192.168.1.2";
    } else {
    filename "pxelinux.0";
    next-server 192.168.1.2;
    }
    
    
    ...
  5. Mulai ulang layanan dhcp untuk memeriksa konfigurasi dan membuat perubahan sesuai kebutuhan.

    systemctl restart dhcpd
    journalctl --unit dhcpd --since -2m --follow

Memasang server tftp

Memasang server tftp
  1. Memasang paket server tftp.

    # dnf install tftp-server
  2. Mulai dan aktifkan soket tftp. systemd akan secara otomatis memulai layanan tftpd bila diperlukan.

    # systemctl start tftp.socket
    # systemctl enable tftp.socket

Menyediakan dan mengonfigurasi bootloader untuk klien PXE

Mendapatkan berkas bootloader
  1. Dapatkan bootloader syslinux untuk klien BIOS.

    1. Instal paket syslinux.

      # dnf install syslinux
    2. Buat direktori untuk berkas bootloader, dan buat mereka tersedia di sana.

      # mkdir -p /var/lib/tftpboot/pxelinux.cfg
      # cp /usr/share/syslinux/{pxelinux.0,menu.c32,vesamenu.c32,ldlinux.c32,libcom32.c32,libutil.c32} /var/lib/tftpboot/
  2. Mendapatkan berkas bootloader untuk sistem UEFI

    1. Pasang paket shim-x64 dan grub2-efi-x64. Jika server Anda adalah sistem BIOS, Anda harus menginstal paket ke root instal sementara. Menginstalnya langsung pada mesin BIOS akan mencoba mengkonfigurasi sistem untuk boot UEFI dan menyebabkan masalah.

      # dnf install shim-x64 grub2-efi-x64 --installroot=/tmp/fedora --releasever 33
    2. Buat direktori untuk berkas bootloader, dan buat mereka tersedia di sana.

      # mkdir -p /var/lib/tftpboot/uefi
      # cp /tmp/fedora/boot/efi/EFI/fedora/{shimx64.efi,grubx64.efi} /var/lib/tftpboot/uefi/
Mengonfigurasi bootloader klien
  1. Buat menu boot untuk klien BIOS di /var/lib/tftpboot/pxelinux.cfg/default.

    default vesamenu.c32
    prompt 1
    timeout 600
    
    label local
    menu label Boot from ^local drive
    menu default
    localboot 0xffff
    
    label linux
    menu label ^Install Fedora 33 64-bit
    kernel f33/vmlinuz
    append initrd=f33/initrd.img inst.stage2=https://download.fedoraproject.org/pub/fedora/linux/releases/33/Server/x86_64/os/ ip=dhcp
    
    label server
    menu label ^Install Fedora 33 ( Minimal Image )
    kernel f33/vmlinuz
    append initrd=f33/initrd.img inst.stage2=https://download.fedoraproject.org/pub/fedora/linux/releases/33/Server/x86_64/os/ ip=dhcp ks=https://example.com/fedora/kickstarts/minimal.ks
  2. Buat menu boot untuk klien UEFI di /var/lib/tftpboot/uefi/grub.cfg.

    function load_video {
    	insmod efi_gop
    	insmod efi_uga
    	insmod video_bochs
    	insmod video_cirrus
    	insmod all_video
    }
    
    load_video
    set gfxpayload=keep
    insmod gzio
    
    menuentry 'Exit this grub' {
            exit
    }
    
    menuentry 'Install Fedora 64-bit'  --class fedora --class gnu-linux --class gnu --class os {
    	linux $fw_path/f33/vmlinuz ip=dhcp inst.repo=https://download.fedoraproject.org/pub/fedora/linux/releases/33/Server/x86_64/os/
    	initrd $fw_path/f33/initrd.img
    }
    
    menuentry 'Install Fedora 33 Server'  --class fedora --class gnu-linux --class gnu --class os {
    	kernel f33/vmlinuz
    	append initrd=f33/initrd.img inst.repo=https://download.fedoraproject.org/pub/fedora/linux/releases/33/Server/x86_64/os/ ip=dhcp ks=https://git.fedorahosted.org/cgit/spin-kickstarts.git/plain/fedora-install-server.ks?h=f21
    }

Mendapatkan kernel dan initrd

Mengunduh kernel dan initrd
  1. Buat direktori untuk berkas.

    # mkdir -p /var/lib/tftpboot/f33
  2. Unduh kernel.

    # wget https://download.fedoraproject.org/pub/fedora/linux/releases/33/Server/x86_64/os/images/pxeboot/vmlinuz -O /var/lib/tftpboot/f33/vmlinuz
  3. Unduh initrd

    # wget https://download.fedoraproject.org/pub/fedora/linux/releases/33/Server/x86_64/os/images/pxeboot/initrd.img -O /var/lib/tftpboot/f33/initrd.img

Ringkasan Instalasi HTTP

Boot HTTP/HTTPS adalah teknologi yang memungkinkan komputer untuk boot langsung dari sumber daya yang disediakan melalui jaringan. Ketika digunakan bersama dengan HTTPS keaslian server divalidasi, dan penggunaan HTTP menawarkan mekanisme transportasi yang lebih andal daripada TFTP PXE. Memasang Fedora dengan cara ini menghindari membuat media instalasi dan memungkinkan beberapa komputer untuk dipasang secara bersamaan. Banyak implementasi UEFI saat ini, termasuk pengiriman firmware berbasis EDK2 dengan solusi virtualisasi fedora, dapat langsung boot dari sumber HTTP. Entri boot UEFI dapat ditambahkan secara manual yang menentukan sumber HTTP melalui menu firmware. Atau, server DHCP dapat secara otomatis menyediakan jalur HTTP yang diperlukan.

Mendaftarkan Sertifikat

Sementara banyak mesin yang mampu boot HTTPS maupun HTTP, mereka akan sering perlu pertama kali memiliki otoritas sertifikat (CA) didaftarkan. CA digunakan untuk memvalidasi sertifikat yang disajikan oleh server HTTPS. Hal ini dapat dilakukan dengan mendaftarkan berkas yang sesuai dari ca-sertifikat yang disediakan fedora untuk cermin publik atau sertifikat server boot HTTPS lokal.

Konfigurasi Server DHCP bagi HTTP

Instalasi dan konfigurasi server DHCP untuk boot HTTP identik dengan konfigurasi untuk PXE kecuali bahwa kita perlu mengubah kondisi opsi arch untuk klien HTTP

....

if option arch = 00:07 {
# x64 UEFI
filename "uefi/shim64.efi";
next-server 192.168.1.2;
} else if option arch = 00:0b {
# aarch64 UEFI
filename "uefi/shimaa64.efi";
server-name "192.168.1.2";
} else if option arch = 00:13 {
# aarch64 UEFI HTTP
option vendor-class-identifier "HTTPClient";
filename "http://download.fedoraproject.org/pub/fedora/linux/releases/33/Server/aarch64/os/images/boot.iso";
} else if option arch = 00:10 {
# x64 UEFI HTTP
option vendor-class-identifier "HTTPClient";
filename "http://download.fedoraproject.org/pub/fedora/linux/releases/33/Server/x86_64/os/images/boot.iso";
} else {
filename "pxelinux.0";
next-server 192.168.1.2;
}

...

Menyediakan repositori

Contoh di bagian ini menggunakan cermin Fedora publik sebagai sumber paket. Untuk instalasi yang lebih cepat, menginstal ke banyak sistem, atau lingkungan yang lebih terisolasi, Anda mungkin ingin mengelola sebuah repositori lokal.

Infrastruktur Fedora mengelola instruksi untuk mengonfigurasi cermin lokal di https://fedoraproject.org/wiki/Infrastructure/Mirroring. Metode yang disukai untuk menyediakan repositori adalah melalui HTTP, dan Anda dapat merujuk ke Panduan Administrator Sistem Fedora, yang tersedia di https://docs.fedoraproject.org/, untuk mengonfigurasi httpd.

Instalasi jaringan tingkat lanjut dengan Cobbler

Untuk lingkungan yang lebih kompleks, Fedora menawarkan server instalasi cobbler. Tugas-tugas seperti mengelola konfigurasi kickstart, mengkoordinasikan repositori, memelihara catatan dns, server dhcp, dan bahkan manifes puppet secara efektif diotomatisasi oleh cobbler.

Meskipun semua fitur yang disediakan oleh cobbler bisa relatif sederhana, fungsionalitas penuh dari alat canggih ini terlalu luas untuk didokumentasikan dalam panduan ini. Komunitas cobbler menyediakan dokumentasi di https://cobbler.github.io/ untuk menemani paket di repositori Fedora.

Atau, Anda mungkin juga tertarik pada Foreman. Anda dapat menemukan dokumentasi resmi serta unduhan di situs web proyek di https://www.theforeman.org/.