네트워크 부팅 설치

XenServer에서는 UEFI 모드를 사용하여 호스트를 부팅할 수 있습니다. UEFI 모드는 bootloader 및 운영 체제에 표준화된 다양한 기능 집합을 제공합니다. 이 기능을 사용하면 UEFI가 기본 부팅 모드인 호스트에 더욱 쉽게 XenServer를 설치할 수 있습니다.

다음 문서에서는 XenServer 호스트 설치의 PXE 및 UEFI 부팅을 사용할 수 있도록 TFTP 및 NFS, FTP 또는 HTTP 서버를 설정하는 것에 대해 설명합니다. 무인 설치를 실행할 수 있도록 지원하는 XML 응답 파일을 만드는 방법에 대해서도 설명합니다.

XenServer 설치를 위한 PXE 및 UEFI 환경 구성

XenServer 설치 미디어를 설정하기 전에 TFTP 및 DHCP 서버를 구성합니다. 다음 섹션에서는 PXE 및 UEFI 부팅을 위해 TFTP 서버를 구성하는 방법에 대해 설명합니다. 일반적인 설치 절차에 대해서는 공급업체 설명서를 참조하십시오.

참고:

XenServer 6.0에서는 MBR 디스크 파티션이 GPT(GUID 파티션 테이블)로 이동되었습니다. 일부 타사 PXE 배포 시스템에서는 호스트에 이미지를 배포하기 전에 컴퓨터 하드 디스크의 파티션 테이블을 읽으려고 할 수 있습니다.

배포 시스템이 GPT 파티션 체계와 호환되지 않고 GPT를 사용하는 XenServer 버전에서 하드 디스크가 이전에 사용된 경우 PXE 배포 시스템이 실패할 수 있습니다. 이 경우에는 디스크의 파티션 테이블을 삭제하면 해결할 수 있습니다.

TFTP 및 DHCP 서버 외에도 XenServer 설치 파일을 보관할 NFS, FTP 또는 HTTP 서버도 필요합니다. 이러한 서버는 하나의 서버에 함께 있을 수도 있고 네트워크의 다른 서버에 분산되어 있을 수도 있습니다.

또한 PXE 부팅할 각 XenServer 호스트에 PXE 부팅을 지원하는 이더넷 카드가 있어야 합니다.

다음 단계에서는 사용할 Linux 서버에 RPM 지원 기능이 있다고 가정합니다.

PXE 부팅을 지원하도록 TFTP 서버 구성

PXE 부팅을 지원하도록 TFTP 서버를 구성하려면:

  1. /tftpboot 디렉터리에 xenserver라는 디렉터리를 만듭니다.

  2. mboot.c32 디렉터리에 있는 pxelinux.0/usr/lib/syslinux 파일을 /tftboot 디렉터리로 복사합니다.

    참고:

    Citrix에서는 동일한 원본(예: 동일한 XenServer ISO)의 mboot.c32pxelinux.0 파일을 사용할 것을 권장합니다.

  3. XenServer 설치 미디어에서 루트 디렉터리의 install.img 파일과 /boot 디렉터리의 vmlinuzxen.gz 파일을 TFTP 서버의 새 /tftpboot/xenserver 디렉터리로 복사합니다.

  4. /tftboot 디렉터리에 pxelinux.cfg라는 디렉터리를 만듭니다.

  5. pxelinux.cfg 디렉터리에서 default라는 구성 파일을 만듭니다.

    이 파일의 내용은 PXE 부팅 환경을 구성하는 방법에 따라 달라집니다. 아래에는 두 개의 샘플 구성이 나와 있습니다. 첫 번째 예제 구성은 TFTP 서버에서 부팅되는 컴퓨터에서 설치를 시작합니다. 이 설치에는 수동 응답이 필요합니다. 두 번째 예제 구성은 무인 설치를 위한 것입니다.

    참고:

    다음 예제에서는 물리적 콘솔 tty0에서 설치 관리자를 실행하도록 구성하는 방법을 보여 줍니다. 다른 기본값을 사용하려면 사용하려는 콘솔이 맨 오른쪽에 지정되어 있는지 확인하십시오.

       default xenserver
       label xenserver
       kernel mboot.c32
       append /tftpboot/xenserver/xen.gz dom0_max_vcpus=2 \
         dom0_mem=1024M,max:1024M com1=115200,8n1 \
       console=com1,vga ---  /tftpboot/xenserver/vmlinuz \
       xencons=hvc console=hvc0 console=tty0 \
       ---  /tftpboot/xenserver/install.img
    

    지정된 URL의 응답 파일을 사용하여 무인 설치를 수행하는 샘플 구성은 다음과 같습니다.

    참고:

    응답 파일을 검색하는 데 사용할 네트워크 어댑터를 지정하려면 answerfile_device=ethX 또는 answerfile_device=MAC 매개 변수를 포함하고 이더넷 장치 번호나 장치의 MAC 주소를 지정합니다.

       default xenserver-auto
       label xenserver-auto
          kernel mboot.c32
          append /tftpboot/xenserver/xen.gz dom0_max_vcpus=2 \
          dom0_mem=1024M,max:1024M com1=115200,8n1 \
          console=com1,vga ---  /tftpboot/xenserver/vmlinuz \
         xencons=hvc console=hvc0 console=tty0 \
         answerfile=http://pxehost.example.com/answerfile \
         install ---  /tftpboot/xenserver/install.img
    

    PXE 구성 파일 내용에 대한 자세한 내용은 SYSLINUX 웹 사이트를 참조하십시오.

