본문으로 건너뛰기
피드

디지털 스택을 유럽으로 옮겨보니, 생각보다 꽤 실전적이었다

devops 약 10분

한 개발자가 분석, 메일, 비밀번호 관리, 컴퓨트, 오브젝트 스토리지, 백업, 이메일, 에러 추적, AI API까지 유럽 중심 스택으로 옮긴 경험을 정리한 글이다. 핵심은 반미 감정이 아니라 데이터가 어디에 있고, 누가 접근할 수 있고, 정치나 기업 정책 변화에 얼마나 휘둘리는지를 의식하자는 얘기다.

  • 1

    구글 애널리틱스는 셀프호스팅 Matomo로, DigitalOcean과 AWS S3는 Scaleway와 OVH 쪽으로 이전함

  • 2

    Proton, Scaleway, OVH, Lettermint, Bugsink, Mistral 같은 대안은 대부분 실사용 가능한 수준이었지만 기능 격차와 운영 부담은 남아 있음

  • 3

    Cloudflare, Stripe, Claude Code, GitLab, GitHub처럼 실용성 때문에 당장 못 옮긴 예외도 명확히 인정함

  • 4

    전체 이전은 두 달 정도 걸렸고, 대부분은 실제 작업보다 조사와 전환 타이밍 결정에 시간이 많이 들어감

왜 굳이 유럽 스택으로 옮겼나

  • 글쓴이가 말하는 ‘디지털 주권’은 거창한 구호가 아니라, 내 비즈니스가 의존하는 도구를 누가 통제하는지 따져보자는 얘기임

    • 데이터가 어디에 저장되는지, 어떤 관할권을 따르는지, 특정 기업의 정책 변경이나 인수합병 한 방에 접근권이 날아갈 수 있는지를 봐야 한다는 것
    • “편해서 쓰는 SaaS”가 어느 순간 비즈니스의 약한 고리가 될 수 있다는 불편함에서 시작함
  • 목표는 미국 서비스를 전부 끊는 게 아니라, 가능한 영역부터 유럽 또는 자기 통제권이 더 큰 대안으로 바꾸는 쪽이었음

    • 실제로 Cloudflare, Stripe, Claude Code, GitLab, GitHub는 남겨둠
    • 이유도 꽤 현실적임. 기능 격차, 네트워크 효과, 결제 전환 리스크, AI 코딩 성능 같은 건 이념만으로 못 이김

중요

> 결론은 “유럽 서비스가 전부 더 좋다”가 아님. 생각보다 많은 핵심 인프라를 유럽 기반 또는 셀프호스팅으로 옮겨도 실사용에 큰 문제는 없었다는 게 포인트임.

분석, 메일, 비밀번호부터 갈아엎기

  • Google Analytics는 가장 먼저 Matomo 셀프호스팅으로 교체함

    • 이유는 뻔하지만 강력함. GA는 무료지만 방문자 행동 데이터가 구글 광고 생태계로 흘러가는 구조임
    • Matomo를 직접 운영하면 데이터가 자기 서버에 남고, GDPR 대응도 더 깔끔해짐
    • 대신 업데이트, 백업, 서버 상태 관리는 직접 챙겨야 함. 공짜 점심은 없음
  • 메일은 Proton Mail로 옮겼는데, 여기는 EU는 아니고 스위스 기반임

    • 스위스 개인정보보호법이 GDPR과 잘 맞고, 어떤 면에서는 더 강하다는 판단
    • Proton은 광고가 아니라 프라이버시를 비즈니스 모델로 삼고, 종단간 암호화도 핵심 구조에 들어가 있음
    • Gmail에서 오던 사람은 필터 기능이 답답할 수 있음. Proton은 메일 본문 내용 기준 필터링을 지원하지 않음
    • Duo 플랜에서도 커스텀 도메인이 3개로 제한돼서, 여러 프로젝트 도메인을 굴리는 사람은 금방 막힘
  • 비밀번호 관리는 1Password에서 Proton Pass로 이동함

    • Proton Pass는 종단간 암호화, 오픈소스, 스위스 관할권이라는 점이 장점
    • 다만 1Password보다 압도적으로 낫다기보다는, 메일과 캘린더까지 Proton 생태계로 묶는 일관성이 더 컸음

클라우드와 스토리지는 생각보다 덜 아팠다

  • Compute는 DigitalOcean에서 Scaleway로 옮겼고, 기대보다 만족도가 높았다고 함

    • DigitalOcean은 개발자 경험이 워낙 좋고, UI와 개념 모델이 단순해서 사랑받는 서비스임
    • Scaleway는 유럽 대안치고 “쓸 만하겠지” 정도로 기대했는데, 실제로는 서버 생성, 프라이빗 네트워크 구성, 콘솔 품질이 꽤 좋았다고 평가함
    • 서버 위치를 고를 때 예상 CO₂ 배출량을 보여주는 것도 인상적인 디테일로 언급됨
  • 오브젝트 스토리지는 Scaleway의 S3 호환 스토리지로 옮김

    • S3 호환이라 기존 코드에서 엔드포인트와 인증 정보만 바꾸면 되는 수준
    • 기존 AWS S3 버킷은 rclone으로 Scaleway S3 버킷에 동기화했는데, 버킷이 커서 일주일 넘게 계속 돌렸다고 함
  • 오프사이트 백업은 OVH 오브젝트 스토리지를 선택함

    • OVH는 유럽 최대 클라우드 사업자라 가격과 안정성 면에서 기대할 만한 규모가 있음
    • 오래된 백업을 콜드 스토리지 클래스로 넘기는 라이프사이클 규칙을 설정하면 Backblaze B2보다 싸졌다고 함
    • 문제는 콘솔 UX. OVHcloud 제어판은 미로 같고, 라이프사이클 설정은 문서와 터미널 작업을 뒤져야 했다고 함. 아, 여기서 현실감 확 올라옴

