久々にサーバを再起動して発生した問題と解決方法5選

Aug 16, 2021 blog tips docker 備忘録

サーバを再起動したから7月6日はサーバ記念日

今回は技術的な話というよりはほぼ愚痴なのだが今日作業していて思ったことを書き殴る.

筆者はこのサイト以外にもお仕事?の一環でホームページとサーバの管理を行っている. そのサイトはレンタルサーバではなくオンプレミスであり,Docker上でnginx + FPM (FastCGI Process Manager)を走らせるという構成になっている. サーバはまあ,色々である. サーバとは基本的に稼働し続けるものであり滅多に再起動するものではないが,筆者の管理している機器は,大体半年に1回くらいの頻度で再起動を かけることがある.

元来サーバの再起動は何かしらの問題と隣り合わせではあるが,今回は特にいろんなことがあって禿げ上がりそうになった. こんな場末のサイトに書いて何人が見るかはわからないが,最後かもしれないだろ?だから 全部話しておきたいんだ.

こいつ……動かないぞ!(Ubuntu 18.04)

タイトルそのままであるが,サーバを起動しても途中で画面全体が点滅し,何も出来なくなるという問題が発生した. リカバリーモードに入り,rootユーザでパッケージを更新するなどしても解決できなかった. 色々調べているとこんなサイトを見つけた. 最近増えている気がするがこういう機械翻訳にかけたみたいな日本語のサイト is 何.

ともかく,ここに書かれていた通り

apt install lightdm

でLightDMをインストールし,再起動したところ無事に起動した.やったぜ.

インターネットが壊れたの!!(Ubuntu 16.04)

タイトルそのままであるが(ry

このサーバの構成は少々特殊で,オンボードのLANポートではなくPCIスロットにさしたネットワークカードを使用している. そしてそのネットワークカードはOSの標準のドライバでは認識できないのでメーカーの公開しているコードをmakeし インストールしなければならない.このドライバが不安定で,これまでもいきなり認識しなくなったりそのたびにドライバを 再インストールしたりしていたのだが今回は再インストールしても直らなかった. どうしたものかと思いとりあえず再起動すると直った. 原因は…

わかりませんでした!! このサーバの今後に期待ですね!!

問題はないがお前の態度が気に入らない(Docker Compose)

筆者の環境?ではサーバに対しディスプレイが足りないので一部のサーバは電源を入れたあとにsshでログインして動作確認を行っている. 今回もサーバにsshでログインしようとしたところ

ssh: Could not resolve hostname HOGE: Name or service not known

というメッセージが出た.ご存知,ないのですか!? 仮にも4年以上同じ部屋で過ごしたサーバですが? しかし,原因を調べてみると他のサーバも何故か知らないの一点張りであった.さては名前解決できてないな? IPアドレス直打ちだと無事にログインできたのでとりあえずサーバの生存は確認.

じゃあDNSの方に問題有りということで調べてみました.すると何故かDNSのためのDockerイメージが一部起動に失敗していた. 特に触った覚えはないがとりあえず再起動かけて原因を調べるか.

docker-compose restart

っと…

無事に起動しました. 問題もないのに落ちるな. というわけで原因は…

わかりませんでした!! このサーバの今後に期待ですね!!

俺のホームページがBLEACHすぎる件(民明タッセルローファー文庫)

いろいろあったがサーバの起動も無事に終了しログインの確認もできた. あとは多分大丈夫だと思うがホームページを確認しとくか.

驚きの白さ

*画像はサンプルです

心か

画面が真っ白.これには久保帯人先生もにっこり. 筆者の頭も真っ白になりかけた. が!これ進研ゼミでやったところだ!

そう,筆者は過去にも似たような問題を解いたことがある.原因はズバリ,PHPのバージョンだ!!

fpm:
    image: php:fpm-alpine3.12
    restart: always

さて,このdocker-compose.yaml.どこが間違っているか皆さんはわかりますか?

「ちゃんとイメージのバージョンを固定してるじゃん」

と思われた視聴者のみなさん.これはひっかけ問題です.このタグで固定されているのはalpineのバージョン. PHPのバージョンではないのだ! なんとこのFPMイメージ,同じバージョンタグでも内部のPHPのバージョンがしれっとアップデートされていることがあるのである.

結構最近っすね

2ヶ月前に更新されていた模様.

メジャーバージョン鬼

メジャーバージョンがァ!!メジャーバージョンが変わっている!!

PHPのメジャーバージョンが8になっていました.ちなみにこのアップデートはかなり大規模な変更があって互換性も保証されていません.

そりゃあ動かんわ…

まあ原因がわかった以上PHPのバージョンを落とせば良いだけの話である.

fpm:
    image: php:7.4.20-fpm-alpine3.12
    restart: always

これでヨシ!

総括

今回も様々な問題に見舞われたがその根本的な原因の殆どは古いバージョンのUbuntuを使っていることに起因すると筆者は睨んでいる. 古いOSをだましだまし使うより新しいOSを使おう!!以上!解散!

comments powered by Disqus