KEMBAR78
Introduction to Diskless Remote Boot in Linux | ODP
Introduction to  Diskless Remote Boot Linux Jazz Wang Yao-Tsung Wang [email_address]
At First, We have “ 4 + 1 ” PC Cluster It'd better be 2 n Manage Scheduler
Each PC has  AMD64 CPU  x 4, 512MB RAM  x 4, 120GB Disk  x 4, PCI-E Graphic Card  x 3
Total Resource =  AMD64 CPU x 20 ,   512MB RAM x 20 =  10 GB RAM , 120GB Disk x 20 =  2.4 TB Disk , PCI-E Graphic Card x 15
GiE Switch WAN Then, We connect 5 PCs with  Gigabit Ethernet  Switch 10/100/1000 MBps Add 1 NIC for WAN
LAN Switch WAN 4  Compute Nodes  will communicate via  LAN Switch . Only  Manage Node  have  Internet Access  for Security! Compute Nodes Manage Node
DRBL Client PCs LAN Switch WAN DRBL Server For  Effective Management , We'll install  DRBL Server  on  Manage Node , and  Compute Nodes become  DRBL Client .
1st, We install Base System of  GNU/Linux  on  Management Node . You can choose: Redhat, Fedora, CentOS, Mandriva, Ubuntu, Debian, ... Linux Kernel Kernel Module GNU Libc Boot Loader
2nd, We install  DRBL package   and configure it as  DRBL Server .  There are lots of service needed: SSHD, DHCPD, TFTPD, NFS Server, NIS Server, YP Server ... DHCPD TFTPD NFS Bash Perl Network Booting YP NIS Account Mgnt. DRBL Server based on existing Open Source  and keep  Hacking ! SSHD Linux Kernel Kernel Module GNU Libc Boot Loader
After running “ drblsrv -i ” &  “ drblpush -i ”, there will be  pxelinux, vmlinux-pex, initrd-pxe  in TFTPROOT, and different  configuration files  for  each Compute Node in NFSROOT DHCPD TFTPD NFS YP NIS SSHD pxelinux vmlinuz-pxe initrd-pxe Config. Files Ex. hostname Linux Kernel Kernel Module GNU Libc Boot Loader
BIOS PXE BIOS PXE BIOS PXE BIOS PXE 3nd, We enable  PXE  function in  BIOS  configuration. DHCPD TFTPD NFS YP NIS SSHD pxelinux vmlinuz-pxe initrd-pxe Config. Files Ex. hostname Linux Kernel Kernel Module GNU Libc Boot Loader
BIOS PXE BIOS PXE BIOS PXE BIOS PXE While Booting,  PXE  will query IP address from  DHCPD . TFTPD NFS YP NIS SSHD DHCPD pxelinux vmlinuz-pxe initrd-pxe Config. Files Ex. hostname Linux Kernel Kernel Module GNU Libc Boot Loader
IP 1 IP 2 IP 3 IP 4 While Booting,  PXE  will query IP address from  DHCPD . TFTPD NFS YP NIS SSHD DHCPD pxelinux vmlinuz-pxe initrd-pxe Config. Files Ex. hostname Linux Kernel Kernel Module GNU Libc Boot Loader
IP 1 IP 2 IP 3 IP 4 After PXE get its IP address, it will download booting files from  TFTPD . Config. Files Ex. hostname NFS YP NIS SSHD DHCPD pxelinux vmlinuz-pxe initrd-pxe TFTPD Linux Kernel Kernel Module GNU Libc Boot Loader
IP 1 IP 2 IP 3 IP 4 Config. Files Ex. hostname NFS YP NIS SSHD DHCPD pxelinux vmlinuz-pxe initrd-pxe TFTPD Linux Kernel Kernel Module GNU Libc Boot Loader pxelinux vmlinuz initrd pxelinux vmlinuz initrd pxelinux vmlinuz initrd pxelinux vmlinuz initrd
Config. Files Ex. hostname YP NIS SSHD DHCPD initrd initrd initrd IP 1 IP 2 IP 3 IP 4 pxelinux vmlinuz pxelinux vmlinuz pxelinux vmlinuz pxelinux vmlinuz initrd pxelinux vmlinuz-pxe initrd-pxe TFTPD After downloading booting files, scripts in  initrd-pxe  will config  NFSROOT  for each Compute Node. NFS Linux Kernel Kernel Module GNU Libc Boot Loader
YP NIS SSHD DHCPD initrd initrd initrd IP 1 IP 2 IP 3 IP 4 pxelinux vmlinuz pxelinux vmlinuz pxelinux vmlinuz pxelinux vmlinuz initrd pxelinux vmlinuz-pxe initrd-pxe TFTPD Config. Files Ex. hostname NFS Linux Kernel Kernel Module GNU Libc Boot Loader Config. 1 Config. 2 Config. 3 Config. 4
DRBL Server YP NIS DHCPD TFTPD NFS Bash Perl SSHD Applications  and  Services  will also deployed to each Compute Node  via  NFS  .... Bash Perl SSHD Bash Perl SSHD Bash Perl SSHD Bash Perl SSHD
DRBL Server DHCPD TFTPD With the help of  NIS  and  YP , You can login each Compute Node with the  Same ID / PASSWORD stored in DRBL Server!  NFS SSHD YP NIS SSHD SSHD SSHD SSHD SSH Client
Questions? Jazz Wang Yao-Tsung Wang [email_address]