이메일, 에러 추적, AI API도 대안이 있었다

  • 트랜잭션 이메일은 SendGrid 대신 Lettermint로 바꿈

    • 비밀번호 재설정, 알림, 영수증 같은 일반적인 발송에는 충분한 API와 전달성을 제공함
    • SendGrid에 비해 분석 기능과 생태계 통합은 약함
    • 복잡한 멀티 스트림 이메일 인프라를 운영 중이면 기능 검토가 먼저 필요함
  • 에러 추적은 Sentry 대신 Bugsink 셀프호스팅으로 이동함

    • Sentry SDK를 그대로 받을 수 있어서 설정 한 줄 바꾸는 수준으로 이전 가능
    • 대신 성능 모니터링, 세션 리플레이, 고급 알림 같은 건 없음
    • 글쓴이에게 필요한 건 “프로덕션에서 터지면 스택 트레이스 보여줘”였고, 그 목적에는 충분했음
  • AI API는 OpenAI에서 Mistral로 바꿈

    • 주로 단순한 모델을 쓰던 워크로드라 품질 저하는 거의 없었다고 함
    • Mistral은 파리 본사이고, 오픈 웨이트 모델과 API를 함께 제공한다는 점에서 글쓴이의 방향성과 잘 맞았음
    • 돈이 어디로 가는지도 선택 기준에 들어갔다는 대목이 꽤 솔직함

그래도 못 옮긴 것들

  • Cloudflare는 그대로 남김

    • 미국 회사지만, 글쓴이는 공개 웹사이트 앞단에서 캐싱, DDoS 방어, 전 세계 로딩 속도 개선 용도로만 쓴다고 봄
    • 민감한 비공개 데이터가 아니라 어차피 공개될 페이지를 다루기 때문에 주권 계산법이 다르다는 판단
    • Bunny CDN도 테스트했지만, Cloudflare의 보안 규칙, Workers, 설정 폭을 대체하기엔 부족했다고 함
  • Stripe도 아직 못 옮김

    • 대안으로 네덜란드 결제 사업자 Mollie를 보고 있고, iDEAL, Bancontact, SEPA 같은 유럽 결제 수단 커버리지는 오히려 장점임
    • 하지만 결제 이전은 웹훅, 과금 로직, 세금 계산서, 고객 플로우를 전부 건드림
    • 게다가 글쓴이 사용 사례에서는 Stripe보다 더 비싸다고 함. 이러면 우선순위가 밀릴 수밖에 없음
  • AI 코딩 도우미는 OpenAI 대신 Claude Code를 쓰지만, 이것도 미국 회사라 관할권 기준에는 안 맞음

    • Mistral Vibe를 원했지만 Claude 수준까지는 못 왔다고 판단함
    • Claude Code는 추론 품질과 컨텍스트 처리 능력이 좋아서 실무 도구로 선택됨
    • 대신 로컬 모델 가능성도 언급함. Qwen 같은 오픈 웨이트 모델이 실제 워크로드에 점점 쓸 만해지고, 데이터를 로컬 밖으로 안 내보낼 수 있다는 점이 중요함
  • GitLab과 GitHub도 남김

    • GitLab은 미국 회사지만 셀프호스팅 옵션과 오픈소스 투명성 때문에 당장 유지
    • GitHub는 공개 NPM 패키지와 오픈소스 이슈 트래킹 때문에 계속 사용
    • 공개 프로젝트는 개발자들이 GitHub에서 찾고, 포크와 스타와 이슈가 거기서 생김. 네트워크 효과는 진짜임

실제로 해보니 어땠나

  • 마이그레이션의 마찰은 있었지만, 대체로 감당 가능한 수준이었다고 함

    • 많은 작업은 자격 증명 바꾸기, DNS 레코드 수정, 데이터 export/import 정도였음
    • 일부는 오래 걸렸지만 치명적인 장애는 없었고, 두 달이 지난 뒤에도 문제 없이 운영 중이라고 함
  • 가장 오래 걸린 건 손으로 옮기는 작업보다 조사와 계획이었다는 게 현실적인 포인트임

    • 어떤 서비스를 어디로 바꿀지, 전환 타이밍을 언제로 잡을지, 기능 격차를 어디까지 허용할지 정하는 데 시간이 들어감
    • 결국 발목을 잡은 건 기술적 불가능이 아니라 관성에 가까웠다고 정리함

