일반적으로 API 서버에서 이미지 서버를 따로 두고 사용하며, 대표적으로 AWS S3 Service를 사용한다.
AWS S3를 이미지 서버로 구축하고 연동하는 방법에 대해 알아보자.
AWS S3의 단위: Bucket
미디어, 정적파일을 공유할 수 있도록 아마존 S3(simple storage service)를 설정하자!
s3는 bucket이라는 단위를 사용한다. (RDS는 instance를 사용한다.)
버킷 생성
1. 버킷 만들기 (AWS S3 서비스를 선택해 버킷을 생성한다.)
2. 버킷 이름 및 지역 지정
- 버킷이름: id 와 같은 역할을 하며 같은 이름 사용 불가능 하다.
- 리전: 리전은 내가 실제 물리적으로 위치한 곳과 가까울수록 AWS 서비스가 빨라진다. (결국 네트워크임)
3. 옵션 구성 페이지이다. 지금 당장 수정할 내용은 없고 추후 변경 가능하므로 넘어간다.
4. 전체 체크를 풀어주고 Poblic Policy와 관련된 아래 2가지만 체크한다.
- 일반적으로 모든 퍼블릭 엑세스는 차단해서 사용한다.
- 버킷을 통해 static 파일에 대한 호스팅을 진행하는 경우에는 모든 퍼블릭 엑세스 차단이 아닌 다른 옵션을 선택해야 한다.
5. 잘 지정 되었는지 컴토하고, 다음을 눌어 버킷을 생성하면 된다.
6. 버킷이 생성된 것을 확인하면, IAM을 설정하러 가면 된다. (IAM은 특정 권한을 가진 사용자를 만드는 것이다.)
AWS IAM
생성한 버킷을 백엔드 프레임 워크에서 사용하기 위해서는 IAM에서 사용자 추가와 권한 설정을 해야한다.
새로운 직원이 들어왔을때 같은 직급의 사람에게 같은 권한을 주도록 하면 그룹을 생성하는 것이 사용자를 관리하기 편하다. 하지만 이 포스팅에서는 그룹 없이 진행한다.
1. 사용자 버튼 -> 사용자 추가를 클릭하고 '사용자 이름'을 정하고 '액세스 유형'에 프로그래밍 방식 엑세스를 체크한다.
2. 그룹에 사용자 추가 화면이 나올텐데 '그룹 생성' 버튼을 누르고 '그룹 이름'을 적어주고 필터에 s3를 적어 나오는 AmazonS3FoullAccess에 체크를 해주고 그룹을 생성해준다.
3. 그 후 나오는 화면은 태그 설정 화면이다. 선택사항이며, 많은 S3 버킷을 사용하지 않는 이상 넘어가도 된다.
4. 생성이 완료되면, 표시되는 액세스 키와 비밀 액세스 키 모두를 기록하거나 csv파일을 다운 받아 저장해둔다.
(섞이면 복잡하니 폴더링을 하는 것을 적극 권장한다!!)
Reference
https://kdharchive.tistory.com/830
https://zladnrms.tistory.com/85
https://velog.io/@hwang-eunji/aws-s3-미디어-서버-설정-django-설정
'Cloud > AWS Services' 카테고리의 다른 글
[AWS] 서비스 사용 및 설정에 대한 근본 (0) | 2022.09.13 |
---|