250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 지연로딩
- shared lock
- FetchType
- 연결리스트
- 비관적락
- execute
- 힙
- exclusive lock
- 동적sql
- eager
- 즉시로딩
- 스프링 폼
- CHECK OPTION
- 이진탐색
- 낙관적락
- fetch
- 스토어드 프로시저
- 백트래킹
- SQL프로그래밍
- 유니크제약조건
- 데코레이터
- 다대다
- BOJ
- dfs
- JPQL
- 일대다
- querydsl
- 다대일
- PS
- 연관관계
Archives
- Today
- Total
흰 스타렉스에서 내가 내리지
Terraform 으로 s3 리소스 생성하기 본문
728x90
vim provider.tf
provider "aws" {
region = "ap-northeast-2"
}
vim s3.tf
resource "aws_s3_bucket" "s3" {
bucket = "joos-devops-terraform"
tags = {
Name = "joos-devops-terraform"
}
}
버킷을 생성해보자
terraform init
terraform plan
terraform apply
aws 콘솔로 이동하여 생성 되었는지 확인해보자.
aws cli 를 사용하여 파일을 버킷에 업로드해보자.
vim index.html
<h1>안녕하세요!</h1>
aws s3 cp ./index.html s3://joos-devops-terraform/index.html
파일이 잘 업로드 되었습니다.
버킷 안에 디렉토리에 저장하고 싶다면 `s3://~~~/디렉토리명/파일명` 이렇게 해도 된다.
반대로 다운로드 받고 싶다면 어떻게 할까?
위에서 작성했던 명령어의 파일 순서를 반대로 하면 된다.
aws s3 cp s3://joos-devops-terraform/index.html .
파일을 다운로드 받으려면 aws 에서 이 파일을 다운로드 받을 수 있는 권한이 있어야 한다.
s3 객체마다 object url 을 가지고 있다.
위 링크로 브라우저에서 접근을 하면, 객체에 대한 접근 권한이 없기 때문에 파일을 열람할 수 없다.
권한을 주는 방법은 다양하다.
public 으로 설정하면 누구나 접근 가능하게 된다.
그렇다면 현업에서는 어떻게 사용할까?
어떤 파일은 퍼블릭이어야 하고, 어떤 파일은 퍼블릭이면 안되는 것들이 있을 것이다.
권한 관리를 철저하게 해서 s3 버킷을 분리한다거나, 아니면 각 파일에 대한 권한을 퍼블릭으로 준다거나의 방법이 있다.
추가로 s3 에서 정적 웹 사이트 호스팅이 가능하다.
인덱스 페이지는 뭘로 할지, 에러 페이지는 뭘로 할지 설정을 할 수 있다.
versioning 기능도 제공하기 때문에 파일에 대한 버전 관리가 용이하고, 유실 걱정을 하지 않아도 된다.
'DevOps' 카테고리의 다른 글
Terraform의 -parallelism 옵션: 더 빠르고 효율적인 인프라 관리 방법 (0) | 2024.09.05 |
---|---|
AWS IAM 이란? 그리고 Terraform 으로 IAM user, group, role, policy 생성 (1) | 2024.09.05 |
ALB 보다 NLB 가 더 높은 처리량과 짧은 레이턴시를 가지는 이유 (0) | 2024.08.22 |
ALB 와 NLB (0) | 2024.08.22 |
Terraform 을 이용하여 Route Table 생성 (0) | 2024.08.08 |