通过API的领事注册脚本检查不起作用

时间:2018-11-11 01:58:55

标签: consul

我正在使用Chef运行bash命令,该命令将向consul注册脚本运行状况检查,并且我的示例代码遇到以下错误。我尝试查看文档,但对我来说似乎不起作用。有关可能出什么问题的建议?

我要iu

错误消息

 ================================================================================
    Error executing action `run` on resource 'bash[register_init_checks]'
    ================================================================================

    Mixlib::ShellOut::ShellCommandFailed
    ------------------------------------
    Expected process to exit with [0], but received '1'
    ---- Begin output of "bash"  "/tmp/chef-script20181110-4847-1tg4kmv" ----
    STDOUT:
    STDERR: /tmp/chef-script20181110-4847-1tg4kmv: line 1: [/work-disk/consul/data/mem-check.sh],: No such file or directory
    ---- End output of "bash"  "/tmp/chef-script20181110-4847-1tg4kmv" ----
    Ran "bash"  "/tmp/chef-script20181110-4847-1tg4kmv" returned 1

    Resource Declaration:
    ---------------------
    # In /var/chef/cache/cookbooks/consul/recipes/default.rb

    190: bash 'register_init_checks' do
    191:   code <<-EOH
    192:   curl --request PUT --data #{mem_check} http://127.0.0.1:8500/v1/agent/check/register
    193:   EOH
    194:   action :run
    195: end

    Compiled Resource:
    ------------------
    # Declared in /var/chef/cache/cookbooks/consul/recipes/default.rb:190:in `from_file'

    bash("register_init_checks") do
      action [:run]
      default_guard_interpreter :default
      command nil
      backup 5
      interpreter "bash"
      declared_type :bash
      cookbook_name "consul"
      recipe_name "default"
      user nil
      code "  curl --request PUT --data {\"check\"=>{\"id\"=>\"mem-check\", \"name\"=>\"Memory utilization\", \"args\"=>[\"/work-disk/consul/data/mem-check.sh\"], \"interval\"=>\"10s\", \"timeout\"=>\"1s\"}} http://127.0.0.1:8500/v1/agent/check/register\n"
      domain nil
    end

    System Info:
    ------------
    chef_version=14.7.17
    platform=ubuntu
    platform_version=16.04
    ruby=ruby 2.5.3p105 (2018-10-18 revision 65156) [x86_64-linux]
    program_name=/usr/bin/chef-client

我要使用的厨师代码

cookbook_file consul_data + '/mem-check.sh' do
  source 'mem-check.sh'
  owner consul_user
  group consul_user
  mode '0755'
  action :create
end


mem_check = {
  "check" => {
    "id" => "mem-check",
    "name" => "Memory utilization",
    "args" => [consul_data + "/mem-check.sh"],
    "interval" => "10s",
    "timeout" => "1s"
  }
}

bash 'register_init_checks' do
  code <<-EOH
  curl --request PUT --data #{mem_check} http://127.0.0.1:8500/v1/agent/check/register
  EOH
  action :run
end

0 个答案:

没有答案