UEFI 부팅을 지원하도록 TFTP 서버 구성

UEFI 부팅을 지원하도록 TFTP 서버를 구성하려면:

  1. /tftpboot 디렉터리에 EFI/xenserver라는 디렉터리를 만듭니다.

  2. /EFI/xenserver/grubx64.efi를 부팅 파일로 제공하도록 DHCP 서버를 구성합니다.

  3. grub.cfg 파일을 만듭니다. 예:

    menuentry "XenServerInCloud Sphere Install (serial)" {
        multiboot2 /EFI/xenserver/xen.gz dom0_mem=1024M,max:1024M watchdog \
        dom0_max_vcpus=4 com1=115200,8n1 console=com1,vga
        module2 /EFI/xenserver/vmlinuz console=hvc0
        module2 /EFI/xenserver/install.img
    }
    
  4. grub.cfg 파일을 TFTP 서버의 /tftpboot/EFI/xenserver 디렉터리에 복사합니다.

  5. XenServer 설치 미디어에서 루트 디렉터리의 grubx64.efi, install.img 파일과 /boot 디렉터리의 vmlinuzxen.gz 파일을 TFTP 서버의 새 /tftpboot/EFI/xenserver 디렉터리로 복사합니다.

    참고

    다음 예제에서는 물리적 콘솔 tty0에서 설치 관리자를 실행하도록 구성하는 방법을 보여 줍니다. 다른 기본값을 사용하려면 사용하려는 콘솔이 맨 왼쪽에 지정되어 있는지 확인하십시오.

    default xenserver
    label xenserver
        kernel mboot.c32
        append /tftpboot/EFI/xenserver/xen.gz dom0_mem=1024M,max:1024M watchdog \
          dom0_max_vcpus=4 com1=115200,8n1 \
        console=com1,vga ---  /tftpboot/EFI/xenserver/vmlinuz \
        console=hvc0 console=tty0 \
        ---  /tftpboot/EFI/xenserver/install.img
    

    지정된 URL의 응답 파일을 사용하여 무인 설치를 수행하는 샘플 구성은 다음과 같습니다.

    참고

    응답 파일을 검색하는 데 사용해야 할 네트워크 어댑터를 지정하려면 answerfile_device=ethX 또는 answerfile_device=MAC 매개 변수를 포함하고 이더넷 장치 번호나 장치의 MAC 주소를 지정합니다.

    default xenserver-auto
    label xenserver-auto
       kernel mboot.c32
       append /tftpboot/EFI/xenserver/xen.gz dom0_mem=1024M,max:1024M watchdog \
          dom0_max_vcpus=4 com1=115200,8n1 \
          console=com1,vga ---  /tftpboot/EFI/xenserver/vmlinuz \
          console=hvc0 console=tty0 \
          answerfile=http://pxehost.example.com/answerfile \
          install ---  /tftpboot/EFI/xenserver/install.img
    

특정 운영 체제에 대한 자세한 내용은 서버 운영 체제 설명서를 참조하십시오. 여기서 제공하는 정보는 Red Hat, Fedora 및 기타 RPM 기반 배포에 사용할 수 있는 지침입니다.

