■概要
[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