Elasticsearch 작업 관리

Elasticsearch Jag Eob Gwanli



“이 게시물에서는 클러스터에서 현재 실행 중인 작업에 대한 정보를 볼 수 있게 해주는 Elasticsearch 실험 API 중 하나(이 가이드를 작성하는 시점)를 살펴볼 것입니다.

작업 관리는 모든 관리자에게 중요한 요소이며 Elasticsearch와 같은 복잡한 시스템으로 작업할 때 일부 작업 모니터링을 수행해야 합니다.”

이 API가 수반하는 내용과 시스템 관리자에게 어떻게 도움이 되는지 살펴보겠습니다.







참고: 클러스터 구성 및 보안 설정에 따라 이 API에 모니터 권한이 필요할 수 있습니다.



요청 구문

다음은 작업 관리 API에 요청을 보내는 구문을 보여줍니다.



가져 오기 / _작업 /< task_id >

가져 오기 / _작업

API를 요청하면 명령은 현재 작업 또는 지정된 ID의 작업에 대한 자세한 정보를 반환해야 합니다.





요청 경로 매개변수

요청은 하나의 경로 매개변수를 지원합니다.

  • – 정보를 검색하려는 작업의 고유 ID 값입니다. 작업 ID는 node_id:task_number 패턴을 따릅니다.

쿼리 매개변수 요청

쿼리의 동작과 반환 형식을 사용자 지정하려면 다음 매개변수를 지정할 수 있습니다.



  1. 작업 - 요청을 제한하는 데 사용되는 작업 집합을 정의합니다. 여기에서 작업을 쉼표로 구분된 값 목록으로 정의할 수 있습니다.
  2. 상세 - 요청에 샤드 복구에 대한 자세한 정보가 표시되는지 여부를 정의하는 부울 매개변수입니다. 이 옵션은 기본적으로 false로 설정되어 있습니다.
  3. Group_by – 응답에서 작업을 그룹화하는 데 사용되는 키를 설정합니다. 허용되는 값은 다음과 같습니다.
    • 노드 – 노드 ID.
    • 부모 – 부모 ID.
    • 노드 – 그룹화하지 마십시오.
  4. Node_id – 정보를 가져올 노드 또는 노드 목록을 정의합니다.
  5. parent_task_id – 응답 정보를 필터링하는 데 사용되는 상위 ID를 정의합니다. 모든 작업을 표시하려면 parent_task_id를 -1로 지정합니다.
  6. master_timeout – 요청이 마스터 노드에 대한 연결을 기다리는 기간을 지정합니다. master_timeout 기간이 경과한 후에도 요청이 마스터로부터 응답을 받지 못하면 실패하고 오류를 반환합니다. 기본 지속 시간은 30초로 설정됩니다.
  7. Timeout – master_timeout과 유사하지만 이 값은 응답을 기다리는 기간을 정의합니다.
  8. Wait_for_completion – true인 경우 작업이 종료될 때까지 요청이 차단됩니다. 기본값은 false입니다.

응답

성공하면 요청은 지정된 작업에 대한 자세한 정보를 반환합니다. 작업을 찾을 수 없는 경우 요청은 404 상태 코드를 반환합니다.

사용 예

다음 예에서는 작업 관리 API를 사용하여 클러스터(모든 노드)에서 실행 중인 모든 작업에 대한 정보를 표시하는 방법을 보여줍니다.

컬 -XGET 'http://localhost:9200/_tasks' -시간 'kbn-xsrf: 보고'

요청은 아래 출력과 같이 클러스터의 작업에 대한 정보를 제공해야 합니다.

실시예 2

다음 예에서는 노드 매개변수를 사용하여 노드 slave_1에서 실행 중인 작업으로만 응답을 제한합니다.

컬 -XGET 'http://localhost:9200/_tasks?nodes=slave_1' -시간 'kbn-xsrf: 보고'

그러면 아래 출력과 같이 지정된 노드의 작업이 반환되어야 합니다.

'작업' : {
'Fit416fGR1GJefJxOxLurw:1651265' : {
'마디' : 'slave_1' ,
'ID' : 1651265 ,
'유형' : '수송' ,
'동작' : '인덱스:모니터/플릿/global_checkpoints' ,
'start_time_in_millis' : 1664214054489 ,
'running_time_in_nanos' : 94450056094 ,
'취소 가능' : 거짓,
'헤더' : {
'X-elastic-product-origin' : '함대'
}
}

실시예 3

예제 3에서는 작업 관리 API를 사용하여 지정된 ID를 가진 작업에 대한 정보를 표시합니다.

컬 -XGET 'http://localhost:9200/_tasks/Fit416fGR1GJefJxOxLurw:1656310' -시간 'kbn-xsrf: 보고'

출력 작업 정보는 다음과 같습니다.

실시예 4

작업에 대한 자세한 정보를 표시하려면 다음과 같이 요청에 세부 매개변수를 추가합니다.
[cc lang='apache' 너비='100%' 높이='100%' escaped='true' theme='blackboard' nowrap='0']
컬 -XGET 'http://localhost:9200/_tasks?detailed=true” -H “kbn-xsrf: reporting”
[/c]c
이것은 작업에 대한 추가 정보를 제공해야 합니다.

결론

이 게시물은 탐색 Elasticsearch에서 작업 관리 API를 사용하는 방법. 이 API를 사용하면 클러스터에서 현재 실행 중인 작업에 대한 정보를 검색할 수 있습니다.

건배!! & 다음편에서 잡겠습니다.