このブログが、一時的にアクセスできない状態になってしまった。
復旧できたので、過程を記録。
起こったこと
ブラウザでブログにアクセスしたら、エラー画面が表示される(エラー画面のキャプチャとるの忘れてた…)。
タイムアウトっぽい挙動。
sshでインスタンスに接続することはできる。
原因
古いhttpプロセスが残ってしまっていたみたい。
httpdをリスタートしようとすると失敗した。
$ sudo service httpd restart
Stopping httpd: [ OK ]
Starting httpd: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
AH00015: Unable to open logs
[FAILED]
下記のページを参考にさせてもらって、プロセスをkillすると、リスタートできるようになった。
http://qiita.com/ysk24ok/items/ffe8d5d1479aaf5afeaa
$ sudo lsof -i | grep http
httpd 25634 apache 4u IPv6 70219 0t0 TCP *:http (LISTEN)
...(16個のプロセスがあった)
$ sudo kill -9 25634
...
$ sudo service httpd restart
Stopping httpd: [FAILED]
Starting httpd: [ OK ]
過程で調べたこと
dig
名前解決を普通にできていることを確認。
curl
ブラウザ依存の問題か調べるために実行。
レスポンスがまったく返ってこない。
$ curl www.weblog-beta.com -v
* Rebuilt URL to: www.weblog-beta.com/
* Trying 52.199.161.125...
* Connected to www.weblog-beta.com (52.199.161.125) port 80 (#0)
> GET / HTTP/1.1
> Host: www.weblog-beta.com
> User-Agent: curl/7.47.0
> Accept: */*
>
* Empty reply from server
* Connection #0 to host www.weblog-beta.com left intact
curl: (52) Empty reply from server
セキュリティグループ確認
任意の場所からの80ポートは開いてる。
CloudTrailを確認
ここ一週間で、EC2周りの設定操作はない。
今回あんまり意味なかったけど学んだこと
bash on windowsでのディレクトリのありか
結果的にできなかったけど、bash on windowsでtpcdumpを取ろうとして、cドライブへの行き着き方を調べた。
http://qiita.com/t_nakayama0714/items/9d7cfc5029a9b2ea423d
$ cd /mnt/c
tcpdumpはエラー。
$ tcpdump host 52.199.161.125 -w 2017-08-27.cap
tcpdump: socket: Invalid argument
どうやらダメぽい。
https://superuser.com/questions/1110625/is-it-possible-to-run-networking-commands-like-nmap-in-wsl
やろうと思ってできなかったので学びたいこと
wireshark
wiresharkでパケットキャプチャ取ろうとしたけど、ブログをホストしてるインスタンスのIPアドレスでフィルタリングしてもパケット見えなかった。
古いプロセスが残ってた原因の確認
なぜ古いプロセスが残っているとかいう状態になったのかよくわからないので、再発しそう。
今回は古いプロセスを早々にkillしたけど、ちゃんと原因を調べたい気持ちはある。