Azure Linux VMのswap設定(の前フリ)


ツイートで済ませちゃっててアレなんですが、このサイト、元はフロントをAzureのApp Service (WebApp)、バックエンドをClearDBでホストしておりました。App Serviceプランは無料だと独自ドメインが使えないので『Free』の次に小さい『Shared』を利用、ClearDBのほうは無料プランで済ましていたので、サイトの維持費は月に1200円ほどだったのです。
んで、今年の4月だっけか、ふとサイトを見に来たところ例の『データベース接続確立エラー』が出てるわけですよ。あれ?なんだ?データベース落ちてるのか?なんてのんきにAzureポータルにログインしてみると…
データベースがない。落ちてるなんて生易しい話じゃなくて、ないんですデータベースが。
調べてみると、

  1. Microsoftが『Azure Database for MySQL』として自前でMySQLのサービスを始めた
  2. それに伴いClearDBのサービスは外部サービスとなり、Microsoftが提供するサービスではなくなった
  3. さらにそれに伴い無料プランはなくなって、一番安いプランが$10/月になった
  4. ClearDBのサービス自体はAzureでホストされているので、有料プランにアップグレードすればそのまま継続使用可能
  5. アップグレード期限は3月14日

ということで、まあ簡単にいうと手遅れというやつですね。
迷惑メールフォルダを漁ったら、去年のうちから『ご利用の ClearDB MySQL サービス プランに関する重要な変更』なんてメールが何通も来てたんですが、まったく気づかず😅
そのあとの細かいごたごたは省略して一旦はDBをAzure Database for MySQLに移行します。
が、その後、フル1ヶ月分の請求となった6月分の請求書をみたら6千なんぼって、おい、Azure Database for MySQL 2千いくらじゃなかったのかよ。え?ストレージ代は別なの?
管理がAzureと別になっちゃうと面倒だからということでAzure Database for MySQLにしたんですが、お財布と相談した結果、再度データベースを移行、ClearDBにデータベースを再構築します。
これでAzureはApp ServiceがSharedプランで1200いくら、ClearDBがVenusで1100いくら、その他バックアップ分のストレージだ諸々で、まあ月3000円にはならないだろう位ならまあ維持してもいいかなという感じになりました。
これで暫くは安泰、と思ったのもつかの間、Chromeが非HTTPSサイトをdisり始めます。
う~ん、世の中のHTTPS化の波に乗らないわけにはいかないか。といってもここはなるべく低コストに済ませたい。別に私の実在証明的なものは要らんのですよ。通信の安全だけ確保できればいいわけで。とはいうものの流石にオレオレ証明書では却って警告が出てややこしくなるし、ということでLet’s Encryptの証明書を導入しようという運びになります。
で、調べてみるとどうやらApp Serviceの拡張機能でLet’s Encrypt使えるらしい、ということでHow Toなページなど参考にしつつ進めていきます。と、『HTTPS利用にはApp ServiceプランBasic以上が必要』ということが判明😨
BasicにするとApp Serviceだけで6千円になってしまいます。いくらなんでも誰も見てないWebサイトに月1万円近い費用はかけられません。
いろいろ検討した結果、VM建ててLAMP構成にしちゃえばVM代だけで済むんじゃね?ということになり、CentOS+Apache+MySQL(MariaDB)+WordPressで構成し今に至る…というところまでが今回の前フリ。
←WPの構成とかLet’s Encryptとか特に苦労もなく出来てしまったのでそこらへんは省略。
つづきというか本題はまた明日