호스트가 레거시 BIOS 또는 UEFI를 사용하는 경우 PXE(Preboot Execution Environment)를 사용하여 네트워크 디바이스에서 ESXi 호스트를 부팅할 수 있습니다.

또는 ESXi 호스트가 네이티브 UEFI HTTP를 지원하는 경우 HTTP(Hypertext Transfer Protocol)를 사용하여 네트워크 디바이스에서 호스트를 부팅할 수 있습니다. ESXi는 플래시 메모리 또는 로컬 하드 드라이브에 설치하는 데 사용되는 ISO 형식으로 배포됩니다. 파일을 추출하고 네트워크 인터페이스를 통해 부팅할 수 있습니다.

PXE는 DHCP(Dynamic Host Configuration Protocol) 및 TFTP(Trivial File Transfer Protocol)를 사용하여 네트워크를 통해 운영 체제를 부팅합니다.

PXE 부팅에는 몇 가지 네트워크 인프라스트럭처와 PXE 지원 네트워크 어댑터가 있는 시스템이 필요합니다. ESXi를 실행할 수 있는 대부분의 시스템에는 PXE 부팅을 수행할 수 있는 네트워크 어댑터가 있습니다.

네이티브 UEFI HTTP는 DHCP 및 HTTP를 사용하여 네트워크를 통해 부팅합니다. UEFI HTTP 부팅을 사용하려면 네트워크 인프라, HTTP 부팅 기능이 포함된 ESXi 호스트의 UEFI 펌웨어 버전 및 UEFI 네트워킹을 지원하는 네트워크 어댑터가 필요합니다.

HTTP를 사용하여 부팅하면 TFTP를 사용하는 것보다 더 빠르고 안정적입니다. 이는 기본 제공 스트리밍 및 손실 패킷 복구와 같은 HTTP의 기초가 되는 TCP 프로토콜의 기능 때문입니다. ESXi 호스트가 네이티브 UEFI HTTP를 지원하지 않는 경우에는 부팅 프로세스에 iPXE HTTP를 사용할 수 있습니다.

참고: 레거시 BIOS 펌웨어를 통한 네트워킹 부팅은 IPv4를 통해서만 가능합니다. UEFI BIOS 펌웨어가 포함된 네트워크 부팅은 IPv4 또는 IPv6을 통해 가능합니다.

네트워크 부팅 설치 프로세스 개요

네트워크 인터페이스에서 ESXi 호스트를 부팅할 수 있습니다. 네트워크 부팅 프로세스는 대상 호스트가 레거시 BIOS 또는 UEFI 펌웨어를 사용하고 있는지 여부 및 부팅 프로세스가 PXE TFTP, iPXE HTTP 또는 UEFI HTTP를 사용하는지 여부에 따라 다릅니다.

대상 호스트를 부팅하면 환경의 다른 서버와 상호 작용하여 네트워크 어댑터, 부트 로더, 커널, 커널의 IP 주소를 비롯해 최종적으로 설치 스크립트를 가져옵니다. 모든 구성 요소가 갖춰지면 다음 그림에 표시된 대로 설치가 시작됩니다.

그림 1. PXE 부팅 설치 프로세스 개요
ESXi 호스트, DHCP 서버, TFTP 서버, 웹 서버 및 스크립트 디포 간의 상호 작용 흐름입니다.

ESXi 호스트와 다른 서버 사이의 상호 작용은 다음과 같이 진행됩니다.

  1. 사용자가 대상 ESXi 호스트를 부팅합니다.
  2. 대상 ESXi 호스트가 DHCP 요청을 수행합니다.
  3. DHCP 서버는 IP 정보, TFTP 또는 HTTP 서버의 위치, 초기 네트워크 부트 로더의 파일 이름 또는 URL로 응답합니다.
  4. ESXi 호스트가 TFTP 또는 HTTP 서버에 연결되고 DHCP 서버가 지정한 파일 이름 또는 URL을 요청합니다.
  5. TFTP 또는 HTTP 서버가 네트워크 부트 로더를 전송하고 ESXi 호스트가 이를 실행합니다. 초기 부트 로더는 서버에서 추가 부트 로더 구성 요소를 로드할 수 있습니다.
  6. 부트 로더가 TFTP 또는 HTTP 서버에서 구성 파일을 검색하고 구성 파일에 지정된 대로 커널 및 다른 ESXi 구성 요소를 다운로드하고 ESXi 호스트에서 커널을 부팅합니다.
  7. 설치 관리자가 구성 파일에 지정된 대로 kickstart 스크립트를 사용하여 또는 대화형으로 실행됩니다.

네트워크 부팅 배경 정보

네트워크 부팅 프로세스를 이해하면 문제를 해결하는 데 도움이 될 수 있습니다.

TFTP 서버

TFTP(Trivial File Transfer Protocol)는 FTP 서비스와 유사하며 일반적으로 네트워크 부팅 시스템에만 사용되거나 라우터와 같은 네트워크 디바이스에 펌웨어를 로드하는 데만 사용됩니다. TFTP는 Linux 및 Windows에서 사용할 수 있습니다.
  • 대부분의 Linux 배포에는 tftp-hpa 서버의 복사본이 포함됩니다. 지원되는 솔루션이 필요하다면 벤더로부터 지원되는 TFTP 서버를 구매하십시오. VMware 마켓플레이스에서 패키징된 장치 중 하나에서 TFTP를 구할 수도 있습니다.
  • TFTP 서버가 Microsoft Windows 호스트에서 실행되는 경우 tftpd32 버전 2.11 이상을 사용합니다. http://tftpd32.jounin.net/의 내용을 참조하십시오.

SYSLINUX 및 PXELINUX

