質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

1回答

1167閲覧

誤時修正[AWS EC2] あるアカウントで作成したインスタンスがことごとく外部に繋がらなくなるトラブルが発生

akihico

総合スコア27

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

1クリップ

投稿2021/11/12 11:11

編集2021/11/12 13:50

■概要
[AWS EC2] あるアカウントで作成したインスタンスがことごとく外部に繋がらなくなるトラブルが発生
あるルートユーザーで使用しているAWSの環境があるのですが、ec2でLinux系のインスタンスで、起動後一定時間が経過すると外部のネットワークに接続できなくなるトラブルに見舞われています。このトラブルを解決したいと思っています。
<経緯>

  • 今年(2021年)の初め頃にこれまで1年くらい稼働していたサーバーのアプリケーション(pythonのjupyter notebook)が動かなくなり、原因不明。
  • その後、あらためてec2で別のインスタンスを作成し、同じ環境を作っても暫く(5分程度)経つとアプリケーションが動かなくなる症状が発生した。
  • その後、別件でec2のインスタンスを作成、突如apt-installコマンドとcurlコマンドが動かなくなり、これまでの症状は外部に接続できなくなっているとものと判断。この症状が発生したら、インスタンスを再起動すると、また外部に接続できるようになり、5分後に外部に接続できなくなるということの繰り返しになる。

※1.ちなみに私が個人的に使用しているAWSのアカウント(別環境)で、同じ手順でEC2のインスタンスを作成しても、この症状にはなりません。

■AWSの環境

  • リージョン:アジアパシフィック (東京)ap-northeast-1

※その他調べるべきことがありましたら、お知らせください。

■現象
ubuntu、Amazon Linux、cent OSとディストリビューション問わずこの現象が発生しています。
今回、「Amazon Linux 2 AMI (HVM), SSD Volume Type - ami-0e60b6d05dc38ff11 (64 ビット x86) / ami-0fd9d20498f0f18a6 (64 ビット Arm)」、「t2.micro」の環境を使い、インスタンスを起動後、curlコマンドを1分おきに実行して実験した結果がこちらになります。

@> ssh -i "xxxx.pem" ec2-user@ec2-xxx-xxx-xxx-xxx.ap-northeast-1.compute.amazonaws.com The authenticity of host 'ec2-xxx-xxx-xxx-xxx.ap-northeast-1.compute.amazonaws.com (xxx.xxx.xxx.xxx)' can't be established. ECDSA key fingerprint is SHA256:xxx/xxx/xxx/xxx/xxx. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added 'ec2-xxx-xxx-xxx-xxx.ap-northeast-1.compute.amazonaws.com,xxx-xxx-xxx-xxx' (ECDSA) to the list of known hosts. Last login: Fri Nov 12 10:18:12 2021 from xxx __| __|_ ) _| ( / Amazon Linux 2 AMI ___|\___|___| https://aws.amazon.com/amazon-linux-2/ 1 package(s) needed for security, out of 14 available Run "sudo yum update" to apply all updates. [ec2-user@ip-xxx-xxx-xxx-xxx ~]$ curl http://google.com <HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8"> <TITLE>301 Moved</TITLE></HEAD><BODY> <H1>301 Moved</H1> The document has moved <A HREF="http://www.google.com/">here</A>. </BODY></HTML> [ec2-user@ip-xxx-xxx-xxx-xxx ~]$ curl http://google.com <HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8"> <TITLE>301 Moved</TITLE></HEAD><BODY> <H1>301 Moved</H1> The document has moved <A HREF="http://www.google.com/">here</A>. </BODY></HTML> [ec2-user@ip-xxx-xxx-xxx-xxx ~]$ curl http://google.com <HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8"> <TITLE>301 Moved</TITLE></HEAD><BODY> <H1>301 Moved</H1> The document has moved <A HREF="http://www.google.com/">here</A>. </BODY></HTML> [ec2-user@ip-xxx-xxx-xxx-xxx ~]$ curl http://google.com <HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8"> <TITLE>301 Moved</TITLE></HEAD><BODY> <H1>301 Moved</H1> The document has moved <A HREF="http://www.google.com/">here</A>. </BODY></HTML> [ec2-user@ip-xxx-xxx-xxx-xxx ~]$ curl http://google.com <HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8"> <TITLE>301 Moved</TITLE></HEAD><BODY> <H1>301 Moved</H1> The document has moved <A HREF="http://www.google.com/">here</A>. </BODY></HTML> [ec2-user@ip-xxx-xxx-xxx-xxx ~]$ curl http://google.com curl: (28) Failed to connect to google.com port 80: Connection timed out

