PXELinux를 사용하여 일부 CoreOS 노드를 배포하고 있습니다. 현재 서버는 tftpboot/에서 "기본" 구성을 사용합니다.
내 시작 구성에는 다음이 포함되어 있습니다
append ... cloud-config-url=http://<server>/cloud-config.yml
...
현재 Mac 주소와 같이 URL을 생성할 때 사용할 수 있는 환경 변수가 있습니까?
모든 서버는 동일한 CoreOS 이미지를 사용하므로 각 서버에 대해 새로운 PXE 구성을 생성하고 싶지 않습니다. 하지만 나는 그들이 다른 config.yml을 풀다운하기를 원합니다.
이렇게 하면 각 서버의 Mac 주소를 기반으로 웹 서버에 새 파일인 config-01-xx-xx-xx-xx.yml을 만들 수 있습니다.
서버는 해당 BOOTIF(pxe 부팅에 사용되는 MAC 주소)가 부팅 구성 파일에 사용될 수 있다는 것을 알고 있습니까?
답변1
짧은 대답: 아니요, Syslinux에서는 이것을 할 수 없습니다.
긴 답변: 파일을 Syslinux
구문 분석하는 바이너리 config
에는 MAC, IP 등과 같은 변수를 처리하기 위한 규정이 없습니다. 커널 라인에 일부 IP/MAC 형식 정보를 추가하는 명령만 있지만 ipappend
원하는 것은 아닙니다.
Pxelinux에는 파일 이름의 MAC 주소를 처리하는 구성 파일 검색 시퀀스가 있지만 실제로는 유연한 솔루션이 아닙니다.