리치, 신고해 줘서 고마워. 나도 AWS S3 이미지 스토리지를 몇 년째 사용해 왔고, 콘솔 메시지를 통해 이 게시글을 찾게 됐어. 하지만 상단의 설명에는 이미 S3를 사용 중이고 CDN만 필요한 경우에 대한 내용이 빠져 있어.
참고로 내가 한 작업은 다음과 같아:
- AWS 콘솔에 접속해 네트워크 및 콘텐츠 전송(Network and Content Delivery)에서 CloudFront를 선택했어.
- ‘Create distribution’ 버튼을 클릭했어.
- 비교적 직관적인 양식을 작성했는데, 실제로 해야 할 일은 드롭다운 메뉴에서 이미지가 저장된 AWS S3 버킷을 선택하는 것뿐이었어.
- CloudFront 설정이 완료될 때까지 잠시 기다렸어.
- CloudFront 배포 목록의 ‘Domain Name’ 열에
<gibberish>.cloudfront.net도메인이 표시됐어. - 해당 도메인을 복사해서 사이트 관리자 파일 설정의
s3 cdn url필드에 붙여넣었어. - 테스트를 몇 가지 해봤어:
a. 이미지를 업로드한 새 게시글을 작성했는데, 실제로 CloudFront를 통해 제공되고 있었어.
b. 기존 이미지 게시글 중 몇 개에 대해 'Rebuild HTML’을 실행했는데, 이들도cloudfront.net이미지로 다시 빌드되는 것을 확인했어. - 모든 것이 정상적으로 작동하는 것을 확인한 후 rebake를 실행했어. 현재 약 50만 개의 게시글이 있어 몇 시간이나 걸렸어:
./launcher enter app
# rake posts:rebake
- 지금은 모두 정상적으로 작동하는 것 같아. sidekiq 큐에 작업이 많이 쌓였는데, 게시글 하나당 하나씩인 것 같아. 며칠 정도 걸릴 것 같지만, 지금은 순차적으로 처리되고 있어.