我正在尝试在 Elasticsearch 中自动使用索引模板,因此我开始在“[ES_CONFIG_DIR]/templates/”目录中创建文件(http://www.elastic.co/guide/en/elasticsearch/ reference/current/indices-templates.html#config)具有正确的格式(示例文件: http: //pastebin.com/waKCBGgW)。我的 Chef 食谱执行以下步骤:
1.在“[ES_CONFIG_DIR]/templates/tpl_misc.json”目录下创建JSON模板文件 2.重启elasticsearch服务
完成此操作的厨师代码块是:
相关属性:
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/elasticsearch/templates 中),尽管当我检查是否存在于 ES 中时(curl -iL http://localhost:9200/_template/tpl_misc)我总是得到 404。有人对我的问题有什么建议吗?
感谢您的帮助!