2016-10-30 6 views
0

シェフ経由でノードbento/centos 7.2をブートストラップしようとしていて、SSHエラーが発生しています。Chef/Vagrant SSHブートストラップエラー

私は迷惑メールと一緒にインストールされたバーチャルボックスを持っています。シェフDKに組み込まれているsshクライアントを使用して、問題なくvmにsshできるようになりました。私は私のサーバーとしてホストシェフを使用しています。

私のWin 10ワークステーションでは、次のコマンドを発行してエラーが発生します。

PS C:\Users\Topher\Documents\Learn Chef\.chef> knife bootstrap 10.0.2.15 --ssh-user vagrant --sudo --ssh-identity-file C:\Users\ 
Topher\.vagrant\machines\default\virtualbox\private_key --node-name localhost --run-list 'recipe[learn_chef_httpd]' 
Node localhost exists, overwrite it? (Y/N) Y 
Client localhost exists, overwrite it? (Y/N) Y 
Creating new client for localhost 
Creating new node for localhost 
Connecting to 10.0.2.15 
ERROR: Net::SSH::ConnectionTimeout: Net::SSH::ConnectionTimeout 

ConnectionTimeoutの原因は何ですか?私は次のようにナイフを使用してリモートサーバー(ないローカルベイグラントVM)をブートストラップしようとしていた私の場合は

+0

ナイフなしのノードにsshすることはできますか?例えば'vagrant --debug ssh'? – RubyTuesdayDONO

+0

私は正しい軌道に乗っています... PS C:\ Users \ Topher>迷路--debug ssh ...多くの出力をシェルにダンプしました。出力はこれを数回示しています... INFOインターフェース:エラー:%sパスの実行ファイルが%PATH%変数のディレクトリに見つかりません。 SSHクライアントはインストールされていますか? Cygwin、MinGW、またはGitをインストールしてみてください。これらはすべてSSHクライアントを含んでいます。 // INFO interface:Machine:error-exit ["Vagrant :: Errors :: SSHUnavailableWindows" //シェフのdkクライアントとgitクライアントをssh経由で接続できます。 – HBach

答えて

0

:私の場合は

knife bootstrap <FQDN of node being provisioned> -x <username> -P <password> --sudo --use-sudo-password <password> -N <name for node being provisioned> 

問題は私のシェフServerがローカルVMとして実行されていたということでしたVirtualBoxプライベートネットワークを使用していたため、ナイフを使用してプロビジョニングしていたノードにはアクセスできませんでした。私のシェフサーバーの私のバゲント設定をパブリックブリッジネットワークに変更することで、私はナイフのブートストラップコマンド中に "ERROR:Net :: SSH :: ConnectionTimeout:Net :: SSH :: ConnectionTimeout"を越えることができました。

Vagrant.configure(2) do |config| 
    config.vm.define 'chef-server' do |cs| 
    cs.vm.box = 'bento/ubuntu-14.04' 
    cs.vm.box_version = '2.2.9' 
    cs.vm.hostname = 'chef-server.test' 
    #cs.vm.network 'private_network', ip: 'xxx.16.9.5' 
    cs.vm.network "public_network", 
     bridge: "Intel(R) Ethernet Connection I217-LM", 
     ip: ENV.fetch("IPS", "xxx.16.9.5"), netmask: ENV.fetch("NETMASKS", "255.255.0.0") 
    cs.vm.provision 'shell', inline: CHEF_SERVER_SCRIPT.dup 
    set_hostname(cs) 

    cs.vm.provider 'virtualbox' do |v| 
     v.memory = 2048 
     v.cpus = 2 
    end 
    end 

注コメントアウトプライベートネットワークとその直後の非コメントパブリックネットワーク:ここに私のベイグラントファイルの変更は次のように見えたものです。

ナイフ用の便利なコマンドライン引数の1つは、冗長/デバッグ出力のための-VVです。それがあなたの問題をより深く理解できるかどうかを調べてみてください。

私の気づいた点の1つは、私のナイフのブートストラップコマンド中に「ERROR:Net :: SSH :: ConnectionTimeout:Net :: SSH :: ConnectionTimeout」と表示されることがあるということです。

あなたの問題を解決する場合は、私の答えを正解と記入してください。