※現在進行形だよ

ブログの話です。案件じゃないです。残念だったな。

ホントにクソ詰まったから障害報告をする。

※書き途中記事だよ

◆背景

こないだ、このブログのお引越しをした。AzureのApp Serviceというクラウドサービス上にあったのを、今回はGCPというクラウドサービスの仮想マシンに移動した。

そいで、CloudflareというCDNサービスを利用するようにした。CDNっていうのは、Webページの情報を適当な場所に保存して、そこから配信することによってサイトの速度向上を図ったり負荷を低減させたりするものだ。Cloudflareはもっと多機能だったりもする。

DebianというOSが動く仮想マシン上にbitnamiをぶち込んだ。結果nginx、php-fpm、MySqlがうごめいている。nginxはサーバー。MySqlはデータベース。php-fpmは

っていう風に丁寧に解説してると文章量がえぐいから程々にしておく。

◆死亡

2019/6/27の夕方ごろ、ブログのページを表示しようとしたら妙に反応が遅い。数分待ったのち

Error 524: A timeout occurred

という表示がされた。これはCloudflareくんが表示している画面だった。「Cloudflareまで来てっけど、お前んとこのサーバーがタイムアウトしたで。」という表示だ。

やめてくれぇ

障害が起きた時は、とにもかくにも原因の切り分けです。これまでの情報からわかることは

  • DNS生きてて
  • Cloudflare生きてて
  • Cloudflareからサーバーへの問い合わせは成功していて
  • 戻ってこない

うん。

◆直接IPアドレスをたたく

http://34.67.37.11/

五分待って

504 Geteway Time-Out

という表示がされた。つまり

※かき途中

◆原因

jetpack。sshでログインして、/opt/bitnami/apps/wordpress/htdocs/wp-content/pluginsにcdしてmv jetpack _jetpackして、bitnamiのrestart叩いたら戻った。

で、sshからnginxとphp-fpmをstopして、mysqlをrestartしてmysqlの内部調査をした。ログイン名はrootの、パスワードはGCPのDeployment Managerだかに書かれてる。あれと同じやつ。そいでmysqlでshow master logsしたらバカみてぇに超ログ吐きまくってたからパージした。直った。でもjetpack戻したらまーたガリガリとログをはき始めた。いま調査中。

結果、どうやらmySqlに飛ばしたクエリが帰ってこなかったのが原因だったらしい。主犯はjetpackだが、何をしやがってんのかは今んとこ判らん。

反省点として、最初にpluginsをplugins2にリネームして復帰しなかったからウンコだった。bitnamiの再起動をかけるべきだった。

mySql詳しくなさ過ぎて調査ができないから、いまは手でパージかけてる。そんな馬鹿な。

何か知ってる人いたら教えてください。何でもしますから。