파이프라인 모니터링 구조 다이어그램


ㅇ 먼저 머신러닝 어플리케이션을 생성합니다.

ㅇ 표준화 및 모델링 코드를 Joblib Artifacts 형태로 저장하고 Serving API를 생성하여 GitHub에 제출

(서비스 API 생성을 위한 Pydantic은 유형 주석을 사용하여 데이터를 자동으로 구문 분석하고 유효성을 검사하고 오류가 있는 경우 오류를 반환하는 유용한 라이브러리입니다.

)

ㅇ 이때 Jenkins는 이를 감지하여 애플리케이션을 빌드하고 컨테이너를 실행한다.

ㅇ Jenkins는 실행 중인 컨테이너를 자동으로 감지하고 빌드된 Docker 이미지를 DockerHub에 푸시합니다.

ㅇ 그리고 LOCUST라는 오픈소스로 만든 Docker 컨테이너를 시뮬레이션하여 테스트했습니다.

ㅇ 이때 Prometheus는 Jenkins 동작 지표와 LOCUST의 시뮬레이션 지표를 수집하였다.

ㅇ 수집된 메트릭을 Grafana로 보내 LOCUST 실행의 ML 성능 모니터링을 수행하는 대시보드를 생성하고, Jenkins 행동 메트릭을 수집하여 모니터링하는 대시보드를 생성합니다.

ㅇ 이러한 모니터링 파이프라인을 구축하여 모델 학습 코드를 변경하고 커밋하면 ML 모델 성능 모니터링이 자동으로 변경됩니다.