HTTP, FTP 또는 NFS 서버에서 XenServer 설치 미디어를 설정하려면:

  1. 서버에서 HTTP, FTP 또는 NFS를 통해 XenServer 설치 미디어를 내보낼 수 있는 디렉터리를 만듭니다.

  2. XenServer 설치 미디어의 전체 내용을 HTTP, FTP 또는 NFS 서버에서 새로 만든 디렉터리로 복사합니다. 이 디렉터리가 설치 저장소가 됩니다.

    참고:

    XenServer 설치 미디어를 복사할 때 .treeinfo 파일을 새로 만든 디렉터리에 복사했는지 확인해야 합니다.

대상 시스템을 준비하려면:

  1. 시스템을 시작하고 부팅 메뉴(BIOS 프로그램에서 F12 키)로 들어갑니다.

  2. 이더넷 카드에서 부팅하는 옵션을 선택합니다.

  3. 그러면 설정된 설치 원본에서 시스템이 PXE 부팅되고 설치 스크립트가 시작됩니다. 응답 파일을 설정한 경우에는 설치가 무인으로 계속됩니다.

XenServer 설치 중에 보조 팩 설치

보조 팩은 제어 도메인(Dom0)에 소프트웨어를 설치하여 XenServer의 기능을 수정하고 확장하는 데 사용됩니다. 예를 들어 OEM 파트너는 SNMP 에이전트를 설치해야 하는 관리 도구 집합을 XenServer에 제공할 수 있습니다. 사용자는 초기 XenServer 설치 중에 또는 그 후에 언제든지 보조 팩을 추가할 수 있습니다.

XenServer 설치 중에 보조 팩을 설치하는 경우 개별 디렉터리에 각 보조 팩의 압축을 풉니다.

자동 공장 설치를 위해 OEM 파트너가 XenServer 설치 저장소에 보조 팩을 추가할 수 있는 기능도 있습니다.

무인 PXE 및 UEFI 설치용 응답 파일 만들기

무인 설치를 수행하려면 XML 응답 파일을 만듭니다. 다음은 응답 파일 예제입니다.

<?xml version="1.0"?>
   <installation srtype="ext">
      <primary-disk>sda</primary-disk>
      <guest-disk>sdb</guest-disk>
      <guest-disk>sdc</guest-disk>
      <keymap>us</keymap>
      <root-password>mypassword</root-password>
      <source type="url">http://pxehost.example.com/xenserver/</source>
      <post-install-script type="url">
      http://pxehost.example.com/myscripts/post-install-script
      </post-install-script>
      <admin-interface name="eth0" proto="dhcp" />
      <timezone>Europe/London</timezone>
   </installation>

installation이라는 루트 노드 내에 모든 노드를 포함합니다.

참고:

씬 프로비저닝을 사용하도록 설정하려면 srtype 특성을 ext로 지정합니다. 이 특성을 지정하지 않는 경우 기본 로컬 스토리지 유형은 LVM입니다. 씬 프로비저닝은 로컬 스토리지 유형을 EXT3으로 설정하고 XenDesktop이 올바르게 작동하도록 로컬 캐싱을 활성화합니다. 자세한 내용은 XenServer 관리자 가이드를 참조하십시오.

