Amazon S3 버킷에서 “cp” 또는 “sync” 명령을 실행할 때 발생하는 연결 오류 문제를 해결하려면 어떻게 해야 하나요?

3분 분량
0

Amazon Simple Storage Service(S3) 버킷에서 “cp” 또는 “sync” 명령을 실행하려고 합니다. 그런데 오류가 발생합니다.

간략한 설명

AWS Command Line Interface(AWS CLI)에서 cp 또는 sync 명령을 실행하려면 컴퓨터가 올바른 Amazon S3 엔드포인트에 연결되어야 합니다. 그러지 않으면 서비스가 엔드포인트 URL에 연결할 수 없다거나 연결 시간이 초과되었다는 메시지와 함께 오류가 발생합니다. 오류에 따라 관련 문제 해결 단계를 따르세요.

“엔드포인트 URL에 연결할 수 없음” 에러

  • 올바른 AWS 리전 및 Amazon S3 엔드포인트인지 확인하세요.
  • DNS가 S3 엔드포인트로 변환될 수 있는지 확인합니다.

“엔드포인트 URL 연결 시간 초과” 오류:

  • 네트워크가 S3 엔드포인트에 연결할 수 있는지 확인합니다.
  • Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스의 경우 Virtual Private Cloud(VPC) 구성을 확인하세요.

참고: AWS CLI 명령을 실행할 때 오류가 발생하면, 최신 AWS CLI 버전을 사용하고 있는지 확인하세요.

해결 방법

올바른 AWS 리전 및 Amazon S3 엔드포인트를 사용하고 있는지 확인

AWS CLI에서 명령을 실행하면 기본 AWS 리전의 S3 엔드포인트로 API 요청이 전송됩니다. 지역을 지정한 경우에는 해당 리전의 S3 엔드포인트로 API 요청을 보냅니다. 그러면 AWS CLI에서 요청을 버킷의 리전 S3 엔드포인트로 리디렉션합니다.

지정한 리전이나 엔드포인트에 오타나 오류가 있으면 “엔드포인트 URL에 연결할 수 없음” 오류가 발생할 수 있습니다. 예를 들어, 다음 명령에서는 엔드포인트 이름에 알파벳 e가 실수로 추가되어서 오류가 발생했습니다.

aws s3 cp filename s3://DOC-EXAMPLE-BUCKET/ --endpoint-url https://s3-acceleratee.amazonaws.com

cp 또는 sync 명령을 실행하기 전에 연결된 리전S3 엔드포인트가 올바른지 확인하세요.

참고: Amazon S3 Transfer Acceleration(Amazon S3TA)을 사용하는 경우 엔드포인트 이름과 관련해 Amazon S3 Transfer Acceleration(Amazon S3TA)을 사용해 빠르고 안전한 파일 전송을 참고하세요.

DNS가 S3 엔드포인트로 변환될 수 있는지 확인

DNS가 Amazon S3 엔드포인트로 확인할 수 있는지 확인하려면 nslookup 또는 ping과 같은 DNS 쿼리 도구를 사용하세요. 다음 예제에서는 nslookup을 사용합니다.

nslookup s3.amazonaws.com

다음 예제에서는 ping을 사용해 DNS가 S3 엔드포인트로 확인되는지 확인합니다.

ping s3.amazonaws.com

DNS가 S3 엔드포인트로 확인되지 않으면 DNS 구성 문제를 해결하세요. Amazon Route 53이 DNS 공급자인 경우에는 Amazon Route 53 문제 해결을 참고하세요.

네트워크가 S3 엔드포인트에 연결할 수 있는지 확인

네트워크 방화벽이 Amazon S3 트래픽에 사용 중인 포트의 Amazon S3 엔드포인트로 가는 트래픽을 허용하는지 확인합니다.

예를 들어, 다음telnet 명령은 포트 443에서 ap-southeast-2 리전 S3 엔드포인트로 연결을 테스트합니다.

telnet s3.ap-southeast-2.amazonaws.com 443

**참고:**리전 엔드포인트와 포트(443 또는 80)를 사용 사례에 맞는 값으로 바꾸세요.

EC2 인스턴스의 경우 VPC 구성을 확인합니다.

EC2 인스턴스에서 이 오류가 표시되면, VPC 구성을 확인하세요. EC2 인스턴스가 공용 서브넷에 있는 경우, 다음 조건을 확인하세요.

EC2 인스턴스가 프라이빗 서브넷에 있는 경우, 다음 조건을 확인하세요.

  • 서브넷의 라우팅 테이블과 연결된 Network Address Translation(NAT) 게이트웨이가 있는지 확인합니다. NAT 게이트웨이는 Amazon S3 엔드포인트로 가는 인터넷 경로를 프로비저닝합니다.
  • Amazon S3용 VPC 엔드포인트를 사용하는 경우, AWS CLI 구성 파일에 올바른 리전이 있는지 확인하세요. Amazon S3의 VPC 엔드포인트는 지역별로 다릅니다. VPC 엔드포인트가 다른 리전에 있을 때 --region us-west-1으로 sync 명령을 실행하면, CLI에서 https://s3.us-west-1.amazonaws.com에 연결합니다. 이로 인해 “엔드포인트 URL에 연결할 수 없음” 오류가 표시됩니다.
AWS 공식
AWS 공식업데이트됨 7달 전