サイトが一時期閲覧不可となっていました

Posted on 2020-10-18 in zakki

ふとしたタイミングでこのサイトにアクセスしたところ、閲覧できない状態になっておりまして一体何じゃこらとか思いつつ調べました。

Nginx

  • nginx/access.log
XX.XX.XX.XX - - [16/Oct/2020:15:45:43 +0900] "GET /images/favicon.ico HTTP/1.1" 200 1161 "https://mkr-note.net/2020/03/08/git-remote-codecommit/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36" "-" "-"
XX.XX.XX.XX - - [16/Oct/2020:15:45:43 +0900] "GET /images/favicon.ico HTTP/1.1" 304 0 "https://mkr-note.net/2020/03/08/git-remote-codecommit/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36" "-" "-"

確認した時間は、10/16 19 時頃でしたが、15:45 以降のログが出力されていませんでした …。このアクセスログイメージは Bot とかではなくて人かな?内容的に何もないgit-remote-codecommitの記事でスミマセン。

  • nginx/error.log

該当時間帯で気になる出力はなかった …。error.logに出力されていないということは、そもそも nginx が起動されていない可能性があったりなかったり …。

$ ps -aef | grep nginx
ubuntu   3234917 3234907  0 12:29 pts/0    00:00:00 grep --color=auto nginx

あらら …。

Docker

  • systemctl status docker
Oct 16 06:48:41 ip-YY-YY-YY-YY systemd[1]: Starting Docker Application Container Engine...

うん?

  • journalctl -u docker
Oct 15 00:01:06 ip-YY-YY-YY-YY dockerd[1011]: time="2020-10-15T00:01:06.269311603Z" level=info msg="ignoring event" module=libcontainerd namespace=moby topic>
Oct 16 06:48:30 ip-YY-YY-YY-YY systemd[1]: Stopping Docker Application Container Engine...
Oct 16 06:48:30 ip-YY-YY-YY-YY dockerd[1011]: time="2020-10-16T06:48:30.924717359Z" level=info msg="Processing signal 'terminated'"
Oct 16 06:48:31 ip-YY-YY-YY-YY dockerd[1011]: time="2020-10-16T06:48:31.618857892Z" level=info msg="ignoring event" module=libcontainerd namespace=moby topic>
Oct 16 06:48:31 ip-YY-YY-YY-YY dockerd[1011]: time="2020-10-16T06:48:31.628451726Z" level=info msg="ignoring event" module=libcontainerd namespace=moby topic>
Oct 16 06:48:31 ip-YY-YY-YY-YY dockerd[1011]: time="2020-10-16T06:48:31.847258427Z" level=error msg="failed to get event" error="rpc error: code = Unavailabl>
Oct 16 06:48:31 ip-YY-YY-YY-YY dockerd[1011]: time="2020-10-16T06:48:31.854350935Z" level=info msg="stopping event stream following graceful shutdown" error=>
Oct 16 06:48:31 ip-YY-YY-YY-YY dockerd[1011]: time="2020-10-16T06:48:31.854305659Z" level=info msg="Daemon shutdown complete"
Oct 16 06:48:31 ip-YY-YY-YY-YY systemd[1]: docker.service: Succeeded.
Oct 16 06:48:31 ip-YY-YY-YY-YY systemd[1]: Stopped Docker Application Container Engine.
Oct 16 06:48:41 ip-YY-YY-YY-YY systemd[1]: Starting Docker Application Container Engine... 

おおう …。Docker の再起動ログ。ただ Docker-compose は起動していないので閲覧できなかったっぽい。何故 Docker が急に再起動したのだろう。

dpkg

  • dpkg.log
2020-10-16 06:48:29 startup archives unpack
2020-10-16 06:48:30 upgrade docker.io:amd64 19.03.8-0ubuntu1 19.03.8-0ubuntu1.20.04.1
2020-10-16 06:48:30 status half-configured docker.io:amd64 19.03.8-0ubuntu1
2020-10-16 06:48:31 status unpacked docker.io:amd64 19.03.8-0ubuntu1
2020-10-16 06:48:31 status half-installed docker.io:amd64 19.03.8-0ubuntu1
2020-10-16 06:48:40 status triggers-pending man-db:amd64 2.9.1-1
2020-10-16 06:48:40 status unpacked docker.io:amd64 19.03.8-0ubuntu1.20.04.1
2020-10-16 06:48:40 startup packages configure
2020-10-16 06:48:40 configure docker.io:amd64 19.03.8-0ubuntu1.20.04.1 <none>
2020-10-16 06:48:40 status unpacked docker.io:amd64 19.03.8-0ubuntu1.20.04.1
2020-10-16 06:48:40 status half-configured docker.io:amd64 19.03.8-0ubuntu1.20.04.1
2020-10-16 06:48:43 status installed docker.io:amd64 19.03.8-0ubuntu1.20.04.1
2020-10-16 06:48:43 trigproc man-db:amd64 2.9.1-1 <none>
2020-10-16 06:48:43 status half-configured man-db:amd64 2.9.1-1
2020-10-16 06:48:48 status installed man-db:amd64 2.9.1-1

というわけでね …。これは自動更新とか何かかしら。

  • /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

自動更新が有効になっているとのこと。

( 参考 ) Ubuntu Documentation - AutomaticSecurityUpdates

まとめ

apt の自動更新の影響で Docker プロセスが再起動された。Nginx はコンテナで動作させていますが、コンテナの起動は docker-compose で制御していたりするので Nginx( のコンテナ ) が起動せずに NG だったのでしょう。自動更新についてはサイトを 2 年も稼働させていて今頃知る内容かよという話ですが、今の今まで全く影響なかったので知る由も無い背景もありつつハイスミマセンという感じです。

手を入れたいこと

  • 監視

ふとしたタイミングでサイト見たからよかったものの、見なかったら普通に数日 Nginx が落ちたままだったと思うので、気づく手段を入れたい。

  • docker-compose

なんだか以前実施した Ubuntu のアップグレードでも同様のことがあったりなかったりしたので、何か入れておきたい。

サイト