S3(DO Space)와 CDN을 프로덕션 이전 스테이징 서버에서 설정하기

저는 규모가不大的한 포럼을 운영 중인데, 곧 서버 저장 공간이 부족해질 것으로 예상됩니다. 그래서 DO Space와 Bunny CDN을 사용하여 저장 공간을 확장할 계획입니다. Meta 문서 사이트를 꼼꼼히 살펴봤는데, S3(호환) 저장소와 CDN 설정에 관한 유용한 정보를 많이 찾을 수 있었습니다.

주력 프로덕션 Droplet 외에도 스테이징 서버를 하나 만들어 프로덕션 서버의 백업을 복구해 두었습니다. 객체 저장소와 CDN을 처음 설정해 보는 것이기 때문에, 먼저 스테이징 서버로 한 번 테스트(드라이 런)를 해보고 싶습니다. 제 질문은, 이후 프로덕션 서버에 실제로 적용할 때 어떤 절차를 따르는 것이 좋을까 하는 것입니다. Space 저장소의 콘텐츠를 삭제하고, 메인 서버를 위해 프로세스를 다시 실행한 후, 마지막에 최신 백업을 스테이징 서버에 복구해야 할까요? 라이브 포럼의 운영을 방해하지 않으려고 하는데, 이런 접근 방식이 오히려 문제를 만들 수 있을까요?

어떤 생각이나 조언이든 환영합니다.

S3 버킷과 CDN이 정상적으로 작동하는 것을 확인하면 거의 준비가 끝난 것입니다.

스테이징 서버에서 테스트를 수행하여 S3 마이그레이션 스크립트가 어떻게 작동하는지 확인한 후, 스테이징 환경에서 성공적으로 작동하는 것을 확인하면 프로덕션 환경에서도 실행 중인 상태에서 다시 수행할 수 있습니다.

아, 하지만 스테이징 환경에서 S3를 설정하고 백업을 복원하여 모든 것이 S3로 이동되도록 하면 완료되는 것이므로, 이렇게 작동한다면 기존 사이트를 읽기 전용으로 설정한 후 새 사이트로 복원하고 전환하는 것만 하면 됩니다. 이 방식에서 까다로운 부분은 복원할 때 새 서버에 실제 호스트 이름이 설정되어 있어야 한다는 점입니다(또는 호스트 이름 변경에 대한 가이드를 따를 수도 있습니다). 저는 이 방식으로 진행할 것 같습니다. 테스트 호스트 이름으로 드라이 런을 수행한 후, 새 서버로 이동하는 방법 안내에 설명된 대로 실제 호스트 이름으로 변경하고 SSL 인증서를 복사한 다음, 백업을 복원하여 업로드된 파일이 실제로 S3로 이동하는지 확인하겠습니다.

제이, 감사합니다. 흥미로운 아이디어네요. DO의 예약된 IP 기능이 전환에 도움이 될지 궁금합니다. 좀 더 알아볼게요..

네. 전환 시 예약된 IP를 사용하면 잘 작동합니다.