피드로 돌아가기
Swingbench in a Container: The Podman Way
Dev.toDev.to
DevOps

Podman 컨테이너에서 Oracle 데이터베이스 부하 테스트 도구인 Swingbench를 AMD64와 ARM64 멀티아키텍처로 실행하는 방법을 다룬다

Swingbench in a Container: The Podman Way

Project-422026년 3월 30일6intermediate

Context

Oracle 데이터베이스의 스트레스 테스트를 위해 Swingbench를 사용하려면 각 환경마다 설치와 설정이 필요하다.传统的安装方式은 환경 의존성이 높아 조직 내 일관된 테스트 환경 구축이 어렵다.

Technical Solution

  • SwingbenchContainer GitHub 리포지토리에서 Containerfile을Clone하여 시작한다
  • openjdk:27-ea-slim 베이스 이미지에 curl과 zip을 설치한 뒤 Swingbenchlatest.zip을 다운로드한다
  • podman build 명령어로 --platform linux/amd64와 linux/arm64를 각각 지정하여 이미지를 빌드한다
  • 빌드된 이미지를 ghcr.io/project-42/swingbench 저장소에 amd64와 arm64 태그로 각각 푸시한다
  • podman manifest create/add/push 명령어로 두 아키텍처를 통합하는:latest 매니페스트를 생성한다

Impact

oewizard 실행 결과 15,887,043개의 행을 약 3분 52초 만에 생성했으며 초당 148,213행 처리 성능을 확인했다

Key Takeaway

멀티아키텍처 Docker 이미지를 구성하려면 각 플랫폼별로 분리 빌드 후 통합 매니페스트로 관리하는 것이 핵심이다


Oracle 데이터베이스 성능 테스트 환경에서 Swingbench를Containerfile로 정의하면 GitHub Container Registry에서 amd64/arm64 이미지를 자동-pull하여 어디서나 일관된 테스트를 수행할 수 있다

원문 읽기