Hacker News인프라 · 데브옵스

Oxide, 완전한 랙을 가상 환경에서 구동하는 에뮬레이터 공개

원제 Virtual Oxide Labs: Emulating a Full Oxide Rack

107 포인트댓글 10
Key Point

실제 하드웨어가 부족한 상황에서 완전한 랙 규모 시스템을 로컬 머신에서 테스트할 수 있는 방법을 제시했으며, 마이크로컨트롤러 에뮬레이션의 기술적 구현 방식이 임베디드 시스템 테스트의 새로운 접근 방식을 보여준다.

핵심 요약

  • Oxide는 Virtual Oxide Labs(Voxel)라는 소프트웨어 에뮬레이션 스택을 공개했으며, illumos와 Rust로 구축되어 실제 Oxide 랙을 가상 환경에서 재현할 수 있다.
  • Voxel은 수정되지 않은 스톡 Oxide 소프트웨어를 사용하는 '절대적 충실도'를 원칙으로 하며, 슬레드 가상화(Propolis), BGP/정적 네트워킹(Debian/FRR), 소프트웨어 P4 스위치(SoftNPU), 마이크로컨트롤러 시뮬레이션을 지원한다.
  • 32스레드 AMD Ryzen 9 9955HX와 96GB RAM을 갖춘 Minisforum 미니 PC에서 6개 슬레드로 구성된 완전한 Oxide 랙을 약 10분 만에 구동할 수 있다.
  • 이미지 생성은 Omicron 제어 평면을 설치한 가상 머신의 스냅샷을 생성하는 방식으로, GitHub 리포지토리에서 소스를 직접 컴파일하거나 TUF 리포지토리에서 패키지된 릴리스를 사용할 수 있다.
  • 랙 시작 과정에서는 sprockets PKI를 생성하고, STM32H753과 LPC55 마이크로컨트롤러에 Hubris 펌웨어를 플래시하며, falcon 자동화 네트워크 토폴로지 스위트로 시뮬넷과 VNIC 쌍을 구성한다.
  • voxel-init 에이전트는 각 노드에서 NAT 및 언더레이 구성, M.2/U.2 디스크 초기화, 제어 평면 활성화, 랙 초기화 진행 상황을 추적한다.
  • Service Processor 에뮬레이션은 sp-emu 오픈소스 도구로 구현되며, Cortex-M7과 Cortex-M33을 illumos/Linux에서 에뮬레이트하고 단일 스레드로 명령어·시간·인터럽트를 충실히 구현한다.
  • 에뮬레이터는 실제 실리콘과 달리 시간을 명령어 개수로 추상화했으며, 1ms SysTick 기반의 Hubris 스케줄링과 PRIMASK/FAULTMASK/BASEPRI를 통해 우선순위 기반 예외 처리를 정확히 모델링한다.
  • 스프라켓 PKI 인증서가 RoT가 아닌 소프트웨어에서 생성되는 등 프로덕션 랙과 완전히 동일하지 않은 부분이 있지만, 랙 런타임 동작에는 영향을 주지 않는다.
AI 요약 안내

AI가 한국어로 정리한 내용입니다. 정확한 정보는 원문을 확인해 주세요.

요약 원칙 ↗