2017-11-21 3 views
3

최근 ElasticStack 인스턴스를 5.5에서 6.0으로 업그레이드했는데이 버전의 주요 변경 사항 중 일부가 내 파이프 라인을 손상시키는 것으로 보입니다. 나는 ElasticSearch 내의 인덱스에 따라 유사한 인덱스의 일부 그룹에 대해 인덱스 패턴을 자동으로 생성하는 스크립트를 사용했습니다. 문제는 6.0 버전의 새로운 매핑 변경으로 인해 콘솔에서 새로운 인덱스 패턴을 추가 할 수 없다는 것입니다. 이것은 내가 사용 요청했고 5.5에서 잘 작동 :Kibana 6.0을 사용하여 콘솔에서 인덱스 패턴 만들기

{ 
    "error": { 
    "root_cause": [ 
     { 
     "type": "illegal_argument_exception", 
     "reason": "Rejecting mapping update to [.kibana] as the final mapping would have more than 1 type: [index-pattern, doc]" 
     } 
    ], 
    "type": "illegal_argument_exception", 
    "reason": "Rejecting mapping update to [.kibana] as the final mapping would have more than 1 type: [index-pattern, doc]" 
    }, 
    "status": 400 
} 

가 어떻게 콘솔에서 인덱스 패턴을 추가 할 수 있습니다 ElasticSearch에서 6.0에서, 이것은 내가 지금 얻을 응답입니다

curl -XPOST "http://localhost:9200/.kibana/index-pattern" -H 'Content- Type: application/json' -d' 
{ 
    "title" : "index_name", 
    "timeFieldName" : "execution_time" 
}' 

이 다중 매핑 문제를 피할 수 있습니까?

답변

1

의 URL https://www.elastic.co/guide/en/elasticsearch/reference/current/removal-of-types.html 버전 6.0.0에서 변경되었습니다, 여기에 새로운 URL 인 응답을

curl -XPOST "http://localhost:9200/.kibana/doc/index-pattern:my-index-pattern-name" -H 'Content-Type: application/json' -d' 
{ 
    "type" : "index-pattern", 
    "index-pattern" : { 
    "title": "my-index-pattern-name*", 
    "timeFieldName": "execution_time" 
    } 
}' 
+0

감사! 작동하는 것 같습니다. 그러나 ES에서 성공 메시지를 반환하더라도 새 인덱스 패턴은 인덱스 패턴 페이지에 나타나지 않습니다. 내가 뭐 놓친 거 없니? –

+0

http : // localhost : 9200/.kibana/_search –

+0

제발 좀 더 정확하게 CURL을 업데이트 해주세요. –

0

Elasticsearch 6.0.0 이상에서 생성 된 색인에는 단일 매핑 유형 만 포함될 수 있습니다.

다중 매핑 유형으로 5.x에서 생성 된 인덱스는 Elasticsearch 6.x에서 이전처럼 계속 작동합니다.

매핑 유형은 Elasticsearch 7.0.0에서 완전히 제거됩니다.

ES 6.0.0에서 둘 이상의 doc_types가 포함 된 색인을 작성한 것일 수 있습니다.

http://localhost:9200/.kibana/doc/doc:index-pattern:my-index-pattern-name

이 CURL 당신을 위해 작동합니다 :

+0

감사합니다! 나는 나의 초기 요청에이 다중 매핑 유형 옵션을 사용하고 있는지 몰랐다. 그렇다면 다중 매핑 유형을 사용하지 않고 어떻게 인덱스 패턴을 추가 할 수 있습니까? –

+0

'.kibana'를 ES 6.0.0으로 다시 색인하고 6.0 버전의 kibana를 사용해야 할 수도 있습니다. 해결책은 다음과 같습니다. https://www.elastic.co/guide/en/kibana/current/migrating-6.0- index.html – Lunatictwo

+0

문제는 저의 오래된'.kibana' 색인이 그 과정에서 없어져서 오래된 파이프 라인을 복구하려고하는 것입니다. 이 오래된 파이프 라인은 매일 기존 인덱스를 검사하고 인덱스에 해당 인덱스 패턴이 없으면 자동으로 만들어졌습니다. 나는 Kibana의 UI를 사용하지 않고 웹 요청이나 컬을 사용하여 인덱스 패턴을 만드는 방법이 있다고 확신하지만 문서에서이 방법을 찾을 수는 없습니다. –

관련 문제