よろしくお願いいたしますm(_ _)m

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mike2mike4

2021/11/12 11:56

もしかしてスポットインスタンス?
akihico

2021/11/12 12:47

スポットインスタンスというのを初めて知りましたが、おそらく通常のインスタンスなのではないかと思っています。具体的なインスタンス作成手順は下記になりますが、こちらで「スポットインスタンス」か「通常のインスタンス」かご判断つきますでしょうか。 ーーーー AWS マネジメントコンソール ↓ 仮想マシンの起動 ↓ ステップ 1: Amazon マシンイメージ (AMI) 「クイックスタート」の「Amazon Linux 2 AMI (HVM), SSD Volume Type - ami-0e60b6d05dc38ff11 (64 ビット x86) / ami-0fd9d20498f0f18a6 (64 ビット Arm)」 ↓ ステップ 2: インスタンスタイプの選択 「t2.micro」を選択 ↓ 3. インスタンスの設定 そのまま次へ ↓ ステップ 4: ストレージの追加 そのまま次へ ↓ ステップ 5: タグの追加 「Nameタグ」を記入 ↓ ステップ 6: セキュリティグループの設定 「新しいセキュリティグループを作成する」 「HTTP」と「HTTPS」を追加 「確認と作成」を押下
mike2mike4

2021/11/12 13:32

クイックスタートで作ったことないのでわかりませんが、$での入力を促されませんでしたか?
mike2mike4

2021/11/12 13:54

そのサイトは古めだし(AWSはサイトのUIがしょっちゅう変わる)、作成途中でスポットを指定できるので、わざわざ左ペインから選ばなくて良いです。回答欄に、確認用の画像貼りますね。
yu_1985

2021/11/12 14:06 編集

スポットリクエストの条件を満たさなくなったとしてインスタンスは停止か削除されるので、アウトバウンドのリクエストが通らなくなるのとは関係がないのでそもそもスポットインスタンスは関係ないと思われます。 (クイックスタートからスポットインスタンスは作れないと思ってましたが、そうではなかったので訂正) いくつか確認したいポイントとして - パブリックサブネットに配置したインスタンスですか? - EC2からインターネットへのアクセスのみが繋がらなくなるということですか? 例えば外からEC2への通信ができなくなったり、EC2からVPC内の別のインスタンスに通信できなくなったり等はしてませんか - HTTP以外の通信もできませんか?(SSHやHTTPSを始めpingやdig、nslookupやtracerouteなど)
akihico

2021/11/12 14:46 編集

mike2mike4様にご案内頂いたところを確認しまして、スポットインスタンスではないと思われます。 頂いた確認ポイントについて、私の不勉強で分からないところがあります。今、遅ればせながら、UdemyでAWSの講義を受けているので、分かり次第回答いたします。 ひとまず現時点で、お答えできるところから、記載します。 - パブリックサブネットに配置したインスタンスですか?  ※不明なのでおって回答します - EC2からインターネットへのアクセスのみが繋がらなくなるということですか? 例えば外からEC2への通信ができなくなったり、EC2からVPC内の別のインスタンスに通信できなくなったり等はしてませんか →はい、EC2からインターネットへのアクセスのみが繋がらなくなります。私のPCからsshでつなぐことは出来ています。 - HTTP以外の通信もできませんか?(SSHやHTTPSを始めpingやdig、nslookupやtracerouteなど) →SSH接続も出来ておりませんでした。  ssh: connect to host xxx.xxx.xxx.xxx port 22: Connection timed out  上記のサーバーは、私のPCからSSH接続出来ました(接続先は生きています)。
yu_1985

2021/11/12 16:00

パブリックサブネットに配置されていなければ、自分のPCから直接SSHすることはできません。 なのでパブリックサブネットにあるのでしょう。(実は踏み台を経由している、とかであればその旨きちんと確認してください) インバウンドの接続が可能そうなことはわかりました。 問題はアウトバウンドの通信がどのくらいできないかです。・ > SSH接続も これだけではなくて、挙げたものは一通り確認してみてください。特にtracerouteは確認してほしいです。 ちなみに、使用しているアカウントはどなたかからか提供されたものでしょうか?
akihico

2021/11/12 16:37 編集

