てっくらのーとは、触れた技術のメモと日常の記録が少し合わさった個人のサイトです。
サイトが一時期閲覧不可となっていました
ふとしたタイミングでこのサイトにアクセスしたところ、閲覧できない状態になっておりまして一体何じゃこらとか思いつつ調べました。
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 のアップグレードでも同様のことがあったりなかったりしたので、何か入れておきたい。