2015-01-15 3 views
1

우분투 14.04에서 ElasticSearch를 실행하고 있는데 ES에서 특정 색인에 대한 템플릿을 찾을 수없는 것 같습니다. 문서에 /etc/elasticsearch/config/ 아래에 템플릿 디렉토리를 두어야한다는 내용이 혼동 스럽지만 설명서의 뒷부분에 /etc/elasticsearch이라는 구성이 있어야합니다 (예 : yaml 파일이 /etc/elasticsearch 인 경우).ElasticSearch Templates

나는 그것의 그것이 내가 할 수있는 것입니다 발견하지 알고 그 이유는

컬 -XGET 'http://localhost:9200/_template/my_template?pretty'

다시 빈 JSON 개체를 얻을.

답변

2

템플릿에 대한 config 노트에 따르면

인덱스 템플릿도 템플릿 디렉토리 (참고 아래의 설정 위치 (path.conf) 내에 배치 될 수 있으며, 모든 마스터 자격 노드를 배치해야합니다). 귀하의 경우에는

, 기본 구성 디렉토리는 /etc/elasticsearch은 다음 /etc/elasticsearch/templates라는 폴더 안에 템플릿을 배치 할 수있는 경우. 마스터 적합 노드를 실행중인 모든 서버에 해당 파일을 배치해야합니다. (예 : 작은 클러스터의 경우 모든 노드에 적용)

제 경험상 HTTP API를 사용하여 POST 템플릿을 만드는 것이 좀 더 일반적입니다. 이렇게하면 서버에서 구성을 관리하고 배포하는 것에 대해 걱정할 필요없이 템플릿을 추가하고 제거 할 수 있습니다.

Index Templates

+0

여전히 작동하지 않습니다 템플릿에서 그들을 배치,하지만 난 당신이 제안하고 간단하게 그들을 게시 무엇을 할 거주했습니다. 도와 주셔서 감사합니다 – dvreed77

+0

그래, 확실한거야. 일반적으로 Elasticsearch를 사용하면 API를 채택하고 서버 측 구성을 피하는 것이 가장 좋습니다. –

+2

API를 사용하여 ES에 템플릿을 게시하면 확실히 갈 수 있습니다. 명시 적으로 매핑을 직접 추가하면 매핑이 자동으로 선택되는지 걱정할 필요가 없습니다. 그러나 조심하십시오. 예를 들어 미들웨어를 통해 모든 ES 요청을 프록시하지 않는 한 경쟁 조건이 생겨 하나의 클라이언트가 다른 클라이언트가 ES 인덱스에 쓰기 전에 매핑을 생성 할 수 있습니다.이 경우 ES는 기본 매핑을 선택합니다. –