Chef Error : Invalid or missing manifest .json, .rb, or .yml file provided

Chef Error : Invalid or missing manifest .json, .rb, or .yml file provided

我对厨师很陌生。我正在尝试使用 chef 启动 aws 实例,但出现以下错误。

[root@PROD-CHEF-CLIENT chef]# chef exec spiceweasel -T 2600 -e

cookbooks/delivery-server-setup/server_create.rb

==========================================
**Selected Organization::development**
==========================================

ERROR: Invalid or missing  manifest .json, .rb, or .yml file provided.
[root@APROD-CHEF-CLIENT chef]#

cat cookbooks/delivery-server-setup/server_create.rb

{
        'cookbooks'     =>
        [
                {'common' => {}},
                {"hostsfile" => {}},
                {"s3cmd-master" => {}},
                {"delivery-server-setup" => {}}
        ],
        'nodes' =>
        [
{'ec2 1' =>
   {
    'run_list' => 'recipe[-delivery-server-setup::install]',
    'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1c --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB51-C-71\" --node-name \"-PROD-DEL-DB51-C-71\""
   }
  }

{'ec2 1' =>
   {
    'run_list' => 'recipe[-delivery-server-setup::install]',
    'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1c --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB52-C-72\" --node-name \"-PROD-DEL-DB52-C-72\""
   }
  }

{'ec2 1' =>
   {
    'run_list' => 'recipe[-delivery-server-setup::install]',
    'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1c --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB52-C-73\" --node-name \"-PROD-DEL-DB52-C-73\""
   }
  }

{'ec2 1' =>
   {
    'run_list' => 'recipe[-delivery-server-setup::install]',
    'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1c --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB52-C-74\" --node-name \"-PROD-DEL-DB52-C-74\""
   }
  }

{'ec2 1' =>
   {
    'run_list' => 'recipe[-delivery-server-setup::install]',
    'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1c --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB52-C-75\" --node-name \"-PROD-DEL-DB52-C-75\""
   }
  }



{'ec2 1' =>
   {
    'run_list' => 'recipe[-delivery-server-setup::install]',
    'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1d --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB06-D-71\" --node-name \"-PROD-DEL-DB06-D-71\""
   }
  }

{'ec2 1' =>
   {
    'run_list' => 'recipe[-delivery-server-setup::install]',
    'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1d --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB06-D-72\" --node-name \"-PROD-DEL-DB06-D-72\""
   }
  }

{'ec2 1' =>
   {
    'run_list' => 'recipe[-delivery-server-setup::install]',
    'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1d --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB06-D-73\" --node-name \"-PROD-DEL-DB06-D-73\""
   }
  }

{'ec2 1' =>
   {
    'run_list' => 'recipe[-delivery-server-setup::install]',
    'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1d --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB06-D-74\" --node-name \"-PROD-DEL-DB06-D-74\""
   }
  }

{'ec2 1' =>
   {
    'run_list' => 'recipe[-delivery-server-setup::install]',
    'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1d --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB06-D-75\" --node-name \"-PROD-DEL-DB06-D-75\""
   }
  }

]

}

问题是您没有传递 spiceweasel 期望的 well-formed 配置文件(通常类似于 infrastructure.yml,但也可以是 .rb)。

您 copy-pasted 的文件有一些语法错误。基本上,您在 nodes 数组元素之间缺少一个“,”。

这是更正后的版本:

{
  'cookbooks' =>
    [
      { 'common' => {} },
      { 'hostsfile' => {} },
      { 's3cmd-master' => {} },
      { 'delivery-server-setup' => {} }
    ],
  'nodes' =>
    [
      { 'ec2 1' =>
         {
           'run_list' => 'recipe[-delivery-server-setup::install]',
           'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1c --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB51-C-71\" --node-name \"-PROD-DEL-DB51-C-71\""
         }
      },
      { 'ec2 1' =>
         {
           'run_list' => 'recipe[-delivery-server-setup::install]',
           'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1c --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB52-C-72\" --node-name \"-PROD-DEL-DB52-C-72\""
         }
      },
      { 'ec2 1' =>
         {
           'run_list' => 'recipe[-delivery-server-setup::install]',
           'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1c --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB52-C-73\" --node-name \"-PROD-DEL-DB52-C-73\""
         }
      },
      { 'ec2 1' =>
         {
           'run_list' => 'recipe[-delivery-server-setup::install]',
           'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1c --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB52-C-74\" --node-name \"-PROD-DEL-DB52-C-74\""
         }
      },
      { 'ec2 1' =>
         {
           'run_list' => 'recipe[-delivery-server-setup::install]',
           'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1c --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB52-C-75\" --node-name \"-PROD-DEL-DB52-C-75\""
         }
      },
      { 'ec2 1' =>
         {
           'run_list' => 'recipe[-delivery-server-setup::install]',
           'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1d --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB06-D-71\" --node-name \"-PROD-DEL-DB06-D-71\""
         }
      },

      { 'ec2 1' =>
         {
           'run_list' => 'recipe[-delivery-server-setup::install]',
           'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1d --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB06-D-72\" --node-name \"-PROD-DEL-DB06-D-72\""
         }
      },

      { 'ec2 1' =>
         {
           'run_list' => 'recipe[-delivery-server-setup::install]',
           'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1d --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB06-D-73\" --node-name \"-PROD-DEL-DB06-D-73\""
         }
      },

      { 'ec2 1' =>
         {
           'run_list' => 'recipe[-delivery-server-setup::install]',
           'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1d --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB06-D-74\" --node-name \"-PROD-DEL-DB06-D-74\""
         }
      },

      { 'ec2 1' =>
         {
           'run_list' => 'recipe[-delivery-server-setup::install]',
           'options'  => "-S -keypair -I ami-fb5d7f91 --user-data /mnt/chef/delivery_user_data -Z us-east-1d --groups -delivery -f c3.4xlarge --ssh-user auto_deploy -i /home/auto_deploy/.ssh/id_rsa --tags \"Name=-PROD-DEL-DB06-D-75\" --node-name \"-PROD-DEL-DB06-D-75\""
         }
      }
    ]
}

这应该可以解决这个问题。