DICE 결함 주입 도구

DICE 결함 주입 도구
안내: 본 포스트의 한글 요약 및 분석 리포트는 AI 기술을 통해 자동 생성되었습니다. 정보의 정확성을 위해 하단의 [원본 논문 뷰어] 또는 ArXiv 원문을 반드시 참조하시기 바랍니다.

초록

본 논문은 클라우드 환경에서 VM 및 인프라 수준의 장애를 인위적으로 발생시켜 애플리케이션의 복원력을 평가할 수 있는 DICE Fault Injection Tool(FIT)을 소개한다. 경량 CLI 기반으로 SSH를 통해 대상 노드에 접속하고, CPU·메모리·디스크·네트워크 등 다양한 스트레스와 서비스 중단을 자동으로 수행한다. DevOps 파이프라인에 쉽게 통합되어 지속적인 품질 검증을 지원한다.

상세 분석

DICE FIT은 기존 ChaosMonkey와 같은 도구가 AWS 전용이거나 기능이 제한적인 점을 보완하기 위해 설계되었다. 가장 큰 특징은 클라우드 벤더에 종속되지 않는 ‘클라우드 애그노스틱’ 설계이며, VM 관리자와 클라우드 관리자 두 가지 권한 레벨을 제공한다. VM 레벨에서는 임의의 VM을 선택해 CPU 과부하, 메모리 포화, 디스크 I/O 증가, 네트워크 대역폭 제한, 서비스 중단 등을 실행할 수 있다. 클라우드 레벨에서는 노드 전체를 대상으로 동일한 스트레스와 함께 노드 자체를 종료하는 기능을 제공한다.

구현 측면에서 FIT은 Java 기반의 JSCH 라이브러리를 이용해 SSH 연결을 관리한다. 연결된 대상 OS를 자동 감지하고, Ubuntu·CentOS 등 주요 리눅스 배포판에 맞는 스트레스 도구(Memtester, stress-ng 등)를 동적으로 설치한다. 이를 통해 사전 준비가 최소화되며, CI/CD 파이프라인에서 스크립트 한 줄로 호출이 가능하다. 또한 Apache License 2.0 하에 오픈소스로 배포되어 확장성이 높다.

표 1에 정리된 작업 목록은 접근 권한에 따라 구분된다. Cloud Admin은 노드 전체를 대상으로 하는 고부하 작업과 노드 종료를 수행하고, VM Admin은 개별 VM에 대한 고부하 및 서비스 차단을 수행한다. 이와 같은 권한 기반 설계는 멀티테넌시 환경에서 보안 사고를 최소화하면서도 테스트 범위를 유연하게 조정할 수 있게 한다.

실험에서는 메모리 스트레스 시나리오를 수행하여 2 GB 메모리를 100 % 사용하도록 만든 뒤, 외부 모니터링 툴이 메모리 사용량 급증을 정확히 감지함을 보였다. 이는 FIT이 실제 운영 환경에서 발생 가능한 리소스 포화 상황을 재현할 수 있음을 입증한다.

향후 계획으로는 컨테이너 기반 마이크로서비스 환경, 다양한 클라우드 API 연동, 그리고 CACTOS 프로젝트와 연계한 애플리케이션 수준 장애 주입을 포함한다. 이러한 확장은 현재 VM‑level에 국한된 기능을 넘어, 클라우드 네이티브 아키텍처 전반에 걸친 복원력 테스트를 가능하게 할 전망이다.


댓글 및 학술 토론

Loading comments...

의견 남기기