클라우드패널 자동 백업 (클라우드플레어 R2) S3 호환
클라우드패널(CloudPanel)의 커스텀 Rclone으로 자동백업을 해보겠습니다. 작성일 현재 10GB까지 무료인, 클라우드플레어 R2 (Cloudflare R2) S3 호환성 버킷을 사용할 것이며, 모든 인스턴스의 불안감을 줄여보겠습니다.
1. 클라우드 플레어 버킷 생성하기
우선 클라우드플레어 R2로 이동해서 버킷을 생성합니다.
버킷 이름은 적당하게 입력해 주시면 됩니다. 저는
cloudpanel
로 하겠습니다.버킷 생성으로 계속 진행합니다.
R2 버킷이 잘 생성되었네요.
2. 클라우드플레어 R2 API토큰 생성하기
이번에는 R2의 API토큰
을 발급하겠습니다. Rclone에서 AWS S3호환성 스토리지로 설정할 것이므로, 토큰이 필요합니다.
R2 API 토큰 관리를 클릭합니다.
API 토큰 생성
을 클릭합니다.
역시 토큰 이름은 적당히 설정하면 됩니다. 저는 아무것도 입력하지 않고 진행하겠습니다.
권한은 관리자 읽기 및 쓰기
를 선택합니다.
여러 가지 이유로, 권한은 세밀하게 설정하면 좋으나, 역시 마찬가지로 여러 가지 이유로 문제가 생기면 참고할 자료가 없으므로 저는 관리자 읽기 및 쓰기 권한을 부여했습니다.
API 토큰 생성
버튼을 클릭하면, 토큰 페이지가 나옵니다. 토큰 페이지를 닫지 말고
그대로 열어두세요.
혹시 닫으셨다면 다시 생성하셔야 합니다. 토큰은 생성할 때 한번만 보입니다.
3. 인스턴스에 SSH 접속해서 Rclone 설정하기
인스턴스에 SSH
로 접속합니다. VScode, Mobaxterm 등 어떤 프로그램도 좋습니다.
root 유저로 전환합니다.
위의 명령어를 입력해서 설정을 진행합니다.
CloudPanel에서 커스텀 Rclone을 사용할 때, 이름이 remote
인 것으로 진행합니다.
따라서 반드시 remote로 입력하셔야 합니다.
Rclone의 버전에 따라 다를 수 있지만, 앞서 말씀드린 것처럼 우리는 클라우드 플레어 R2, 즉 S3호환성 스토리지를 사용합니다. 따라서 화면에 나온 항목 중에서 S3의 번호
를 입력하시면 됩니다. 현재 저는 4번이네요.
마찬가지로 Rclone 버전에 따라 다를 수 있습니다. 저는 현재 Cloudflare R2가 보이지 않으므로 13번 Other를 선택했습니다.
env_auth
는 기본 값인 1번을 입력합니다.
4. Rclone에 클라우드플레어 R2 토큰 입력하기
이제 우리가 앞서 발급한 클라우드플레어 R2 API토큰을 입력할 차례입니다.
access_key_id
에 엑세스 키 ID
를 입력합니다.
secret_access_key
에는 비밀 엑세스 키
를 입력합니다.
지역은 1번 즉 기본 값
을 사용하겠습니다. 어차피 백업 용도이고, 클라우드플레어에서 리전 선택은 크게 의미가 없으므로 기본값으로 진행합니다. (혹시 차후에 세부적인 리전 선택이 가능할 수 있습니다. 개발자 문서를 확인하세요.)
endpoint
에는 R2 버킷의 S3 API
주소를 입력합니다. 트레일링 슬래시(trailing slash)는 입력하지 않습니다.
ACL
은 기본값
을 사용합니다. 엔터로 진행합니다.
추가 설정은 하지 않습니다 n입력 혹은 엔터로 진행합니다.
최종적인 결과를 보여줍니다. 최종 결과를 확인하고 y혹은 엔터를 누릅니다.
Rclone 버전에 따라 다르겠지만, 위의 화면과 비슷한 결과가 나옵니다.
5. Rclone 결과 확인하기
위의 명령어로 내용이 없는 파일을 만듭니다.
위의 명령어로 R2에 테스트 파일을 업로드 합니다.
앞서 말씀드린 것 처럼 클라우드 패널에서는 remote라는 이름의 스토리지 이름을 사용합니다.
따라서 remote를 입력합니다. 클론 뒤에 있는 backups는 클라우드 패널에서 기본적으로 사용되는 경로입니다.
이제 클라우드플레어의 R2 버킷을 확인하면 test 파일이 업로드된 것을 확인할 수 있습니다.
6. 클라우드패널(CloudPanel)에서 백업 설정하기
클라우드 패널의 관리자 페이지
로 이동합니다.
순서대로
백업
을 클릭커스텀 Rclone설정
계속
클릭
여기서 바로 숨도 안쉬고 그냥 저장
누르셔도 됩니다. 여기서 입력하기 번거로워서 기본값으로 진행했습니다. :)
자 이제 백업 만들기
를 클릭하면 백그라운드에서 작업이 진행되어 tar 파일로 R2 스토리지에 업로드 됩니다.
7. 클라우드플레어에서 백업이 되는지 확인하기
이렇게 업로드가 순차적으로 진행됩니다.
이제, 다시 클라우드패널의 관리자 페이지
- 백업
으로 이동해서, 여러분들의 방금 만든 백업의 총 용량을 고려해서 무료 한도인 15기가가 넘지 않게 설정합니다. 주기를 조정하거나, 특정 파일 경로를 제외할 수 있습니다.
예를 들어서, 워드프레스 코어, node_modules 등의 경로는 언제든 다운 받을 수 있으므로 제외하는 것이 용량 차원에서 좋겠죠. 또한, 클라우드패널에서 DB를 사용한다면, DB데이터 역시 백업이 같이 되므로 추가적인 파일이 필요 없을 수 있습니다.
수고 많으셨습니다. 감사합니다.
Askfront.com (에스크프론트)
에스크프론트
에서는 NavyStack 가이드뿐만 아니라, 궁금한 모든 질문을 환영합니다. 😊