>これだけではなくて、挙げたものは一通り確認してみてください。特にtracerouteは確認してほしいです。 大変失礼いたしました。知っているコマンドだけで試してましたm(_ _)m まとめますとこうなります。 http NG https NG ssh NG ping OK? nslookup NG traceroute NG OK/NG判定が間違っているかもしれないので、念の為にコマンド実行結果を貼り付けます。 $ curl http://google.com curl: (28) Failed to connect to google.com port 80: Connection timed out $ curl https://google.com curl: (28) Failed to connect to google.com port 443: Connection timed out $ ssh yyyy@xxx.xxx.xxx.xxx ssh: connect to host xxx.xxx.xxx.xxx port 22: Connection timed out $ ping www.google.com PING www.google.com (172.217.25.100) 56(84) bytes of data. 64 bytes from nrt13s51-in-f100.1e100.net (172.217.25.100): icmp_seq=1 ttl=104 time=1.65 ms $ nslookup www.google,com Server: 172.31.0.2 Address: 172.31.0.2#53 ** server can't find www.google,com: NXDOMAIN $ traceroute www.google.com traceroute to www.google.com (172.217.25.100), 30 hops max, 60 byte packets 1 * * * (中略) 26 * * * 27 * *^Z [2]+ 停止 traceroute www.google.com
akihico

2021/11/12 17:21

>yu_1985 2021/11/12 23:01 >- パブリックサブネットに配置したインスタンスですか? 状況から、大丈夫であろうとご推察されておりますが、 私が確認した結果も大丈夫だと思います。 確認したことですが、次になります(勉強したてなので、ちょっと自信が無いですが・・・)。 ①サブネット IDのルートテーブルを確認 ②ルートテーブルの送信先「0.0.0.0/0」のターゲットにインターネットゲートウェイが設定されている(localではない)
yu_1985

2021/11/12 18:27

最初から接続できないのであればセキュリティグループやネットワークACLの設定あたりを疑うところですが、「起動から5分ほど経過すると接続できなくなる」となると、何かしらの処理がEC2の起動を検知してアウトバウンドの通信を切っている可能性も考えられますね。 一応念の為セキュリティグループのアウトバウンドの設定を確認してください。 確かに「5分ほど経過すると」でいいんですよね? 先にも書きましたが、使用しているAWSアカウントはどこからか提供されたものでしょうか。 それであれば何かしら仕込みがされている可能性があります。わざわざアウトバウンドを絞るのはよくわかりませんが…。 EventBridgeで何か動かされている処理とかはないですかね?
akihico

2021/11/13 01:32

>yu_1985 2021/11/13 03:27 >一応念の為セキュリティグループのアウトバウンドの設定を確認してください。 確認しましたが、下記のとおりでして、大丈夫だと思います。 ポート範囲 すべて プロトコル すべて 送信先 0.0.0.0/0 >先にも書きましたが、使用しているAWSアカウントはどこからか提供されたものでしょうか。 アカウントの経緯とトラブル発生までの経緯ですが次のとおりです。 ■登場人物 ①元々私が業務用に作成したアカウント ②所属している会社が何かのアワードの副賞で「AWS1年間XX$プレゼント」をもらい、アカウントが作成される ■経緯 ・①でインスタンスを作成して運用していたが、請求を②に寄せるため、①を②の配下にした。(AWSの方がこの設定を行ったため、詳細は分かりません。) ・上記の統合を行ってから、1年以上くらいは正常に動作していた。 ・私が業務から戦線離脱している間、インスタンスが落ちるトラブルが発生。  -この間は、私のアカウント(①)で会社の事務員がAWSでインスタンスの再起動を行っていたが、今回のトラブルを招くほどの設定は行っていないと推測。  -この間、会社の事務員がEventBridgeで何か設定を行うことは非常に考えにくく、私自身もEventBridgeが何か分かっていない。 ・さらに私の戦線離脱が続いている間、今回のトラブルが発生。
akihico

2021/11/13 03:46

>yu_1985 2021/11/13 03:27 >確かに「5分ほど経過すると」でいいんですよね? はい。念の為、今回の検証環境であらためて確認し、2分少々でした。 その他、他の人から聞いたところ、別サーバーで30分くらいで現象発生という状況もあるようです。
yu_1985

2021/11/13 05:13

請求周りに問題が発生してたりはしませんか?
akihico

2021/11/13 06:17

