私は Railcast のチュートリアルに従って、Rubber を使用した展開をテストしようとしていました。重複ルールエラー、インスタンスエラーの作成などから生き残ることができましたが、無限接続ループによって最終的に停止されました:
** Instance running, fetching hostname/ip data
Trying to enable root login
* 2014-01-16 15:36:41 executing `rubber:_ensure_key_file_present'
* 2014-01-16 15:36:41 executing `rubber:_allow_root_ssh'
* executing "sudo -p 'sudo password: ' bash -l -c 'mkdir -p /root/.ssh && cp /home/ubuntu/.ssh/authorized_keys /root/.ssh/'"
servers: ["---.---.---.---"]
** Can't connect as user ubuntu to ---.---.---.---, assuming root allowed
* 2014-01-16 15:36:44 executing `rubber:_direct_connection_---.---.---.---_673'
* executing "echo"
servers: ["---.---.---.---"]
** Failed to connect to ---.---.---.---, retrying
* 2014-01-16 15:36:48 executing `rubber:_direct_connection_---.---.---.---_673'
* executing "echo"
servers: ["---.---.---.---"]
** Failed to connect to ---.---.---.---, retrying
* 2014-01-16 15:36:53 executing `rubber:_direct_connection_---.---.---.---_673'
* executing "echo"
servers: ["---.---.---.---"]
- IPはマスクされています...
私はさまざまなことを試しました:
- ssh とキーを使用して新しいインスタンスに手動で接続する
- キー パスが正しいかどうかを確認するには、rubber.yml をダブル チェックします。
- -v で cap コマンドを実行します。
- 定義したインスタンスがデフォルトの ami タイプと同じかどうかを確認します
それらはすべて問題ないように見えるので、ゴムに接続して実行するために使用されるコマンドに何かがあるに違いないと思います "sudo -p 'sudo password: ' bash -l -c 'mkdir -p /root/.ssh && cp /home/ ubuntu/.ssh/authorized_keys /root/.ssh/'". ただし、Rubber が私のインスタンスと何を話しているかを確認できる場所はありません。ソースコードに入ろうとしましたが、どこにも行きませんでした。
私はかなりの数のグーグルを行ってきましたが、これは非常に一般的なエラーのようですが、これに対する実際の解決策はありません. 誰が問題である可能性が高いかを提案できますか? ありがとうございました。
アップデート:
いくつかの考え: それは書いてい** Can't connect as user ubuntu to 54.200.63.202, assuming root allowed
ます。それで、rubber は root ユーザーに直接 ssh しようとしましたか? もしそうなら、それは理由を説明するかもしれません。とにかくこれを変更することはありますか?