web-dev-qa-db-ja.com

Amazon EC2インスタンスをシャットダウンしてから再起動すると、すべて問題ありませんか?

Amazon EC2 Linuxベースのインスタンスで実行され、通常のドメイン名(x.com)にマップされているウェブサイトがあります。このサイトは、2番目のEC2インスタンス上のデータベースと通信します。

このインスタンスをシャットダウンして、その背後にあるコンピューティングパワーを向上させる必要があります。その場合、どのくらい時間がかかりますか。その後、マシンを再度起動すると、サイトはオンラインに戻りますか? IPアドレス、DNS情報などはすべて保持されるので、ドメイン名は引き続き機能し、引き続きDBと通信できますか?

ちなみに、これはAWS EC2情報パネルでウェブサーバーに現在表示されているものです(正確なIPアドレスはわずかに変更されましたが、アイデアはわかります)。

Public DNS: ec2-54-1-1-1.us-west-1.compute.amazonaws.com
Private DNS: ip-10-1-1-1.us-west-1.compute.internal
Private IPs: 10.1.1.1
12
Eric

EBSブートインスタンスの停止と開始は、いくつかの例外を除いてインスタンスを再起動することと非常に似ていますが、最も注目すべき点は次のとおりです。

  1. インスタンスに新しい内部IPアドレスが割り当てられます。

  2. インスタンスに新しいパブリックIPアドレスが割り当てられます。

  3. インスタンスがVPCにない場合、Elastic IPアドレスはインスタンスとの関連付けが解除されます。

  4. 一時ストレージ上のすべてのデータ(多くの場合/ mntの下)は失われます

また、この記事で説明した課金と可用性の影響もあります。

Amazon EC2インスタンスの再起動と停止/開始
http://alestic.com/2011/09/ec2-reboot-stop-start

VPCインスタンスは、停止/開始を通じてElastic IPアドレスを保持するなど、動作が少し異なります。

インスタンスをデータベースサーバーとして使用していて、内部IPアドレス(安価で高速)を使用してインスタンスに接続し、停止/起動後にデータベースクライアントを再構成する必要がない場合は、インスタンスへのElastic IPアドレス。外部Elastic IP DNS名を使用します。これは、Elastic IPアドレスを再起動したインスタンスに再度関連付けた後、現在の内部IPアドレスに解決され、クライアントは中断したところから再開します。

この記事では、このアプローチについて詳しく説明します。

Elastic IPを使用してAmazon EC2の内部インスタンスを識別する
http://alestic.com/2009/06/ec2-elastic-ip-internal

ご想像のとおり、stop/startはインスタンスに電力を供給するハードウェアを変更する簡単な方法です。これについて、この記事でいくつかの指示と警告とともに書きました:

EC2インスタンスをより大きい(または小さい)インスタンスタイプに移動する
http://alestic.com/2011/02/ec2-change-type

特定の状況では、Elastic IPアドレスをインスタンスに割り当て、CNAMEを使用して外部DNS名にElastic IPアドレスを指すようにDNSを変更することをお勧めします。これは、停止/開始の直後に実行することも、事前に実行して、停止/開始前にすべてが機能することを確認することもできます。

13
Eric Hammond

つまり、あなたの情報からわかるように、Elastic IPを使用していないようです。

このインスタンスを指すには、DNSでCNAMEを使用している必要があると思います。マシンを再起動すると、このec2-54-1-1-1.us-west-1.compute.amazonaws.com DNS名が変更され、サイトが機能しなくなります。

多くの内部IPが関係しているため、VPCを使用していない限り、IPも変更されます。

だから、もし私があなただったら、私はこのマシンを再起動する際に非常に慎重になるでしょう。

時間に関しては、数分以上かかることはありません。

また、DBインスタンスで実行されているiptablesがあり、この内部IPだけがDBに接続できる場合、内部IPが変更されるため、IPテーブルも機能しません。

そのため、このインスタンスを再起動する場合は注意して、十分に検討してください。

4
Napster_X

内部IP /ホスト名が変更され、Elastic IPがデタッチされます(VPCにいる場合を除く)。

インスタンスを再起動した後、Elastic IPを再接続します。私は定期的にこれを行ってインスタンスのサイズを変更し、数分間のダウンタイムを見ているだけです。

Apache、および他のサービスが開始するように設定されていることを確認します(Amazon linux AMIを実行している場合はchkconfig)。

2
Jason Floyd

私が覚えている限りでは、システムのタイプを変更して停止し、再起動するのに5〜10分以上かかることはありません(EBSでバックアップされたシステムであることは言うまでもありません)。システムが戻ったときにサービスを開始するには、再起動時にすべてのサービスを開始できるようにします(ubuntu 12.04のパペットのように、/ etc/default/puppetで有効にします)。 IPをメモします(私は長い間行ったので、はっきりと覚えていません)。多くの場合、IPはシステムから切り離される可能性がありますが、それでもアカウントに存在するため、Elastic IPセクションに移動し、再度IPに関連付けます。システムを再起動すると、元気になります。

1
APZ

すでに述べたように、エラスティックIPがある場合はインスタンスに再接続するため、DNS設定を変更する必要はありません。ただし、何らかの方法でプライベートIPが変更されます。これはおそらく、mysqlでGRANT設定を更新する必要があることを意味します。 'Cos you've just GRANT ALL PRIVILEGES ON *.* to 'somedude'@'%' ... 正しい? ;)

1
chrskly