Шаблоны индексов на основе файлов Elasticsearch не отображаются в вызове API "/_template"
Я пытаюсь автоматизировать использование шаблонов индекса в Elasticsearch, поэтому я начал создавать файлы в каталоге "[ES_CONFIG_DIR]/templates/" ( http://www.elastic.co/guide/en/elasticsearch/reference/current/indices-templates.html) в правильном формате (пример файла: http://pastebin.com/waKCBGgW). Моя поваренная книга шеф-повара выполняет следующие действия:
1. Создайте файл шаблона JSON в каталоге "[ES_CONFIG_DIR]/templates/tpl_misc.json". 2. Перезапустите службу эластичного поиска.
Блок кода шеф-повара для завершения этого:
Связанные атрибуты:
default['elasticsearch']['index_templates'] = [
"tpl_misc"
]
Связать код рецепта:
directory "#{node['elasticsearch']['path']['conf']}/templates" do
owner 'elasticsearch'
group 'elasticsearch'
mode '0755'
action :create
end
node['elasticsearch']['index_templates'].each do |tpl|
template "#{node['elasticsearch']['path']['conf']}/templates/#{tpl}.json" do
source "#{tpl}.erb"
owner 'elasticsearch'
group 'elasticsearch'
mode '0644'
notifies :restart, 'service[elasticsearch]'
end
end
Я могу подтвердить, что файлы шаблонов создаются там, где они должны (в / usr / local / etc /asticsearch/templates), хотя, когда я проверяю, существует ли ES (curl -iL http://localhost:9200/_template/tpl_misc) и я всегда получаю 404. Кто-нибудь есть какие-либо советы по поводу моей проблемы?
Я ценю помощь!
2 ответа
Я узнал, что шаблоны индекса, добавленные в виде файлов в каталоге "[CONFIG]/templates/", в настоящее время не отображаются в результатах метода API "/ _template / " *. Кто-то ссылается на это в следующей теме:
Хотя это не было задокументировано в официальной документации шаблонов индексов на веб-сайте Elasticsearch. С тех пор я создал запрос на получение обновлений документации, что также привело к открытию проблемы для добавления возможности к методу API "/ _template /".
Шаблоны из конфигурационных файлов больше не поддерживаются. Вместо этого используйте запрос PUT для API.
https://www.elastic.co/guide/en/elasticsearch/reference/2.1/breaking_20_index_api_changes.html
https://github.com/elastic/elasticsearch/issues/10193
Это может быть автоматизировано с помощью curl для тех, кто пытается использовать ansible или что-то еще для предоставления своих узлов. Основным недостатком является то, что вам нужно подождать, пока ваш узел будет активен, прежде чем вы сможете свернуться.