Amazon EFS API - Amazon Elastic File System

Amazon EFS API

아마존 EFS API는 HTTP (RFC 2616)를 기반으로 하는 네트워크 프로토콜입니다. 각 API 직접 호출에 대해 파일 시스템을 관리하려는 AWS 리전의 리전별 Amazon EFS API 엔드포인트에 HTTP 요청을 보냅니다. API에서는 HTTP 요청/응답 본문에 대해 JSON(RFC 4627) 문서를 사용합니다.

아마존 EFS API는 RPC 모델입니다. 이 모델은 고정된 작업 세트가 있고, 이전 상호 작용이 없어도 클라이언트가 각 작업의 구문을 알고 있습니다. 다음 섹션에서 추상 RPC 표기법을 사용한 각 API 작업에 대한 설명을 볼 수 있습니다. 각 작업에는 네트워크 상에 나타나지 않는 작업 이름이 있습니다. 각 작업에 대해 주제는 HTTP 요청 요소에 대한 매핑을 지정합니다.

지정된 요청이 매핑되는 특정 Amazon EFS 작업은 요청 메서드(GET, PUT, POST 또는 DELETE)와 요청-URI가 일치되는 다양한 패턴의 조합에 따라 결정됩니다. PUT 또는 POST 작업인 경우 Amazon EFS에서는 요청-URI 경로 세그먼트, 쿼리 파라미터, 요청 본문의 JSON 객체에서 직접 호출 인수를 추출합니다.

참고

작업 이름(예: CreateFileSystem)은 유선에 표시되지 않지만 AWS Identity and Access Management(IAM) 정책에서 의미가 있습니다. 자세한 내용은 Amazon EFS의 자격 증명 및 액세스 관리를 참조하세요.

작업 이름은 명령줄 도구 및 AWS SDK API 요소에서 명령의 이름을 지정하는 데에도 사용됩니다. 예를 들어, CreateFileSystem 작업에 매핑되는 create-file-system이라는 이름의 AWS CLI 명령이 있습니다.

이 작업 이름은 Amazon EFS API 직접 호출에 대한 AWS CloudTrail 로그에도 표시됩니다.

API 엔드포인트

API 엔드포인트는 API 직접 호출에 대한 HTTP URI에서 호스트로 사용되는 DNS 이름입니다. 이러한 API 엔드포인트는 AWS 리전별로 고유하며 다음과 같은 형식을 사용합니다.

elasticfilesystem.aws-region.amazonaws.com

예를 들어 미국 서부(오레곤) 리전의 Amazon EFS API 엔드포인트는 다음과 같습니다.

elasticfilesystem.us-west-2.amazonaws.com

Amazon EFS가 지원하는 AWS 리전 목록(파일 시스템을 생성하고 관리할 수 있는 곳)은 AWS 일반 참조Amazon Elastic File System을 참조하세요.

리전별 API 엔드포인트는 API 직접 호출을 생성할 때 액세스 가능한 Amazon EFS 리소스의 범위를 정의합니다. 예를 들어, 이전 엔드포인트를 사용하여 DescribeFileSystems 작업을 직접 호출할 경우 계정에 생성된 미국 서부(오레곤) 리전의 작업 목록이 표시됩니다.

API 버전

호출에 사용 중인 API 버전은 요청 URI의 첫 번째 경로 세그먼트로 식별할 수 있으며 형식은 ISO 8601 날짜입니다. 예제는 CreateFileSystem을 참조하세요.

이 문서에서는 API 버전 2015-02-01에 대해 설명합니다.

다음 섹션에서는 API 작업에 대한 설명, 요청 인증을 위한 서명을 생성하는 방법, IAM 정책을 사용하여 이러한 API 작업에 대한 권한을 부여하는 방법을 제공합니다.

Amazon EFS의 쿼리 API 요청 속도 활용하기

Amazon EFS API 요청은 서비스 성능을 높이기 위해 AWS 계정마다 리전별로 제한됩니다. 애플리케이션에서 시작하든, AWS CLI 또는 Amazon EFS 콘솔에서 시작되었든 관계없이 모든 Amazon EFS API 직접 호출은 최대 허용 API 요청 속도를 초과해서는 안 됩니다. 최대 API 요청 속도는 AWS 리전별로 다를 수 있습니다. API 요청은 기본 AWS 계정 요청에 따라 생성됩니다.

API 요청이 해당 카테고리의 API 요청 비율을 초과하는 경우 요청은 ThrottlingException 오류 코드를 반환합니다. 이 오류를 방지하려면 애플리케이션이 API 요청을 빠른 속도로 재시도하지 않도록 해야 합니다. 폴링 시 주의를 기울이고 지수 백오프 재시도를 사용하면 이 작업을 수행할 수 있습니다.

폴링

애플리케이션이 API 작업을 반복해서 직접 호출하여 업데이트 상태를 확인해야 할 수 있습니다. 폴링을 시작하기 전에 요청이 완료될 수 있도록 시간을 주세요. 폴링을 시작할 때는 연속된 요청 사이에 적절한 휴면 간격을 두세요. 최상의 결과를 얻으려면 휴면 간격을 늘리세요.

재시도 또는 일괄 처리

애플리케이션이 API 요청을 실패하면 다시 시도하거나 여러 리소스(예: 모든 Amazon EFS 파일 시스템)를 처리해야 할 수 있습니다. API 요청 속도를 낮추려면 연속된 요청 사이에 적절한 휴면 간격을 사용하세요. 최상의 결과를 얻으려면 휴면 간격을 늘리거나 가변적으로 사용하세요.

휴면 간격 계산

API 요청을 폴링하거나 재시도해야 하는 경우 지수 백오프 알고리즘을 사용하여 API 직접 호출 간 휴면 간격을 계산하는 것이 좋습니다. 지수 백오프의 기본 개념은 오류 응답이 연이어 나올 때마다 재시도 간 대기 시간을 점진적으로 늘리는 것입니다. 이 알고리즘에 대한 자세한 내용 및 구현 예는 Amazon Web Services 일반 참조AWS 오류 재시도 및 지수 백오프를 참조하세요.