elasticsearch 厨师:重新使用以前注册的节点(AMI)并引导它-不工作,elasticsearch,chef-infra,amazon-ami,knife,elasticsearch,Chef Infra,Amazon Ami,Knife" /> elasticsearch 厨师:重新使用以前注册的节点(AMI)并引导它-不工作,elasticsearch,chef-infra,amazon-ami,knife,elasticsearch,Chef Infra,Amazon Ami,Knife" />

elasticsearch 厨师:重新使用以前注册的节点(AMI)并引导它-不工作

elasticsearch 厨师:重新使用以前注册的节点(AMI)并引导它-不工作,elasticsearch,chef-infra,amazon-ami,knife,elasticsearch,Chef Infra,Amazon Ami,Knife,我们的团队正试图扩展我们目前的弹性搜索集群。在此过程中,我们获取当前弹性节点的AMI,并使用该AMI创建潜在的第四个弹性节点。过去,Chef用于配置新的弹性节点。然而,那些食谱的设计者离开了我们的团队,我们不知所措。当我尝试引导新主机时,出现以下错误: Recipe Compile Error in /var/chef/cache/cookbooks/av_elastic/recipes/elastic_cluster.rb ===============================

我们的团队正试图扩展我们目前的弹性搜索集群。在此过程中,我们获取当前弹性节点的AMI,并使用该AMI创建潜在的第四个弹性节点。过去,Chef用于配置新的弹性节点。然而,那些食谱的设计者离开了我们的团队,我们不知所措。当我尝试引导新主机时,出现以下错误:

  Recipe Compile Error in /var/chef/cache/cookbooks/av_elastic/recipes/elastic_cluster.rb
  ================================================================================

  Net::HTTPServerException
  ------------------------
  400 "Bad Request"

  Cookbook Trace:
  ---------------
    /var/chef/cache/cookbooks/av_elastic/recipes/elastic_cluster.rb:134:in `from_file'

  Relevant File Content:
  ----------------------
  /var/chef/cache/cookbooks/av_elastic/recipes/elastic_cluster.rb:

127:    message "Block devices available to Elasticsearch: #{devices}"
  128:    level :warn
  129:  end
  130:
  131:  ## Gather Available Nodes within same es-cluster-name, Chef Environment, and elastic_cluster role. Exclude marvel nodes
  132:  elasticsearch_cluster_nodes = Array.new
  133:  elasticsearch_cluster_node_names = Array.new
  134>> search(:node, "chef_environment:#{node.chef_environment} AND roles:*elastic_cluster AND es-cluster-name:#{node['es-cluster-name']} NOT roles:*elastic_marvel").each do |node|
  135:    elasticsearch_cluster_nodes << node
  136:    elasticsearch_cluster_node_names << node['hostname']
  137:  end
  138:

由于我们正在使用以前的主机,我已经更新了/etc/hosts和/etc/hostname文件,同时删除了/etc/chef/client.pem文件。我认为问题在于身份验证,但我无法证明这一点。我还认为这个主机上可能留下了一些东西,仍然指向/认为它是另一个主机(创建AMI的主机)


当前运行的弹性节点使用与新主机相同的方法,它们都按照设计工作/运行。有没有关于如何修复的想法?提前谢谢

在调试日志中
es cluster name:NOT
似乎表明
node['es-cluster-name']
属性为空。@seshadri\u c非常感谢您的输入。是的,这就是问题所在。我们的bootstrap命令缺少-j“es cluster name”json属性。一旦我删除了current client.rb并更新了bootstrap命令,一切都正常了。再次感谢你!
[2020-11-24T15:58:00+00:00] DEBUG: ---- HTTP Response Body ----
[2020-11-24T15:58:00+00:00] DEBUG: {"error":["invalid search query: 'chef_environment:production AND roles:*elastic_cluster AND es-cluster-name: NOT roles:*elastic_marvel'"]}
[2020-11-24T15:58:00+00:00] DEBUG: ---- End HTTP Response Body -----
[2020-11-24T15:58:00+00:00] DEBUG: Chef::HTTP calling Chef::HTTP::ValidateContentLength#handle_response
[2020-11-24T15:58:00+00:00] DEBUG: Expected JSON response, but got content-type ''