한 줄 요약 : 스케줄링 자동화를 로컬 PC에서 클라우드 환경으로 작동시킴
지난 번 사례글 'Airtable Automation을 '사람 개입 없는 운영 자동화'로 재설계해보기' 에서는
메일 발송 자동화까지 안정적으로 동작하는 것을 확인했습니다.
다만 자동화를 일회성으로 끝내지 않고 지속적으로 확장할 것을 전제로 하니,
자연스럽게 다음과 같은 고민이 생겼습니다.
이 자동화들은 앞으로 어디에서, 어떤 환경에서 운영되어야 할까요?
기존 구조의 한계: 로컬 PC 서버
초기에는 미니 PC를 서버처럼 활용하여 스케줄링 자동화를 운영하고 있었습니다.
빠르게 실험하고 검증하기에는 충분한 환경이었지만,
운영 관점에서 바라보았을 때 몇 가지 명확한 한계가 존재했습니다.
로컬 PC 환경의 문제점
문제 발생 시 즉시 멈추는 구조
PC가 꺼지거 나 오류가 발생하면 자동화도 함께 중단됩니다.
더 큰 문제는, 자동화가 멈췄다는 사실을 뒤늦게 알게 되는 구조라는 점이었습니다.
성공/실패 여부를 확인하기 어려움
실행 로그 관리가 어렵고, 실패 시 재시도 구조도 갖추기 힘들었습니다.
특정 PC에 대한 과도한 의존
PC 고장이나 교체 시 자동화 전체가 영향을 받게 됩니다.
운영 자동화로 보기에는 다소 위험한 구조였습니다.
결론적으로,
“운영용 자동화”를 로컬 PC 환경에 두는 것은 장기적으로 적합하지 않다고 판단했습니다.
진행 방법
클라우드 환경으로 이전 (GCP)
사내 개발자이신 진우님의 가이드에 따라
스케줄링 자동화를 GCP(Google Cloud Platform) 환경으로 이전하기로 결정했습니다.
클라우드로 이전하며 확보한 장점
문제가 발생할 경우 즉시 알림을 받을 수 있음
성공 / 실패에 대한 실행 로그 기록
실패 시 자동 재시도 또는 후속 대응 가능
특정 PC와 무관하게 안정적으로 지속 실행 가능
운영 관점에서 보았을 때,
자동화를 보다 신뢰할 수 있는 구조로 만들 수 있었습니다.
전체 구조 개요
GCP에서 스케줄러 역할을 담당
각 자동화 Job은 독립적으로 실행
실행 결과 및 로그를 통해 상태 확인 가능
검은 화면에 한국어 스크린샷
배포 방식: 바이브코 딩 + 자동 배포
새로운 Job을 추가하는 과정은 다음과 같은 흐름으로 구성되어 있습니다.
바이브코딩을 통해 새로운 Job 생성
Git 저장소에 Push
자동으로 GCP에 배포
스케줄러에 등록되어 실행
이 구조를 통해
비개발자 입장에서도 전체 흐름을 이해할 수 있는 자동화 구조를 목표로 하였습니다.
한국 컴퓨터 화면의 스크린샷
Github에 업로드 시, 자동으로 GCP에 배포
결과와 배운 점
정상 작동 확인
설정된 스케줄에 따라 정상적으로 실행됨
성공 / 실패 여부를 로그로 확인 가능
운영 측면에서 안정성을 확보한 상태임을 확인
휴대폰에 있는 한국어 앱 스크린샷
한국어 문자 메시지 스크린샷
GCP에서 실행 기록 확인 가능
작업 중 생긴 의문
구조를 정리하면서 자연스럽게 다음과 같은 질문이 생겼 습니다.
“이 방식은 결국 미니 n8n을 만드는 것과 비슷한 것이 아닐까요?”
고민 포인트
현재는 단순한 구조이지만,
기능이 계속 추가될 경우 점점 복잡해질 가능성이 있습니다.결과적으로는 n8n처럼
설정이 많아지고
비개발자에게 사용하기 어려운 구조가 될 수도 있습니다.
따라서 비개발자에게 친숙한 UI의 필요성도 함께 고려하게 되었습니다.
고민 중인 방향성
n8n MCP 활용
만약 MCP 기반으로 자동화 로직을 충분히 쉽게 구성할 수 있다면,
해당 방식을 사용하는 것이 더 나을 수도 있습니다.
그렇지 않다면
클로드코드를 활용한 바이브코딩 방식으로
우리 조직에 맞는 미니 n8n 형태의 자동화 시스템을 만드는 것도 의미가 있을 것으로 보입니다.
향후 계획
다혜님께서 클로드코드로 구축하셨던 자동화 시스템에
서버 환경을 추가하여 스케줄링 기능을 확보단순 자동화를 넘어,
안정성
확장성
비개발자 친화성
이 세 가지를 기준으로 지속적으로 개선해 나갈 예정입니다.
이번 작업은 단순히 서버 환경을 변경한 것이 아니라,
“이 자동화가 앞으로도 운영 환경에서 신뢰할 수 있는가?”
라는 질문을 기준으로
전체 구조를 다시 점검하고 설계한 과정 이었습니다.
자동화는 만드는 것보다,
지속적으로 운영할 수 있는 구조를 갖추는 것이 더 중요하다는 점을 다시 한 번 체감한 사례였습니다.