작업 완료 · 2024–26

on-premise 데이터 동기화 배포 시나리오·최종 기술지원

고객사 보안 조건에 맞는 배포 시나리오를 검토하고 기술지원팀이 접수한 동기화 문제를 재현했습니다.

기간2024–2026 (상시)
소속래브라도랩스(LabradorLabs)
역할데이터 엔지니어
on-premiseBinary Log기술지원

작업 요약

배포 시나리오 5종 정리 · 4.2.0 이미지 669MB → 162MB

고객사 보안 정책에 따라 배포 구성을 나눴습니다

고객사 on-premise 환경은 보안 정책이 다 달라서 동일한 구성을 적용하기 어렵습니다. 그래서 기본형, 파일 검수, 시간 제한, 폐쇄망, 중계 경로처럼 조건별 구성을 나눠야 했습니다.

기술지원팀의 1차 대응으로 해결되지 않은 문제는 로그와 DB 상태를 확인해 재현하고 수정했습니다.

배경

제품 데이터는 중앙 운영 DB에서 만들어지고 고객사는 이 데이터를 자사 인프라 안에서 직접 운영해야 합니다. 운영 DB의 replica를 직접 제공·연결하는 방식은 고객사 보안 정책상 허용되기 어려워 고객사 내부에 DB를 두고 초기 백업본 + 바이너리 로그 변경분으로 동기화하는 별도 구조가 필요했습니다.

배포 구조

전체 구조를 먼저 보고, 크게 열어 세부 내용을 확인하세요.크게 보기ExcalidrawMermaid
중앙 DB의 초기 백업과 binlog 변경분을 다운로드 서버에서 제공하고 직접 또는 시간 제한, 파일 검수 및 폐쇄망 반입, 프록시 중계 경로 중 하나로 고객사 동기화 모듈에 전달하는 구조
직접 다운로드, 시간 제한, 파일 검수, 폐쇄망 반입, 프록시 중계 중 고객사 조건에 맞는 경로를 선택합니다. 기술지원팀이 배포·운영하고, 설계·구현 담당자는 이관 이슈를 재현하고 수정합니다.

고객사 인프라에는 중앙 운영 DB의 on-premise 백업본이 자리잡고 그 위로 고객사 측 동기화 구성과 중계 경로가 변경분을 받아 동기화합니다. 환경 제약에 따라 아래처럼 구성을 달리합니다.

기본 (다운로드 전용)동기화 모듈이 바이너리 로그를 받아 바로 DB에 반영
파일 검수 구성고객사가 받은 바이너리 로그를 먼저 검사한 뒤 DB에 반영
접근 시간 제한정해진 시간대에만 다운로드/반영 동작
폐쇄망 (파일 반입)외부 통신 없이 반입된 파일만 내부 절차로 반영
중계 경로 경유직접 통신이 막힌 고객사를 위해 프록시를 통해 배포

한 일

결과

배포 지원환경이 제각각인 고객사에서도 기술지원팀이 같은 기준으로 배포·운영할 수 있도록 시나리오와 검증 기준을 제공
이관 이슈 해결1차 지원에서 풀리지 않는 복합 문제를 시스템 담당자로서 최종적으로 해결
고객사별 이슈 기록고객사별 환경 차이와 오류 유형을 문서·이슈로 남겨 재현, 재처리, 패치 검증까지 이어지게 함
담당자 인수인계설치 가이드·배포 시나리오·등록 절차를 문서화해 담당자 인수인계에 사용
4.2.0 이미지 669MB → 162MBMySQL 분리로 DB 패치와 동기화 모듈 릴리스를 분리 · 2026-09-18 기술지원팀 배포 저장소에 전달

역할

데이터 동기화 체계의 설계·구현과 배포 시나리오 리뷰까지 맡아 기술지원팀에 이관했습니다. 고객사 배포와 상시 운영은 기술지원팀이 담당하고, 저는 운영 중 전달받은 DB·동기화·정합성·네트워크 이슈를 재현하고 코드를 개선하는 최종 기술지원 역할을 맡았습니다. 2026년부터는 전환 작업과 지원 기준 정리를 함께 이끌었고, 9월의 파일 검수 구성 수정과 MySQL 분리 릴리스도 직접 만들어 전달했습니다.

관련: 이슈 트래킹 & 장애 추적 체계