본문 바로가기
WIKI 기술 지식 베이스

Communicate with OpenSearch

원문 보기 위키 갱신

출처: 문서

본문

OpenSearch와 통신하기

OpenSearch 클러스터와 REST API를 사용하여 상호작용해요. REST API를 통해 대부분의 OpenSearch 설정을 변경하고, 인덱스를 수정하고, 클러스터 상태를 확인하고, 통계를 얻는 등 거의 모든 작업을 할 수 있어요. cURL 같은 클라이언트나 HTTP 요청을 보낼 수 있는 모든 프로그래밍 언어를 사용할 수 있어요.

터미널이나 OpenSearch Dashboards의 Dev Tools 콘솔에서 HTTP 요청을 보낼 수 있어요.

프로그래밍 언어로 OpenSearch와 통신해야 한다면, 사용 가능한 클라이언트 목록을 Clients 섹션에서 확인해요.

터미널에서 요청 보내기

터미널에서 cURL 요청을 보낼 때 요청 형식은 Security 플러그인 사용 여부에 따라 달라져요.

  • Security 플러그인 미사용: http:// URL을 사용하고 인증이 없어요.
  • Security 플러그인 사용: https:// URL을 사용하고 사용자 이름/비밀번호 자격 증명을 제공해요.

예를 들어, Cluster Health API에 요청을 보내는 경우를 생각해 봐요.

Security 플러그인을 사용하지 않는다면 다음 요청을 보내요:

curl -X GET "http://localhost:9200/_cluster/health"

{% include copy.html %}

Security 플러그인을 사용한다면 요청에 사용자 이름과 비밀번호를 제공해요. 기본 사용자 이름은 admin이고, 비밀번호는 docker-compose.yml 파일의 OPENSEARCH_INITIAL_ADMIN_PASSWORD=<custom-admin-password> 설정에 지정되어 있어요:

curl -X GET "https://localhost:9200/_cluster/health" -ku admin:<custom-admin-password>

{% include copy.html %}

Pretty 형식

OpenSearch는 기본적으로 응답을 평면 JSON 형식으로 반환해요. 사람이 읽기 쉬운 응답 본문을 원한다면 pretty 쿼리 매개변수를 제공해요:

curl -X GET "http://localhost:9200/_cluster/health?pretty"

{% include copy.html %}

pretty 및 기타 유용한 쿼리 매개변수에 대한 자세한 내용은 Common REST parameters를 참조해요.

요청 본문

본문이 포함된 요청의 경우 Content-Type 헤더를 지정하고 -d(데이터) 옵션에 요청 페이로드를 제공해요:

curl -X GET "http://localhost:9200/_search?pretty" -H 'Content-Type: application/json' -d'
{
  "query": {
    "match_all": {}
  }
}'

{% include copy.html %}

Dev Tools에서 요청 보내기

OpenSearch Dashboards의 Dev Tools 콘솔은 cURL 명령에 비해 더 간단한 구문으로 REST 요청을 형식화해요. Dev Tools에서 요청을 보내려면 다음 단계를 따라요:

  1. OpenSearch 클러스터가 실행 중인 동일한 호스트의 웹 브라우저에서 http://localhost:5601/을 열어 OpenSearch Dashboards에 접속해요. Security 플러그인을 사용하는 경우 https://localhost:5601/을 열어 접속해요. 기본 사용자 이름은 admin이고, 비밀번호는 docker-compose.yml 파일의 OPENSEARCH_INITIAL_ADMIN_PASSWORD=<custom-admin-password> 설정에 지정되어 있어요.
  2. 상단 메뉴 바에서 Management > Dev Tools로 이동해요.
  3. 콘솔의 왼쪽 창에 다음 요청을 입력해요:
    GET _cluster/health
    
    {% include copy-curl.html %}
  4. 요청의 오른쪽 상단에 있는 삼각형 아이콘을 선택하여 쿼리를 제출해요. Ctrl+Enter(Mac 사용자는 Cmd+Enter)를 눌러 요청을 제출할 수도 있어요. 쿼리 제출을 위한 OpenSearch Dashboards 콘솔 사용에 대한 자세한 내용은 Console을 참조해요.

대부분의 OpenSearch 문서에서 요청은 Dev Tools 콘솔 형식으로 제공돼요.

추가 자료

  • OpenSearch REST API에 대한 정보는 REST API reference를 참조해요.
  • OpenSearch 언어 클라이언트에 대한 정보는 Clients를 참조해요.

다음 단계

더 알아보기 (Learn more)