마이그레이션 시나리오
사용 규모가 커지거나 인프라가 조정되면, OpenClaw을 한 서버에서 다른 서버로 마이그레이션해야 할 수 있습니다. 일반적인 마이그레이션 시나리오로는 저사양 서버에서 고사양 서버로의 업그레이드, 클라우드 제공자 변경, 로컬 개발 머신에서 프로덕션 서버로의 이전, VPS에서 전용 호스트로의 이전 등이 있습니다.
어떤 시나리오든 마이그레이션의 핵심 목표는 설정의 완전한 이전, 연결 중단 없음, 데이터 손실 없음입니다. 이 글에서는 체계적인 마이그레이션 프로세스를 제공합니다.
마이그레이션 전 준비
데이터 구조 이해
OpenClaw의 모든 핵심 데이터는 ~/.openclaw/ 디렉터리에 집중되어 있습니다. 이 디렉터리에는 다음이 포함됩니다:
openclaw.json: 메인 설정 파일, AI 모델 설정과 채팅 플랫폼 자격 증명 등 포함data/: 런타임 데이터와 메시지 기록logs/: 로그 파일(선택적 마이그레이션)
현재 환경 확인
기존 서버에서 핵심 환경 정보를 기록합니다:
openclaw --version
node --version
cat ~/.openclaw/openclaw.json | head -5
OpenClaw 버전과 Node.js 버전을 기록하고, 새 서버에 동일하거나 더 높은 버전을 설치합니다.
새 서버에 환경 준비
마이그레이션 전에 새 서버에서 기본 환경 구축을 완료합니다:
- Node.js 22+ 설치(Bun은 사용하지 마세요)
- OpenClaw 설치
# Node.js 22 설치
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs
# OpenClaw 설치
npm install -g openclaw@latest
설치를 확인합니다:
node --version
openclaw --version
기존 서버 데이터 백업
OpenClaw 서비스 중지
백업 전에 실행 중인 OpenClaw 서비스를 중지하여 데이터 일관성을 보장합니다:
# systemd 사용 시
sudo systemctl stop openclaw
# 수동 실행 시
# 프로세스를 찾아서 종료
pkill -f "openclaw start"
설정 디렉터리 패키징
전체 ~/.openclaw 디렉터리를 패키징합니다:
tar czf openclaw-backup-$(date +%Y%m%d).tar.gz -C ~ .openclaw
서비스 설정 기록
systemd 서비스를 설정한 경우, 서비스 파일도 백업해야 합니다:
cp /etc/systemd/system/openclaw.service ~/openclaw-service-backup.service
Nginx 리버스 프록시를 설정한 경우도 마찬가지입니다:
sudo cp /etc/nginx/sites-available/openclaw ~/openclaw-nginx-backup.conf
새 서버로 데이터 전송
scp 또는 rsync로 백업 파일을 새 서버에 전송합니다:
scp 사용
scp openclaw-backup-*.tar.gz user@새서버IP:~/
scp openclaw-service-backup.service user@새서버IP:~/
rsync 사용(권장, 중단점 재개 지원)
rsync -avz --progress openclaw-backup-*.tar.gz user@새서버IP:~/
두 서버 간 네트워크가 통하지 않는 경우, 먼저 로컬로 다운로드한 후 업로드하거나, 중계 스토리지(예: 오브젝트 스토리지)를 사용할 수 있습니다.
새 서버에서 데이터 복원
설정 디렉터리 압축 해제
cd ~
tar xzf openclaw-backup-*.tar.gz
이 명령어로 .openclaw 디렉터리가 새 서버의 사용자 홈 디렉터리에 복원됩니다.
설정 파일 확인
설정 파일이 완전히 복원되었는지 확인합니다:
ls -la ~/.openclaw/
cat ~/.openclaw/openclaw.json
설정 파일의 AI 모델 키, 채팅 플랫폼 자격 증명 등의 정보가 완전한지 확인합니다.
경로 호환성 확인
신구 서버의 사용자명이 다른 경우, 설정 파일 내 경로 참조를 업데이트해야 할 수 있습니다. ~/.openclaw/openclaw.json을 열어 하드코딩된 경로 수정이 필요한지 확인합니다.
새 서버의 서비스 설정
systemd 서비스 설정
새 서버에 systemd 서비스 파일을 생성합니다. 백업한 서비스 파일을 기반으로 수정합니다:
sudo nano /etc/systemd/system/openclaw.service
다음 필드를 새 서버 환경에 맞게 업데이트합니다:
User와Group: 새 서버의 사용자명ExecStart: OpenClaw 실행 파일의 올바른 경로WorkingDirectory와Environment의 HOME 경로
sudo systemctl daemon-reload
sudo systemctl enable openclaw
리버스 프록시 설정(필요 시)
기존 서버에서 Nginx 리버스 프록시를 사용했다면, 새 서버에서도 해당 설정을 진행합니다:
sudo apt install -y nginx certbot python3-certbot-nginx
sudo nano /etc/nginx/sites-available/openclaw
설정 내용은 이전에 백업한 파일을 참고합니다. 도메인 지향도 마이그레이션해야 하는 경우, DNS 레코드도 동시에 업데이트해야 합니다.
시작 및 검증
OpenClaw 서비스 시작
sudo systemctl start openclaw
진단 검사 실행
openclaw doctor
각 진단 결과를 꼼꼼히 확인합니다:
- Node.js 버전이 22+ 요구사항 충족
- 설정 파일 정상 로딩
- AI 모델 API 연결 정상
- 각 채팅 플랫폼 연결 상태 정상
관리 패널 확인
openclaw dashboard
브라우저로 새 서버의 관리 패널에 접속하여 모든 기능이 정상 작동하는지 확인합니다.
DNS 및 도메인 마이그레이션
OpenClaw에 커스텀 도메인을 설정한 경우, DNS 레코드를 새 서버의 IP 주소로 업데이트해야 합니다.
권장 단계:
- 먼저 DNS TTL 값을 낮춥니다(예: 60초로 설정), 기존 TTL이 만료될 때까지 대기
- 새 서버의 모든 것이 정상인지 확인 후, DNS A 레코드를 새 IP로 업데이트
- DNS 전파 완료 대기(보통 몇 분에서 몇 시간)
- 도메인이 새 서버로 해석되는 것을 확인한 후, 기존 서버 종료
SSL 인증서 처리
Let's Encrypt 인증서를 사용하는 경우, 새 서버에서 재신청하면 됩니다:
sudo certbot --nginx -d openclaw.yourdomain.com
채팅 플랫폼 연결 검증
마이그레이션 후 가장 중요한 단계는 모든 채팅 플랫폼의 연결이 정상인지 확인하는 것입니다:
- WhatsApp: WebSocket 연결 상태 확인, QR 코드 재인증이 필요할 수 있음
- Telegram: Bot Token은 서버 변경에 영향받지 않지만, Webhook URL 업데이트 필요
- Discord: Webhook과 Bot 연결이 정상인지 확인 필요
특정 플랫폼의 Webhook URL에 기존 서버의 도메인이나 IP가 포함된 경우, 해당 플랫폼의 개발자 콘솔에서 업데이트해야 합니다.
기존 서버 마무리
새 서버가 완전히 정상 운영되는 것을 확인한 후:
- 기존 서버에서 OpenClaw 서비스 중지
- 기존 서버의 백업 데이터를 최소 7일간 보존
- 기존 서버의 부팅 시 자동 시작 설정 해제
- 기존 서버에 트래픽이 도달하지 않는 것을 확인한 후 안전하게 종료
# 기존 서버에서 실행
sudo systemctl stop openclaw
sudo systemctl disable openclaw
마이그레이션 체크리스트
완전한 마이그레이션 체크리스트를 정리합니다:
- 새 서버에 Node.js 22+ 설치 완료
- OpenClaw 설치 및 버전 일치
- 설정 디렉터리
~/.openclaw/완전 복원 - systemd 서비스 설정 및 활성화
openclaw doctor모든 검사 통과- 관리 패널 정상 접속 가능
- 모든 채팅 플랫폼 연결 정상
- Webhook URL 업데이트 완료
- DNS 레코드 업데이트 완료(해당 시)
- SSL 인증서 설정 완료(해당 시)
- 기존 서버 안전하게 종료
정리
서버 마이그레이션은 단계가 많지만, 체계적인 프로세스를 따르면 OpenClaw의 원활한 전환을 보장할 수 있습니다. 핵심은 ~/.openclaw/ 설정 디렉터리의 완전한 백업, 새 환경에서의 모든 연결 검증, 그리고 모든 것이 정상인 것을 확인한 후에 기존 서버를 종료하는 것입니다. 이 가이드의 체크리스트를 활용하면 안심하고 OpenClaw을 새로운 서버 환경으로 마이그레이션할 수 있습니다.