레거시 BIOS 환경에서 PXE를 사용하는 경우에는 다양한 부팅 환경을 이해해야 합니다.
  • SYSLINUX는 레거시 BIOS 펌웨어를 실행하는 시스템을 위한 오픈 소스 부팅 환경입니다. BIOS 시스템용 ESXi 부트 로더인 mboot.c32는 SYSLINUX 플러그인으로 실행됩니다. 디스크, ISO 이미지, 네트워크 등 여러 종류의 미디어에서 부팅되도록 SYSLINUX를 구성할 수 있습니다. SYSLINUX 패키지는 http://www.kernel.org/pub/linux/utils/boot/syslinux/에 있습니다.
  • PXELINUX는 PXE 표준에 따라 TFTP 서버에서 부팅하기 위한 SYSXLINUX 구성입니다. PXELINUX를 사용하여 ESXi 설치 관리자를 부팅하면 pxelinux.0 이진 파일, mboot.c32, 구성 파일, 커널 및 기타 파일이 TFTP를 통해 전송됩니다.
참고: VMware는 mboot.c32 플러그인을 SYSLINUX 버전 3.86과 작동하도록 구축하며 이 버전만 사용하여 PXE 부팅을 테스트합니다. 다른 버전은 호환되지 않을 수 있습니다. " VMware vSphere Hypervisor에 대한 오픈 소스 공개 패키지" 에는 SYSLINUX 버전 3.86에 대한 버그 수정이 포함되어 있습니다.

iPXE

iPXE는 HTTP 구현을 제공하는 오픈 소스 소프트웨어입니다. 소프트웨어를 사용하여 초기 부팅을 수행할 수 있습니다. 자세한 내용은 https://ipxe.org/의 내용을 참조하십시오.

VMware에는 Auto Deploy의 일부로 iPXE 빌드가 포함됩니다. 이 빌드의 소스 트리는 "VMware vCenter Server에 대한 오픈 소스 공개 패키지" 에 제공됩니다.

UEFI PXE 및 UEFI HTTP

대부분의 UEFI 펌웨어는 TFTP 서버에서 부팅할 수 있도록 PXE를 기본적으로 지원합니다. 펌웨어는 UEFI 시스템용 ESXi 부트 로더인 mboot.efi를 직접 로드할 수 있습니다. PXELINUX 같은 추가적인 소프트웨어는 필요하지 않습니다.

일부 UEFI 펌웨어는 네이티브 UEFI HTTP 부팅을 지원합니다. 이 기능은 UEFI 규격 버전 2.5에서 도입되었습니다. 펌웨어는 iPXE와 같은 추가 소프트웨어 없이 HTTP 서버에서 ESXi 부트 로더를 로드할 수 있습니다.

참고: Apple Macintosh 제품에는 PXE 부팅 기능이 지원되지 않습니다. 이러한 제품에는 Apple 전용 프로토콜을 통한 네트워크 부팅 지원 기능이 대신 포함됩니다.

네트워크 부팅의 대안

다양한 호스트에서 다른 소프트웨어를 네트워크 부팅하는 데 대한 대안으로 다음과 같은 방법을 사용할 수 있습니다.
  • 호스트의 MAC 주소 또는 기타 조건에 따라 서로 다른 초기 부트 로더 파일 이름을 제공하도록 DHCP 서버를 구성합니다. 자세한 내용은 사용 중인 DCHP 서버의 설명서를 참조하십시오.
  • MAC 주소 또는 다른 조건에 따라 다음 부트 로더를 선택하는 iPXE 구성 파일과 함께 iPXE를 초기 부트 로더로 사용합니다.

PXELINUX 구성 파일

레거시 BIOS 시스템에서 ESXi 설치 관리자를 부팅하려면 PXELINUX 구성 파일이 필요합니다. 구성 파일은 시작 시 대상 ESXi호스트에 표시되는 메뉴를 정의합니다.

이 섹션에서는 PXELINUX 구성 파일에 대한 일반적인 정보를 제공합니다.

자세한 구문 정보는 SYSLINUX 웹 사이트(http://www.syslinux.org/)를 참조하십시오.

필수 파일

PXE 구성 파일에는 다음 파일의 경로를 반드시 포함해야 합니다.

  • mboot.c32는 부트 로더입니다.
  • boot.cfg는 부트 로더 구성 파일입니다.

boot.cfg 파일 정보 항목을 참조하십시오.

PXE 구성 파일의 이름

PXE 구성 파일의 이름으로 다음 옵션 중 하나를 선택할 수 있습니다.

  • 01-mac_address_of_target_ESXi_host. 예: 01-23-45-67-89-0a-bc
  • 16진수 표기법으로 지정한 대상 ESXi 호스트 IP 주소.
  • default
초기 부팅 파일 pxelinux.0이 다음 순서로 PXE 구성 파일을 로드하려고 시도합니다.
  1. 먼저 대상 ESXi 호스트의 MAC 주소에 ARP 형식 코드(이더넷의 경우 01)를 접두사로 사용하여 시도합니다.
  2. 이 작업이 실패하면 대상 ESXi 시스템 IP 주소의 16진수 표기를 사용하여 다시 시도합니다.
  3. 그런 후 마지막으로 이름이 default인 파일을 로드하려고 시도합니다.

PXE 구성 파일의 위치

파일을 TFTP 서버의 /tftpboot/pxelinux.cfg에 저장합니다.

예를 들어 TFTP 서버의 /tftpboot/pxelinux.cfg/01-00-21-5a-ce-40-f6 경로에 파일을 저장할 수 있습니다. 대상 ESXi 호스트에 있는 네트워크 어댑터의 MAC 주소는 00-21-5a-ce-40-f6입니다.