다음은 요소에 대한 요약입니다. 달리 명시되어 있지 않는 한 모든 노드 값은 텍스트여야 합니다. 요소가 필수 요소인지 여부도 나와 있습니다.

  • <primary-disk>(필수)

    제어 도메인이 설치될 스토리지 장치의 이름. 대화형 설치 프로세스의 Select Primary Disk(주 디스크 선택)에서 선택한 장치 이름과 같습니다.

    특성:

    yesno 값을 사용하여 guest-storage 특성을 지정할 수 있습니다.

    예:

     <primary-disk guest-storage="no">sda</primary-disk>
    

    지정하지 않을 경우 이 특성의 기본값은 yes입니다. no를 지정하고 guest-disk 키를 지정하지 않은 경우 스토리지 저장소가 만들어지지 않는 설치 시나리오를 자동화할 수 있습니다.

  • <guest-disk>

    게스트를 저장하는 데 사용할 스토리지 장치의 이름입니다. 각 추가 디스크에 대해 이러한 요소 중 하나를 사용해야 합니다.

  • <keymap>(필수)

    설치 중 사용할 키맵의 이름입니다.

     <keymap>us</keymap>
    

    이 특성에 대한 값을 지정하지 않은 경우 기본값인 us로 처리됩니다.

  • <root-password>

    XenServer 호스트에 사용할 루트 암호입니다. 암호를 제공하지 않으면 호스트를 처음 부팅할 때 암호를 묻는 메시지가 나타납니다.

    특성:

    Type: hash 또는 plaintext

    예:

     <root-password type="hash">hashedpassword</root-password>
    
  • <source>(필수)

    업로드된 XenServer 설치 미디어 또는 보조 팩의 위치입니다. 요소는 여러 번 나타날 수 있습니다.

    특성:

    type: url, nfs 또는 local

    local인 경우 요소를 비워 둡니다. 예를 들면 다음과 같습니다.

     <source type="url">http://server/packages</source>
     <source type="local" />
     <source type="nfs">server:/packages</source>
    
  • <script>

    설치 후 스크립트가 있는 위치입니다.

    특성:

    stage: filesystem-populated, installation-start 또는 installation-complete

    • filesystem-populated를 사용하는 경우 루트 파일 시스템의 탑재가 해제되기 직전에 스크립트가 호출됩니다(예: 설치/업그레이드 후, 이미 initrds가 작성된 경우 등). 이 스크립트는 루트 파일 시스템의 탑재 지점을 인수로 수신합니다.

    • installation-complete를 사용하는 경우 설치 관리자가 모든 작업을 마친 후 스크립트가 실행됩니다. 따라서 루트 파일 시스템의 탑재가 해제됩니다. 이 스크립트는 설치가 성공적으로 완료되면 0 값을 수신하고, 어떤 이유로든 설치가 실패하면 0이 아닌 값을 인수로 수신합니다.

    type: url, nfs 또는 local

    url 또는 nfs인 경우 PCDATA에 URL 또는 NFS 경로를 지정하고 local인 경우에는 PCDATA를 비워 둡니다. 예를 들면 다음과 같습니다.

     <script stage="filesystem-populated" type="url">
         http://prehost.example.com/post-install-script
     </script>
     <script stage="installation-start" type="local">
         file:///scripts/run.sh
     </script>
     <script stage="installation-complete" type="nfs">
         server:/scripts/installation-pass-fail-script
     </script>
    

    로컬 파일을 사용하는 경우 경로가 절대 경로인지 확인합니다. 이 경우 대개 file:// 접두사 다음에 추가 슬래시가 나타난 다음 스크립트의 전체 경로가 나타납니다.

  • <admin-interface>

    호스트 관리 인터페이스로 사용할 단일 네트워크 인터페이스입니다.

    특성:

    proto: dhcp 또는 static

    name: 예를 들어 eth0일 수 있습니다.

    하위 요소:

    • <ipaddr>: proto=”static”인 경우 IP 주소
    • <subnet>: proto=”static”인 경우 서브넷 마스크
    • <gateway>: proto=”static”인 경우 게이트웨이

    proto=”static”인 경우 세 하위 요소가 모두 필수입니다.

  • <timezone>(필수)

    TZ 변수에 사용된 형식(예: Europe/London 또는 America/Los_Angeles)입니다.

  • <name-server>

    이름 서버의 IP 주소입니다. 사용할 각 이름 서버에 대해 이러한 요소 중 하나를 사용해야 합니다.

  • <hostname>

    호스트 이름을 수동으로 설정하려는 경우 지정합니다.

  • <ntp-server>

    하나 이상의 NTP 서버를 지정합니다.

응답 파일을 적절히 변경하여 자동 업그레이드를 수행할 수도 있습니다. installation 요소의 mode 특성을 upgrade로 설정하고 existing-installation 요소를 사용하여 기존 설치가 있는 디스크를 지정합니다. primary-diskguest-disk 요소는 지정하지 않은 상태로 둡니다. 예:

<?xml version="1.0"?>
   <installation mode="upgrade">
        <existing-installation>sda</existing-installation>
        <source type="url">http://pxehost.example.com/xenserver/</source>
        <post-install-script type="url">
        http://pxehost.example.com/myscripts/post-install-script
        </post-install-script>
   </installation>