Introduction to Diskless Remote Boot in Linux

  • 1.
    Introduction to Diskless Remote Boot Linux Jazz Wang Yao-Tsung Wang [email_address]
  • 2.
    At First, Wehave “ 4 + 1 ” PC Cluster It'd better be 2 n Manage Scheduler
  • 3.
    Each PC has AMD64 CPU x 4, 512MB RAM x 4, 120GB Disk x 4, PCI-E Graphic Card x 3
  • 4.
    Total Resource = AMD64 CPU x 20 ,   512MB RAM x 20 = 10 GB RAM , 120GB Disk x 20 = 2.4 TB Disk , PCI-E Graphic Card x 15
  • 5.
    GiE Switch WANThen, We connect 5 PCs with Gigabit Ethernet Switch 10/100/1000 MBps Add 1 NIC for WAN
  • 6.
    LAN Switch WAN4 Compute Nodes will communicate via LAN Switch . Only Manage Node have Internet Access for Security! Compute Nodes Manage Node
  • 7.
    DRBL Client PCsLAN Switch WAN DRBL Server For Effective Management , We'll install DRBL Server on Manage Node , and Compute Nodes become DRBL Client .
  • 8.
    1st, We installBase System of GNU/Linux on Management Node . You can choose: Redhat, Fedora, CentOS, Mandriva, Ubuntu, Debian, ... Linux Kernel Kernel Module GNU Libc Boot Loader
  • 9.
    2nd, We install DRBL package and configure it as DRBL Server . There are lots of service needed: SSHD, DHCPD, TFTPD, NFS Server, NIS Server, YP Server ... DHCPD TFTPD NFS Bash Perl Network Booting YP NIS Account Mgnt. DRBL Server based on existing Open Source and keep Hacking ! SSHD Linux Kernel Kernel Module GNU Libc Boot Loader
  • 10.
    After running “drblsrv -i ” & “ drblpush -i ”, there will be pxelinux, vmlinux-pex, initrd-pxe in TFTPROOT, and different configuration files for each Compute Node in NFSROOT DHCPD TFTPD NFS YP NIS SSHD pxelinux vmlinuz-pxe initrd-pxe Config. Files Ex. hostname Linux Kernel Kernel Module GNU Libc Boot Loader
  • 11.
    BIOS PXE BIOSPXE BIOS PXE BIOS PXE 3nd, We enable PXE function in BIOS configuration. DHCPD TFTPD NFS YP NIS SSHD pxelinux vmlinuz-pxe initrd-pxe Config. Files Ex. hostname Linux Kernel Kernel Module GNU Libc Boot Loader
  • 12.
    BIOS PXE BIOSPXE BIOS PXE BIOS PXE While Booting, PXE will query IP address from DHCPD . TFTPD NFS YP NIS SSHD DHCPD pxelinux vmlinuz-pxe initrd-pxe Config. Files Ex. hostname Linux Kernel Kernel Module GNU Libc Boot Loader
  • 13.
    IP 1 IP2 IP 3 IP 4 While Booting, PXE will query IP address from DHCPD . TFTPD NFS YP NIS SSHD DHCPD pxelinux vmlinuz-pxe initrd-pxe Config. Files Ex. hostname Linux Kernel Kernel Module GNU Libc Boot Loader
  • 14.
    IP 1 IP2 IP 3 IP 4 After PXE get its IP address, it will download booting files from TFTPD . Config. Files Ex. hostname NFS YP NIS SSHD DHCPD pxelinux vmlinuz-pxe initrd-pxe TFTPD Linux Kernel Kernel Module GNU Libc Boot Loader
  • 15.
    IP 1 IP2 IP 3 IP 4 Config. Files Ex. hostname NFS YP NIS SSHD DHCPD pxelinux vmlinuz-pxe initrd-pxe TFTPD Linux Kernel Kernel Module GNU Libc Boot Loader pxelinux vmlinuz initrd pxelinux vmlinuz initrd pxelinux vmlinuz initrd pxelinux vmlinuz initrd
  • 16.
    Config. Files Ex.hostname YP NIS SSHD DHCPD initrd initrd initrd IP 1 IP 2 IP 3 IP 4 pxelinux vmlinuz pxelinux vmlinuz pxelinux vmlinuz pxelinux vmlinuz initrd pxelinux vmlinuz-pxe initrd-pxe TFTPD After downloading booting files, scripts in initrd-pxe will config NFSROOT for each Compute Node. NFS Linux Kernel Kernel Module GNU Libc Boot Loader
  • 17.
    YP NIS SSHDDHCPD initrd initrd initrd IP 1 IP 2 IP 3 IP 4 pxelinux vmlinuz pxelinux vmlinuz pxelinux vmlinuz pxelinux vmlinuz initrd pxelinux vmlinuz-pxe initrd-pxe TFTPD Config. Files Ex. hostname NFS Linux Kernel Kernel Module GNU Libc Boot Loader Config. 1 Config. 2 Config. 3 Config. 4
  • 18.
    DRBL Server YPNIS DHCPD TFTPD NFS Bash Perl SSHD Applications and Services will also deployed to each Compute Node via NFS .... Bash Perl SSHD Bash Perl SSHD Bash Perl SSHD Bash Perl SSHD
  • 19.
    DRBL Server DHCPDTFTPD With the help of NIS and YP , You can login each Compute Node with the Same ID / PASSWORD stored in DRBL Server! NFS SSHD YP NIS SSHD SSHD SSHD SSHD SSH Client
  • 20.
    Questions? Jazz WangYao-Tsung Wang [email_address]