>yu_1985 2021/11/13 14:13 >請求周りに問題が発生してたりはしませんか? ■登場人物 ①元々私が業務用に作成したアカウント ②所属している会社が何かのアワードの副賞で「AWS1年間XX$プレゼント」をもらい、アカウントが作成される ①のアカウントで確認しましたが、問題ない模様です※1。 ②のアカウントでも確認した方がよろしいでしょうか? ※1 Billing → 支払い 「未払い額はありません 表示する未払い額はありません。」と表示される。 それから、①が②の配下になったのは「AWS Organizations」を使っていた事を思い出しました。
yu_1985

2021/11/13 14:17

Organizationsで請求をまとめている可能性が高いので念の為確認してください。 あと、EC2インスタンスを起動した後に何かしらのAPIコールが走ってないか、CloudTrailで確認してみてください。
akihico

2021/11/14 01:12

>yu_1985 2021/11/13 23:17 >Organizationsで請求をまとめている可能性が高いので念の為確認してください。 はい、確認してみます(結果はおって記載します)。 >あと、EC2インスタンスを起動した後に何かしらのAPIコールが走ってないか、CloudTrailで確認してみてください。 CloudTrailを見てみましたが、何かしらの処理が走っている形跡は見られませんでした※1。 ※1 ■確認したこと ・操作  インスタンス起動  ↓  インスタンスの外部へhttp通信が繋がるところから繋がらなくなるまで確認  ↓  インスタンス停止 ・CloudTrailの結果(イベント名の時系列)  StartInstances  ↓  StopInstances
akihico

2021/11/14 01:54

>yu_1985 2021/11/13 23:17 >Organizationsで請求をまとめている可能性が高いので念の為確認してください。 親アカウントの方も確認いたしまして、「未払い額はありません 表示する未払い額はありません。」と表示されていますので、問題はないようでした。
yu_1985

2021/11/14 04:01

いよいよ謎ですね…。 これまでの調査結果を合わせてサポートに問い合わせるしかないかもしれません。
akihico

2021/11/14 05:35

>yu_1985 2021/11/14 13:01 はい、サポートへの問い合わせを進めてみます。 ここまで、本当にありがとうございましたm(_ _)m
guest

回答1

0

EC2を作成するときに、こういう画面を見ることができます。赤で囲った部分を確認してみてください。スポットだと、指定料金超えると問答無用で停止されます。
設定画面

投稿2021/11/12 13:56

mike2mike4

総合スコア935

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

akihico

2021/11/12 14:32

画像のご案内、ありがとうございます。 該当の箇所、確認しましたところ、  インスタンスの詳細   購入のオプション オンデマンド となっていました。ですので、スポットではないと思われます。
mike2mike4

2021/11/12 14:41

では違いますね。 もう一つの仮説として、確認してる自分の家の回線が不安定とかありませんか?
akihico

2021/11/12 14:50

speedtestでこのようになりました。 324.1Mbps(ダウンロード) 178.1Mbps(アップロード) これだけの速さならば、安定していると思います。 また、私以外にあと2名居まして、100%この症状に当たっています。
mike2mike4

2021/11/12 15:16

回線スピードが速くてもノイズが入ったりして切れることもあります。 会社のシステムですか? ならば、AWSのサポートに相談することはできませんか?
akihico

2021/11/12 15:40

不勉強でしたm(_ _)m「速い」と「安定」は相関しないのですね。 週末中に解決しなければ、AWSのサポートへの相談を考えてみます。
yu_1985

2021/11/12 16:03

自分の回線の状態とEC2のアウトバウンドが通らないことはネットワークが違うため関係がないのでそれも違うと思います。 自分の回線がおかしいのならEC2への通信とEC2からのレスポンスがおかしくなるはずなので、それでEC2からインターネットへのcurlが通らなくなるのはおかしいです。
mike2mike4

2021/11/12 16:23

たしかにその通りです。私の勘違いでした。ただ、初心者さんの話を100%真に受けるのもどうかと思ってもしかしたらと確認させて頂いたところもあります。これまでの話からすれば、AWS内部の問題(それもハードウェア)に見えてきましたが、yu_1985さんはどう思われますでしょうか?
akihico

2021/11/12 17:28

>mike2mike4 2021/11/13 01:23 お察し頂き、かつ ご配慮頂きましてありがとうございます。 初心者といいますか、インフラエンジニアではないので、素人の方が合っているかも知れません。 こんな私にお付き合い頂き、恐縮ですm(_ _)m
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問