Zapier 무료 플랜은 한 달에 워크플로우 실행 100회가 한도예요. 이 한도를 넘기는 순간부터 유료 플랜으로 넘어가야 하고, 실행 횟수가 쌓일수록 요금도 같이 뛰어요. n8n은 같은 개념의 자동화를 완전히 내 서버에서, 실행 횟수 제한 없이 무료로 구축할 수 있는 오픈소스 대안인데, 그래서 실제로 n8n으로 로우코드 자동화 워크플로우를 어떻게 만들 수 있을까요?
n8n의 작동 방식
n8n의 인터페이스는 노드(Node)를 연결해 워크플로우를 만드는 시각적 편집기예요. 각 노드는 “트리거”(워크플로우를 시작시키는 이벤트)와 “액션”(실행할 동작)으로 구분되고, 이 둘을 화살표로 이어 붙이는 것만으로 자동화 로직이 완성돼요.
예를 들면 다음과 같은 워크플로우를 코드 한 줄 없이 구성할 수 있어요.
- RSS 피드에 새 글이 올라오면: Telegram으로 요약해서 전송
- 이메일로 영수증이 도착하면: 첨부파일을 파싱해 Firefly III에 거래 내역으로 자동 등록
- Uptime Kuma에서 장애가 감지되면: Discord에 알림을 보내고 Notion에 장애 기록 자동 생성
- 매일 아침 9시가 되면: 날씨 API를 조회해 스마트 스피커로 요약 안내
로우코드지만 필요하면 진짜 코드도 쓸 수 있다
n8n의 강점은 순수 로우코드 도구들과 달리 “Code” 노드를 통해 JavaScript나 Python 코드를 직접 삽입해 복잡한 데이터 가공 로직을 처리할 수 있다는 점이에요. 대부분의 작업은 시각적 노드 연결만으로 충분하지만, 특수한 데이터 변환이 필요할 때 코드 노드로 유연하게 대응할 수 있어서 단순한 GUI 자동화 도구의 한계에 부딪히지 않아요.
셀프호스팅의 실질적 이점: 무제한 실행
n8n을 셀프호스팅하면 서버 리소스가 허용하는 한 실행 횟수에 제한이 없어요. Zapier의 무료 플랜은 월 100회 작업 실행 정도로 제한되고(Zapier 공식 요금제 기준), 유료 플랜도 실행 횟수에 따라 비용이 커지는데, n8n은 이 제약 자체가 사라진다는 게 가장 큰 차이예요. RSS 피드를 몇 분마다 확인하거나 여러 API를 자주 폴링해야 하는 자동화라면, 이 차이가 실질적인 비용 절감으로 이어져요.
설치와 데이터베이스 선택
n8n 기본 Docker 이미지는 SQLite를 내장 데이터베이스로 사용해 간단히 시작할 수 있어요. 다만 워크플로우 실행 이력이 많아지고 여러 워크플로우를 동시에 운영한다면 PostgreSQL로 전환하는 걸 권장하고, 환경변수 DB_TYPE=postgresdb 설정만으로 쉽게 전환할 수 있어요.
Webhook 트리거와 외부 노출
Webhook 트리거는 외부 서비스가 n8n의 URL로 HTTP 요청을 보내면 워크플로우가 즉시 실행되는 기능이에요. 외부 서비스가 특정 이벤트 발생 시 요청을 보내주기만 하면 되니 편리하지만, 이 기능을 쓰려면 n8n 인스턴스가 외부에서 접근 가능한 상태여야 해서 리버스 프록시를 통해 HTTPS로 안전하게 노출하는 구성이 필요해요.
자격증명(Credential) 관리
n8n은 각 서비스에 연결할 API 키, OAuth 토큰 같은 자격증명을 암호화해 저장해요. N8N_ENCRYPTION_KEY 환경변수로 지정하는 암호화 키는 반드시 별도로 백업해둬야 하는데, 이 키를 잃어버리면 저장된 모든 자격증명을 다시 입력해야 하는 번거로움이 생기기 때문이에요.
어떤 사람에게 특히 유용한가
n8n은 여러 셀프호스팅 서비스를 이미 운영 중인 사람에게 특히 도입 효과가 커요.
- 여러 셀프호스팅 서비스를 하나로 묶고 싶은 사람: Uptime Kuma, Firefly III, Nextcloud 등을 서로 연결해 통합된 흐름으로 관리하고 싶은 경우
- Zapier 요금이 부담스러운 사람: 반복적인 데이터 입력, 알림 전달 작업을 자동화하고 싶은데 요금 걱정 없이 쓰고 싶은 경우
- API 폴링이 잦은 워크플로우를 운영하는 사람: 여러 API를 자주 확인해야 해서 실행 횟수 제한에 자주 걸리는 경우
결론
n8n은 “자동화를 코드 없이, 그리고 제한 없이”라는 조합을 실현해주는 셀프호스팅 도구예요. 홈서버에 여러 서비스를 이미 구축해두었다면, n8n을 추가해 이 서비스들을 서로 연결하는 순간부터 홈서버 전체가 하나의 유기적인 시스템처럼 동작하기 시작해요.
자주 묻는 질문
Q1. 코드를 전혀 몰라도 n8n을 쓸 수 있나요?
네, 노드를 시각적으로 연결하는 것만으로 대부분의 워크플로우를 만들 수 있어요. 복잡한 데이터 가공이 필요할 때만 Code 노드로 JavaScript/Python을 직접 쓰면 돼요.
Q2. Zapier 대신 n8n을 쓰면 뭐가 좋아지나요?
Zapier 무료 플랜은 월 100회 작업 실행 정도로 제한되지만, n8n을 셀프호스팅하면 서버 리소스가 허용하는 한 실행 횟수 제한 없이 무료로 운영할 수 있어요.
Q3. SQLite로 시작해도 되나요, 처음부터 PostgreSQL을 써야 하나요?
처음에는 SQLite로 간단히 시작해도 돼요. 워크플로우 실행 이력이 많아지고 여러 워크플로우를 동시에 운영하게 되면 그때 PostgreSQL로 전환하는 걸 권장해요.
Q4. 외부 서비스가 이벤트를 보내면 자동으로 워크플로우가 실행되게 할 수 있나요?
네, Webhook 트리거 기능으로 외부 서비스가 n8n의 URL로 HTTP 요청을 보내면 워크플로우가 즉시 실행되도록 구성할 수 있어요. 이때 리버스 프록시로 HTTPS 노출을 해두는 게 안전해요.
Q5. 암호화 키(N8N_ENCRYPTION_KEY)를 잃어버리면 어떻게 되나요?
저장된 모든 자격증명(API 키, OAuth 토큰)을 다시 입력해야 해요. 그래서 이 키는 반드시 별도로 백업해둬야 해요.
댓글
첫 번째 댓글을 남겨보세요!
ntfy: 셀프호스팅 푸시 알림 서버
curl 한 줄로 스마트폰에 바로 알림을 보낼 수 있는, 셸 스크립트와 자동화에 최적화된 셀프호스팅 푸시 알림 서비스를 소개합니다.
ntfyMealie로 레시피와 장보기 목록 셀프호스팅하기
여기저기 저장해둔 요리 레시피가 흩어져 사라지는 문제를, Mealie로 직접 운영하는 레시피 관리 서버와 자동 장보기 목록 기능으로 해결하는 방법을 소개합니다.
MealieRestic vs Duplicati: 홈서버 백업 도구 비교
명령줄 기반의 가벼운 Restic과 웹 UI를 갖춘 Duplicati, 홈서버 데이터를 클라우드나 NAS로 안전하게 백업할 때 두 도구가 어떻게 다르고 어떤 상황에 맞는지 비교합니다.
Restic