web-dev-qa-db-ja.com

シェフナイフec2サーバーの作成:新しいec2サーバーを起動するときのエラー

ナイフec2サーバー作成を使用してec2インスタンスを初めて自動的に起動しようとしていますが、"ERROR: Excon::Errors::BadRequest: Expected(200) <=> Actual(400 Bad Request)"を取得しています。

knife ec2 server listを使用すると、既存のサーバーのリストが返されます。これは、.chef/knife.rbのAWSIDが正しいことを意味します。

buntuのAMI Finder を使用してAMI IDを確認し、他のすべてのパラメーターのさまざまな組み合わせを試したため、何が問題なのか理解できません。

私が使用しているのは:

knife ec2 server create \
    -r "role[memcached]" -I AMI-d0f89fb9 -f m1.small \
    -i mysshkey.pem --ssh-user newuser \
    --region us-east-1b -Z us-east-1b

memcachedという名前のChefロールがあり、ローカルディレクトリにmysshkey.pemという名前のファイルがあります)

環境:Win7、Git 1.8.1.msysgit.1、Chef/Knife11.4.4。後でLinuxワークステーションから同じことを試してみるので、問題が環境なのか、パラメンターなのか、AWS認証情報なのかを特定できます。

ナイフec2スクリプトのトラブルシューティング方法について何か考えはありますか?

1
Gui Ambros

私はついに問題を見つけました。

パラメータ-i <AWS_SSH_ID>はSSHキー自体を指定するために使用されませんが、AWS内で認証情報を作成したときに使用されたSSHペアキーのセキュリティnameです。

これを調整した後、knife ec2 create正常に動作し始めました。

2
Gui Ambros

us-east-1bは有効なEC2リージョンではありません。 us-east-1をお試しください。

1
EEAA