본문 바로가기

클라우드/개념 정리

[kickstart] OS 설치 자동화(ubuntu 20.04)

#dhcp #tftp-server #PXE 부팅 #kickstart

 

 

PXE 부팅 (Preboot eXecution Environment) : NIC를 통해 부팅하는 환경(네트워크 어댑터의 pxe부트 기능), 이미지(ISO)파일 없이 네트워크를 통해 OS 설치/부팅, 서버-클라이언트 인터페이스(pxe노드-target노드)

  • http, tftp, dhcp 필요

PXE 서버 : diskless부트 환경을 제공하는 서버, pxe부트 기능을 통해 OS 설치

  • 여러 버전의 OS 설치 환경 만들 수 있음
  • usb 플래시로 설치하는 것보다 빠름
  • 동시에 여러 시스템에 OS설치 가능
  • Kicstart기능을 통해 설치 과정 완전 자동화/커스터마이징 가능

tftp(server)

  • ftp와 동일하게 파일 전송 프로그램, 동작방식이 간단한 형식, 부트로더와 같은 작은 크기의 파일 전송 시 사용
  • Xinetd 데몬에 의해 동작 - /etc/xinetd.d/tftp

dhcp(server)

  • pxe부팅 시 ip를 할당해 원격지에 있는 파일 다운로드를 위한 환경 제공

Kickstart

 

 

PXE 부팅 순서

  1. 부팅
  2. pxe 동작 - dhcp 서버 찾기 → ip 주소 할당(pxe네트워크 부팅이 가능하도록)
    1. 더보기
      dhcp 설정 (/etc/dhcp/dhcpd.conf) : IP 대역 및 PXE Boot 를 위해 next-server 추가
  3. pxe 서버와 통신 - tftp 서버 찾기 → 커널이미지(vmlinuz), 램 초기화 이미지(initrd.img), 부트로더 다운받아 실행
    1. OS커널이미지와 kicstart 파일 전송하기 위해 http 사용
    2. 부트로더, OS설치(커널)이미지를 타켓노드에 전송하기 위해 tftp 사용
    3. 더보기
      tftp 설정 (/etc/xinitd.d/tftp)
      : udp를 사용하는 파일전송 프로토콜로 파일전송과정이 아주 단순하고 데이터의 완전한 전송을 보장하지는 못한다. 하지만 아주 가볍고 프로토콜이 간단하기 때문에 커널이미지의 전송과 같은 업로드에 많이 사용함
      *xinetd : 인터넷 접속 관리 서비스, 접속 포트에 대해 접속 권한 제어와 같은 역할
  4. kicstart 설정 파일 다운받아 OS 설치

*리눅스가 부팅될 때 부트로더가 커널이미지 로드한다

*부트로더 : 운영체제(이하 OS)가 시동되기 이전에 미리 실행되면서 커널이 올바르게 시동되기 위해 필요한 모든 관련 작업을 마무리하고 최종적으로 운영 체제를 시동시키기 위한 목적을 가진 프로그램

 

 

'클라우드 > 개념 정리' 카테고리의 다른 글

Kubernetes 모니터링  (0) 2023.04.04
istio  (0) 2023.04.03
네트워크  (0) 2022.09.28
리눅스 배포판  (0) 2022.09.27
Jira  (1) 2022.09.26