AWSは初めてで、ネットワーキングの専門家ではありませんが、それについて詳しく知りたいと思っています。
パブリックサブネットのみでVPCを作成しました。次に、Ubuntu 14.04 64ビットpv AMIイメージ(AMI-e84d8480)を使用してEC2インスタンスを作成し、ssh経由でそれに接続するために必要なキーペアを生成しました。
Amazonの指示に従って、動作しないssh経由でEC2インスタンスに接続しました。
これが私の試みた入力とデバッグログです:
OS X 10.9.4で実行
user$ ssh -vvv -i key.pem [email protected]
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 102: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to xxx.xxx.xxx.xxx [xxx.xxx.xxx.xxx] port 22.
debug1: connect to address xxx.xxx.xxx.xxx port 22: Operation timed out
ssh: connect to Host xxx.xxx.xxx.xxx port 22: Operation timed out
この問題を解決するには:
しかし、それらの行動は問題を解決しませんでした。
EC2インスタンス接続を機能させるために何が欠けているかについての私の推測は次のとおりです。
コミュニティに対する私の質問:
VPCドキュメントを詳しく読んだ後、最初のEC2インスタンスが接続されました。
EC2インスタンスとVPCをセットアップするときに私が間違ったことは次のとおりです。
プライベートIPのみでは、開発マシンがVPCのネットワークの一部でない限り、EC2インスタンスに接続できません。したがって、外部からそれと通信するには、作成されたすべてのインスタンスに対して、関連するパブリックIPアドレスも割り当てられるように指定する必要がありました。
これはそれを修正するために何が行われたかです:
私が間違っている場合は修正してください。ただし、EC2ブラウザーコンソールに、既に作成されているインスタンスにパブリックIPアドレスを割り当てるオプションがなかったため、削除してしまいました。
VPCコンソールに戻り、サブネットオプションに移動します。次に、VPCウィザードで最初に作成され、[Modify Auto-Assign Public IP]オプションで指定されたパブリックサブネットを選択して、作成されたすべての新しいEC2インスタンスのパブリックIPアドレスの自動割り当てを有効にします。
新しいEC2インスタンスを作成し、新しいパブリックIPアドレスを割り当てます。
Sshに関するAmazonの指示に従い、通信が正常に開始されました。
インスタンスの作成時にパブリックIPアドレスを設定するオプションを使用する代わりに、Amazonが「Elastic IP」と呼ぶものを作成した可能性があります。これは、EC2インスタンスに手動で関連付けたパブリックIPアドレスと非常に似ています。
違いは、EC2の他のすべてと同様に、一種の「モジュラー」であることです。それを1つのボックスに関連付けて、後で別のボックスと交換できます。また、特定のEC2インスタンスの寿命を超えて存続しますが、インスタンスをシャットダウンすると、作成時に割り当てられたパブリックIPアドレスが失われると思います。
Elastic IPを使用することを選択した場合、価格設定にいくつかの潜在的な違いがあります。 Amazonの価格設定ページ を参照してください。
1つを設定してDNSレコードIPとして使用すると、Amazonによって割り当てられたパブリックIPを使用するよりもうまく機能することがわかりました。