[TIL 0504] S3(Simple Storage Service) 배포 / 도메인 연결

zitto·2023년 5월 8일
0

TIL

목록 보기
74/77
post-thumbnail

💡 S3(Simple Storage Service) 배포

  1. AWS 콘솔에 로그인
  2. 상단의 검색창에 S3을 검색하거나, 서비스 메뉴에서 직접 찾아 접속
  3. 버킷 만들기 클릭
  4. 구매한 도메인을 입력하고, 2번 부분은 아시아 태평양(서울) 리전을 선택하기(버킷 이름에 http:// , www 등은 입력하지 않는다.)
  5. 객체 소유권 블럭에서, ACL 활성화됨 을 선택하고, 객체 소유권은 버킷 소유자 선호 를 선택

    ACL 비활성화됨을 선택하면 안될까?
    ACL 비활성화됨을 선택할 경우, 추후 퍼블릭 전환이 불가합니다.
    접근 가능한 화이트리스트를 작성해야 하기 때문에 모두가 접근할 수 있어야 하는 범용 서비스에서는 적합하지 않다.


  1. 퍼블릭 액세스 차단 설정 블럭에서 모든 퍼블릭 액세스 차단의 체크를 해제한다.
    하위 체크박스도 모두 체크를 해제한 뒤, 경고창 내의 체크박스만 체크해준다.
  2. 버킷 버전 관리와 서버 측 암호화는 비활성화 상태로 유지

버킷 버전 관리를 사용하면 좋은 것 아닌가?
스냅샷을 이용하여 git과 비슷하게 변경된 내용을 저장하기 때문에, 수정 전 내용으로 손쉽게 돌아갈 수 있는 장점이 있지만 자동으로 백업된 스냅샷 용량으로 인해 프리 티어 제한 사용량을 초과하여 과금될 수 있기 때문에 반드시 필요한 경우에만 사용해야 한다.

  1. 버킷 만들기 버튼을 클릭
  2. 버킷 목록에서 입력한 도메인을 클릭
  3. 업로드 버튼을 클릭
  4. SSG 빌드를 통해 생성된 out 디렉토리 내의 모든 파일과 폴더를 Drag&Drop 한다.
  5. 모든 폴더와 파일이 업로드되었는지 확인한다.
  6. 업로드 버튼을 클릭
  7. 업로드 성공이라는 메세지가 표시되면, 버킷 목록으로 돌아가서 구매한 도메인을 다시 클릭
  8. 상세 화면의 객체 탭에서 모든 파일을 선택한 다음 작업을 클릭하고, 하위 메뉴에서 ACL을 사용하여 퍼블릭으로 설정 메뉴를 클릭
  9. 퍼블릭으로 설정 버튼을 클릭
  10. 퍼블릭 액세스 설정이 완료되었는지 확인한 뒤, 닫기 버튼을 누른다.
  11. 버킷 목록에서 도메인을 클릭하여 상세 보기 화면으로 진입한 뒤, 속성 탭을 클릭
  12. 아래로 스크롤하여 정적 웹 사이트 호스팅 블럭을 찾은 다음, 편집 버튼을 클릭
  13. 정적 웹 사이트 호스팅을 활성화한 다음, 호스팅 유형에서도 정적 웹 사이트 호스팅을 선택한다(기본값)
  14. 인덱스 문서에 index.html을 입력하고, 오류 문서에 404/index.html을 입력한다.
  15. 아래로 스크롤하여 변경 사항 저장 버튼을 클릭
  16. 버킷 속성에서 아래로 스크롤하여 정적 웹 사이트 호스팅 블럭을 찾은 다음 엔드포인트 주소를 클릭
  17. 정상적으로 엔드포인트에 접속되고 화면에 표시되는지 확인
  18. 여기까지 S3에 SSG 배포 파일을 업로드함으로써, 정적 웹 사이트 배포가 엔드포인트로 접속이 가능한 상태가 되었다.
    하지만, 일반적인 url 접근방식을 위하여 엔드포인트가 아니라 도메인을 이용해 접근할 수 있도록 하려면, 엔드포인트와 도메인을 연결해 줘야한다.

💡 도메인 연결

도메인을 S3, EC2 등 AWS와 연결하는 데 반드시 Route 53을 사용할 필요는 없지만,
Route 53을 이용하면 통합 관리가 가능하다는 장점이 있다.

또한, CloudFront나 Load Balancer 등의 고급 DNS 설정이 필요한 경우에는 타사 서비스보다 Route 53을 이용하는 것이 저렴하다.

Route 53은 프리 티어가 제공되지 않는다!
호스팅 영역 1개 당 약 700원~800원의 비용이 과금된다

  1. aws 콘솔 상단의 ‘서비스' 또는 검색창에서 Route 53을 찾아 접속한 뒤, 시작하기 버튼을 클릭
  2. 호스팅 영역 생성을 선택한 뒤, 시작하기 버튼을 클릭
  3. 도메인 이름에 미리 구입한 도메인을 입력하고, 퍼블릭 호스팅 영역을 선택
  4. 호스팅 영역 생성을 클릭
  5. 레코드 블록에서 유형이 NS인 항목을 확인
  6. 메인을 구입한 호스팅사에 접속한 다음, 도메인 관리 메뉴에서 네임서버 설정 부분을 찾는다
    → 호스팅 사에 접속해서 네임서버 설정권한을 route53으로 넘겨주는 과정으로, Route53을 사용하여 도메인 통합 관리를 편하게 하기 위함이다.
  7. NS레코드의 값/트래픽 라우팅 대상 부분을 순서대로 네임서버 설정에 입력

호스팅사 정책에 따라 마지막 .을 포함하거나 포함하지 않을 수 있다.

  1. 정 완료 페이지에서 제대로 설정이 완료되었는지 확인한다. 네임서버 설정은 시간이 다소 소요된다.
  2. 터미널에서 dig (구입한 도메인) NS를 입력
  3. ANSWER SECTION에 NS레코드로 입력한 4개의 URL이 표시되면 네임서버 연결이 완료된 것
  4. 네임서버 연결이 완료되었다면, Route53에서 레코드 생성 버튼을 클릭
  5. 단순 라우팅을 선택하고 다음으로 넘어간다.
  6. 단순 레코드 정의 버튼을 클릭
  7. 값/트래픽 라우팅 대상 > 엔드포인트 선택을 클릭
  8. 옵션 중 S3 웹 사이트 엔드포인트에 대한 별칭을 찾아 선택
  9. 이어서 리전 선택을 클릭한 다음, 아시아 태평양(서울) 리전을 클릭
  10. 이어서 표시되는 S3 엔드포인트 입력을 클릭하면 앞서 생성한 엔드포인트가 표시됩니다. 해당 엔드포인트를 클릭
  11. 모든 정보가 잘 입력되었는지 확인한 다음, 단순 레코드 정의 버튼을 클릭
  12. 레코드 구성 목록에 방금 정의한 레코드가 추가됨. 레코드 생성 버튼을 클릭
  13. 레코드 목록에 도메인이 A레코드로 등록되었는지 확인
  14. 구매했던 도메인을 주소창에 입력하고, 제대로 로드되는 지 확인
profile
JUST DO WHATEVER

0개의 댓글