Skip to main content
ONTAP Select
이 제품의 최신 릴리즈를 사용할 수 있습니다.
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

ONTAP Select 대한 요청 및 응답 API 트랜잭션

모든 Deploy API 호출은 Deploy 가상 머신에 대한 HTTP 요청으로 수행되며, 이 요청은 클라이언트에 연관된 응답을 생성합니다. 이 요청/응답 쌍은 API 트랜잭션으로 간주됩니다. Deploy API를 사용하기 전에 요청을 제어하는 데 사용할 수 있는 입력 변수와 응답 출력 내용을 숙지해야 합니다.

API 요청을 제어하는 입력 변수

HTTP 요청에 설정된 매개변수를 통해 API 호출이 처리되는 방식을 제어할 수 있습니다.

요청 헤더

HTTP 요청에는 다음을 포함한 여러 헤더를 포함해야 합니다.

  • content-type 요청 본문에 JSON이 포함되어 있는 경우 이 헤더를 application/json으로 설정해야 합니다.

  • 응답 본문에 JSON이 포함되는 경우 이 헤더를 application/json으로 설정해야 합니다.

  • 인증 기본 인증은 base64 문자열로 인코딩된 사용자 이름과 비밀번호로 설정해야 합니다.

요청 본문

요청 본문의 내용은 특정 호출에 따라 다릅니다. HTTP 요청 본문은 다음 중 하나로 구성됩니다.

  • 입력 변수(예: 새 클러스터의 이름)가 있는 JSON 객체

  • 비어 있는

객체 필터링

GET을 사용하는 API 호출을 실행할 때 반환되는 객체를 속성에 따라 제한하거나 필터링할 수 있습니다. 예를 들어, 일치시킬 정확한 값을 지정할 수 있습니다.

<field>=<query value>

정확한 일치 외에도, 다양한 값 범위에 대한 객체 집합을 반환하는 다른 연산자도 있습니다. ONTAP Select 아래에 표시된 필터링 연산자를 지원합니다.

연산자 설명

=

동일하다

<

미만

>

보다 크다

이하

>=

이상 또는 같음

또는

!

같지 않다

*

탐욕스러운 와일드카드

null 키워드나 부정(!null)을 쿼리의 일부로 사용하면 특정 필드가 설정되었는지 여부에 따라 객체 집합을 반환할 수도 있습니다.

객체 필드 선택

기본적으로 GET을 사용하여 API 호출을 실행하면 객체를 고유하게 식별하는 속성만 반환됩니다. 이 최소 필드 집합은 각 객체의 키 역할을 하며 객체 유형에 따라 달라집니다. 다음과 같은 방법으로 fields 쿼리 매개변수를 사용하여 추가 객체 속성을 선택할 수 있습니다.

  • 저렴한 필드 지정 fields=* 로컬 서버 메모리에 유지 관리되거나 액세스하는 데 거의 처리가 필요하지 않은 개체 필드를 검색합니다.

  • 비싼 필드 지정 fields=** 추가적인 서버 처리가 필요한 항목을 포함하여 모든 개체 필드를 검색합니다.

  • 사용자 정의 필드 선택 사용 fields=FIELDNAME 원하는 필드를 정확하게 지정하세요. 여러 필드를 요청할 경우, 공백 없이 쉼표로 값을 구분해야 합니다.

팁 의 필요할 때만 비용이 많이 들거나 저렴한 필드 집합을 검색해야 합니다. 비용이 많이 들거나 저렴한 필드 분류는 NetApp 에서 내부 성능 분석을 기반으로 결정합니다. 분류는 언제든지 변경될 수 있습니다.

출력 세트의 객체 정렬

리소스 컬렉션의 레코드는 객체에 정의된 기본 순서대로 반환됩니다. 다음과 같이 필드 이름과 정렬 방향을 지정하는 order_by 쿼리 매개변수를 사용하여 순서를 변경할 수 있습니다.
order_by=<field name> asc|desc

예를 들어, 유형 필드를 내림차순으로 정렬한 다음 ID를 오름차순으로 정렬할 수 있습니다.
order_by=type desc, id asc

여러 개의 매개변수를 포함하는 경우 필드를 쉼표로 구분해야 합니다.

쪽수 매기기