기술 맥락

  • 이 글의 핵심 선택은 SaaS 편의성을 조금 내려놓고 데이터 위치와 관할권을 더 명확히 가져가는 거예요. 왜냐하면 분석, 메일, 백업, 에러 로그 같은 데이터는 평소엔 별거 아닌 것처럼 보여도 장애나 정책 변경이 터지면 서비스 운영권과 바로 연결되거든요.

  • S3 호환 스토리지를 고른 것도 중요한 포인트예요. 완전히 새 API로 옮기면 애플리케이션 코드와 운영 스크립트를 다 건드려야 하는데, S3 호환이면 엔드포인트와 키 교체만으로 이전 난이도가 확 낮아져요. 그래서 대용량 버킷 동기화가 일주일 넘게 걸려도 코드 변경 리스크는 작게 유지할 수 있었어요.

  • 셀프호스팅은 자유를 주지만 운영 책임도 같이 줘요. Matomo와 Bugsink는 데이터가 밖으로 안 나간다는 장점이 있지만, 업데이트와 백업과 서버 상태를 직접 봐야 해요. 작은 팀이라면 ‘데이터 통제권’과 ‘운영 시간’ 사이에서 계산을 꼭 해봐야 해요.

  • 흥미로운 건 글쓴이가 원칙을 세우되 예외를 인정했다는 점이에요. Cloudflare는 공개 웹사이트 앞단이라 남겼고, Stripe는 결제 전환 리스크가 커서 미뤘고, Claude Code는 생산성 때문에 선택했어요. 인프라 의사결정은 순수한 철학 문제가 아니라 제품 리스크, 팀 생산성, 비용이 같이 얽혀 있거든요.

이 글이 재밌는 건 ‘유럽 클라우드가 도덕적으로 낫다’가 아니라, 실제 제품별로 어디까지 옮길 수 있고 어디서 현실과 타협했는지 다 까놓는다는 점이다. 한국 팀도 미국 빅테크 의존도를 줄이고 싶다면 감정론보다 이런 체크리스트가 훨씬 쓸모 있음.

댓글

댓글

댓글을 불러오는 중...

devops

개인용 컴퓨터 다음은 개인용 클러스터라는 주장

이 글은 AI 시대에 개인 한 명이 쓰는 컴퓨팅 자원이 점점 ‘클러스터 한 덩어리’ 수준으로 커질 거라고 주장한다. PC가 직장, 취미 개발자, 게임 문화로 퍼졌듯이 개인용 클러스터도 업무용 AI, 오픈소스 실험, 게임 같은 흐름을 타고 대중화될 수 있다는 시나리오다.

devops

AI 에이전트 부하에 흔들린 GitHub, 왜 다른 서비스보다 더 아팠나

GitHub가 최근 몇 달 동안 가용성 저하, 검색 장애, GitHub Actions 문제, 심지어 squash merge에서 커밋이 빠지는 데이터 무결성 사고까지 겪었다. GitHub CTO는 AI 에이전트발 부하 증가를 원인으로 들었지만, 실제로는 2년간 약 3.5배 증가한 부하와 Azure 이전, 오래된 시스템, 조직적 지연이 겹친 문제에 가깝다. 개발자 입장에선 GitHub가 ‘없으면 안 되는 도구’에서 ‘업무를 막는 병목’으로 보이기 시작했다는 게 핵심이다.

devops

한국 클라우드 시장, 이제 GPU랑 데이터센터 싸움으로 넘어감

국내 클라우드 서비스 제공사들이 AI 전환 수요를 잡기 위해 GPUaaS, 데이터센터, 공공 클라우드 사업에 공격적으로 투자하고 있어. 네이버클라우드, KT클라우드, NHN클라우드 모두 2026년 1분기 실적에서 AI 인프라를 핵심 성장축으로 내세웠고, 정부의 2조805억원 규모 GPU 구축 사업이 판을 더 키우는 중이야.

devops

칩값 뛰니 K게임의 콘솔·피시 전환 해법으로 다시 뜨는 클라우드 게임

국내 게임사들이 모바일 중심에서 콘솔·피시로 넘어가려는 타이밍에 고성능 지피유와 콘솔 가격 상승이 발목을 잡고 있다. 이용자 입장에서는 300만원대 게이밍 피시, 오른 콘솔 가격, 스팀 가격 기준 개편까지 겹치면서 고사양 게임 접근성이 떨어지는 상황이다. 업계는 원격 서버에서 게임을 실행해 스트리밍하는 클라우드 게임을 다시 현실적인 대안으로 보고 있다.

devops

Caddy 인증서 만료 원인은 systemd-resolved와 NextDNS 조합이었다

Matrix 홈서버 앞단의 Caddy 인증서가 만료됐고, 원인은 Caddy가 아니라 특정 도메인의 NXDOMAIN 응답에서 멈추는 systemd-resolved 경로였어. Docker DNS, host stub resolver, NextDNS over TLS, ACME DNS-01 챌린지가 겹치면서 42시간 동안 갱신 실패가 조용히 누적된 장애 후기야.