본문 바로가기

AWS

EC2와 S3를 연결해보기

오늘은 EC2에서 S3를 접근하여 파일을 업로드해보는 것을 도전하겠습니다.

 

정책 설정

우선은 간단하게 버킷을 만들어 보겠습니다.

 

 

그리고 VPC에서 엔드포인트를 생성합니다.

 

 

서비스에서 s3를 검색한 후 GateWay유형인 서비스를 선택해줍니다.

 

그리고 vpc는 사용할 ec2의 vpc로 선택해줍니다.

 

 

 

다음으로 JSON으로 작성된 버킷 정책을 설정해줍니다.

{
    "Version": "2012-10-17",
    "Id": "Policy1415115909152",
    "Statement": [
            {
                "Sid": "Access-to-specific-VPCE-only",
                "Effect": "Allow",
                "Principal": "*",
                "Action": "s3:*",
                "Resource": "(버킷 ARN)/*",
                "Condition": {
                    "StringEquals": {
                        "aws:sourceVpce": "(VPC의 엔드포인트)"
                    }
                }
            }
        ]
}

 

 

그리고 EC2 쉘에서 쉽게 접근하기 위해 AWS Cli를 설치하여줍니다.

$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
$ unzip awscliv2.zip
$ sudo ./aws/install

$ aws --version
aws-cli/2.7.9 Python/3.9.11 Linux/5.13.0-51-generic exe/x86_64.ubuntu.20 prompt/off

 

aws cli를 사용하여 현재 s3 리스트를 한번 확인해봅니다.

$ aws s3 ls

방금 만든 s3가 출력됩니다.

 

 

이제 한번 ec2에서 s3로 파일을 업로드 해봅시다.

간단한 JSON 파일을 ec2에 저장해줍니다.

 

이제 이 JSON파일을 S3에 업로드 해봅시다. 

$ aws s3 cp (파일이름) s3://(버킷이름)

aws cli 커맨드를 이용해 업로드 할 수 있습니다.

 

 

 

파일 업로드 성공

s3에 example.json 파일이 업로드 된 것을 확인할 수 있습니다.

이번에는 저 example.json 파일을 ec2로 다운로드 해보겠습니다.

$ aws s3 cp s3://(버킷 이름)/(파일 이름) (Local Path)

 

 

다운로드도 성공하고 파일도 문제없음을 확인할 수 있습니다!

'AWS' 카테고리의 다른 글

RDS 생성 후 EC2와 연동해보기  (0) 2023.08.02