동일한 유형의 객체 컬렉션에 액세스하기 위해 GET 방식으로 API 호출을 실행하면 기본적으로 일치하는 모든 객체가 반환됩니다. 필요한 경우, 요청과 함께 max_records 쿼리 매개변수를 사용하여 반환되는 레코드 수를 제한할 수 있습니다. 예:
max_records=20

필요한 경우 이 매개변수를 다른 쿼리 매개변수와 결합하여 결과 집합을 좁힐 수 있습니다. 예를 들어, 다음은 지정된 시간 이후에 생성된 최대 10개의 시스템 이벤트를 반환합니다.
time⇒ 2019-04-04T15:41:29.140265Z&max_records=10

이벤트(또는 모든 객체 유형)를 페이지별로 탐색하기 위해 여러 요청을 보낼 수 있습니다. 이후의 각 API 호출은 마지막 결과 집합의 최신 이벤트를 기반으로 새로운 시간 값을 사용해야 합니다.

API 응답 해석

각 API 요청은 클라이언트에게 응답을 생성합니다. 응답을 검토하여 성공 여부를 확인하고 필요에 따라 추가 데이터를 검색할 수 있습니다.

HTTP 상태 코드

Deploy REST API에서 사용하는 HTTP 상태 코드는 아래와 같습니다.

암호 의미 설명

200

OK

새로운 객체를 생성하지 않는 호출의 경우 성공을 나타냅니다.

201

생성됨

객체가 성공적으로 생성되었습니다. 위치 응답 헤더에 객체의 고유 식별자가 포함되어 있습니다.

202

수락됨

요청을 수행하기 위해 장기 실행 백그라운드 작업이 시작되었지만 작업이 아직 완료되지 않았습니다.

400

잘못된 요청

요청 입력이 인식되지 않거나 부적절합니다.

403

금지됨

인증 오류로 인해 접근이 거부되었습니다.

404

찾을 수 없음

요청에 언급된 리소스가 존재하지 않습니다.

405

허용되지 않는 메서드입니다

요청의 HTTP 동사는 해당 리소스에서 지원되지 않습니다.

409

갈등

개체가 이미 존재하기 때문에 개체를 생성하려는 시도가 실패했습니다.

500

내부 오류

서버에서 일반적인 내부 오류가 발생했습니다.

501

구현되지 않음

URI는 알려져 있지만 요청을 수행할 수 없습니다.

응답 헤더

Deploy 서버에서 생성된 HTTP 응답에는 다음을 포함한 여러 헤더가 포함됩니다.

  • 요청 ID 모든 성공적인 API 요청에는 고유한 요청 식별자가 지정됩니다.

  • 위치 객체가 생성되면 위치 헤더에는 고유한 객체 식별자를 포함한 새 객체의 전체 URL이 포함됩니다.

대응 기관

API 요청과 관련된 응답 내용은 객체, 처리 유형, 요청의 성공 또는 실패 여부에 따라 달라집니다. 응답 본문은 JSON 형식으로 렌더링됩니다.

  • 단일 객체: 요청에 따라 필드 집합과 함께 단일 객체를 반환할 수 있습니다. 예를 들어, GET을 사용하면 고유 식별자를 사용하여 클러스터의 선택된 속성을 검색할 수 있습니다.

  • 여러 객체 리소스 컬렉션에서 여러 객체를 반환할 수 있습니다. 모든 경우에 일관된 형식이 사용됩니다. num_records 레코드 수와 객체 인스턴스 배열을 포함하는 레코드 수를 나타냅니다. 예를 들어, 특정 클러스터에 정의된 모든 노드를 검색할 수 있습니다.

  • Job 객체 API 호출이 비동기적으로 처리되면 백그라운드 작업을 고정하는 Job 객체가 반환됩니다. 예를 들어, 클러스터 배포에 사용되는 POST 요청은 비동기적으로 처리되어 Job 객체를 반환합니다.

  • 오류 객체: 오류가 발생하면 항상 Error 객체가 반환됩니다. 예를 들어, 이미 존재하는 이름으로 클러스터를 생성하려고 하면 오류가 발생합니다.

  • 비어 있음 특정 경우에는 데이터가 반환되지 않고 응답 본문이 비어 있습니다. 예를 들어, DELETE 키를 사용하여 기존 호스트를 삭제한 후 응답 본문이 비어 있는 경우가 있습니다.