2014-05-01 61 views
1

因此,我正在UBnuntu 12.04上用CheT-Solo在Linux上运行Linux操作系统。我的最终目标是使用厨师部署Islandora/Drupal的实例。但是,目前,我并没有取得太大的成功。下面是我运行命令:刀独奏厨师命令无法正常工作

knife solo prepare [user name]@[server name] 

,给了我这样的输出:

WARNING: No knife configuration file found 
Bootstrapping Chef... 
Enter the password for [email protected]: 
% Total % Received % Xferd Average Speed Time Time  Time Current 
          Dload Upload Total Spent Left Speed 
100 15934 100 15934 0  0 47449  0 --:--:-- --:--:-- --:--:-- 70504 

Downloading Chef 11.12.2 for ubuntu... 
downloading https://www.opscode.com  /chef/metadata?v=11.12.2&prerelease=false& 
nightlies=false&p=ubuntu&pv=12.04&m=x86_64 
    to file /tmp/install.sh.14381/metadata.txt 
trying wget... 
url  https://opscode-omnibus-packages.s3.amazonaws.com/ubuntu/12.04/x86_64/chef_11.12.2-1_amd64.deb 
md5  cedd8a2df60a706e51f58adf8441971b 
sha256 af53e7ef602be6228dcbf68298e2613d3f37eb061975992abc6cd2d318e4a0c0 
downloaded metadata file looks valid... 
    downloading https://opscode-omnibus-packages.s3.amazonaws.com/ubuntu/12.0/x86_64/chef_11.12.2-1_amd64.deb 
    to file /tmp/install.sh.14381/chef_11.12.2-1_amd64.deb 
trying wget... 
Comparing checksum with sha256sum... 
Installing Chef 11.12.2 
installing with dpkg... 
(Reading database ... 72031 files and directories currently installed.) 
Preparing to replace chef 11.12.2-1 (using .../chef_11.12.2-1_amd64.deb) ... 
Unpacking replacement chef ... 
Setting up chef (11.12.2-1) ... 
Thank you for installing Chef! 
Generating node config 'nodes/giada.json'... 

后来,当我运行此:

knife solo cook [user name]@[server name] 

...我得到这个:

WARNING: No knife configuration file found 
WARNING: solo.rb found, but since knife-solo v0.3.0 it is not used any more 
WARNING: Please read the upgrade instructions: https://github.com/matschaffer/knife-solo/wiki/Upgrading-to-0.3.0 
Running Chef on [server name]... 
Checking Chef version... 
Enter the password for [user name]@[server name]: 
Uploading the kitchen... 
[user name]@[server name]'s password: 
WARNING: Local cookbook_path '/etc/chef/cookbooks' does not exist 
[user name]@[server name]'s password: 
[user name]@[server name]'s password: 
WARNING: Local role_path './roles' does not exist 
WARNING: Local data_bag_path './data_bags' does not exist 
WARNING: Local environment_path './environments' does not exist 
Generating solo config... 
[user name]@[server name]'s password: 
Running Chef... 

[2014-05-01T12:56:51-04:00] WARN: 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
SSL validation of HTTPS requests is disabled. HTTPS connections are still 
encrypted, but chef is not able to detect forged replies or man in the middle 
attacks. 

To fix this issue add an entry like this to your configuration file: 

``` 
    # Verify all HTTPS connections (recommended) 
    ssl_verify_mode :verify_peer 

    # OR, Verify only connections to chef-server 
    verify_api_cert true 
``` 

To check your SSL configuration, or troubleshoot errors, you can use the 
`knife ssl check` command like so: 

``` 
    knife ssl check -c /home/biblio/chef-solo/solo.rb 
``` 

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 

Starting Chef Client, version 11.12.2 
Compiling Cookbooks... 
Converging 0 resources 

Running handlers: 
Running handlers complete 

Chef Client finished, 0/0 resources updated in 2.278793398 seconds 

在上述情况下,我操作的根。根据Opscode的文档,所有东西都应该在这里。但是按照我的想法,这些警告告诉我一些事情不该如此。有人可以告诉我我错过了什么吗?谢谢!

回答

1

在您正在运行knife solo命令的文件夹中,您需要使用刀具配置文件创建另一个隐藏文件夹。又名

.chef/knife.rb - 这必须包括您的刀具设置。这是我的。正如你所看到的,我正在使用环境变量(ENV),所以我在不暴露秘密的情况下检查这个版本控制。要在OSX或Linux中执行此操作,需要编辑〜/ .bash_profile和每个变量;

export AWS_ACCESS_KEY_ID=REAL_KEY_GOES_HERE 

然后通过运行source〜/ .bash_profile来源代码。

另外一个有用的准备参数是--run-list'role [role-name]',因此它会在您运行cook时自动使用正确的角色。

0

我曾经有过这个错误,因为我的dna.json是错误的。一些双引号不匹配。所以我首先尝试了他们的建议(将ssl_verify_mode:verify_peer添加到配置文件中),这并没有什么区别;那么我知道这个消息只是误导。