AzureのAppServiceの利用をやめるお話 〜唐突なサーバエラー503〜

私は個人でアプリ開発していますが、過去記事にもあるようにバックエンドサービスはAzureのApp ServiceとSQL Databaseを使っていました。しかし2021年11月、とある出来事により他サービスへの引っ越しを決意します

個人開発にとても便利なAzureのサービス群ですが、採用する前にまずはこの記事を読んで、もう一度考えてみてはどうでしょうか。

利用状況

SQL Databaseは為替によって変動しますが月に600円ほどのプラン、AppServiceはFreeプランを契約してました。開発期間含め1年近くは利用していたはず。OSはLinuxを選択し、Laravel(PHP)で開発したプログラムをGithub経由でデプロイし、APIサーバとして運用していました。

flutterで作ったアプリのみがフロントエンドとして存在しており、アプリリリース後は問題なく順調に稼働しておりました。

現象発生

UptimeRobotというサービスを使ってサーバの死活管理をしていますが、どうも昼時から1時間程度継続してエラーレスポンスを返している様子。今までにも数分間エラーレスポンスを返し続けることはありましたが(それはそれで問題)、こんなにも長いことは初めてでした。しかし本業がサラリーマンのためすぐに対応できるわけでもなく、夜になってもエラーのままでした。半日近くエラーな状態。実際にサービスをリリースした後なので大問題です。

まずは利用状況(クォータ)を確認してみました。Freeプランはいくつかのリソースに対する利用状況が上限値を超えると、一定時間使えなくなってしまいます。この利用状況をクォータと呼ぶのですが、どれも上限値には全く届かない数値。問題なさそうです。

しかしなんとなく料金プランを上位のBasicに変更すると、正常に稼働し始めました。納得いかないですが、とりあえずFreeに戻して原因究明。

Laravelを使っていたので何かしら設定等間違っているのかと考えググっては設定変更しますが変わりなし。他にも色々試しましたが埒が明かないのでサポートに問い合わせることに。

問い合わせ先が見つからず

まず、AzureのFreeプランおよびSharedプランでは、「課金」に関するものしかサポートリクエストすることができません!!

もし技術的なことが聞きたければ、コミュニティサイトに投稿する必要があります。もちろんコミュニティサイトなので、的を得た回答がつかないこともあります。ただこちらにも公式の方が巡回に来ている様子。運が良ければ解決方法を掲示してくれるでしょう。

余談ですが、実はこの現象が発生する前にも技術的な問題が発生し、コミュニティに投稿したことがあります。1週間近く経ってやっと公式の人から解決策を得たのですが、ググっても出ないようなAzure専用の設定値を記述しろとのこと。。いたって普通の運用なのに何故?今まで問題にならなかったの?って感じでした。

今回は「クォータの上限に達していないにも関わらず、上限に達したような現象が発生している」と言えるので、課金カテゴリとしてサポートにリクエストを投げました。これが木曜日。原因が判明したのは次の週の火曜日でした。

Freeプランの見えざる限界

原因についての回答を一部抜粋します。

調査の結果、HTTP 503.0、および HTTP 503.65 エラーが発生しておりました。
HTTP 503.65 につきましては、一時的にアプリケーションをホストするワーカーインスタンスが不足していたことを示しております。
〜〜〜
マルチテナント型の App Service では、他のお客様とアプリケーション環境を共有している都合上、App Service プランがホストされているワーカーが一時的に不足する状況が発生する可能性がございます。
上記の制限につきましては、App Service プランの価格レベルが Free および Shared の場合に発生する可能性がございます。

要は、Freeプランは共用リソースであり、他の利用者が高負荷をかけていたためエラーが発生していたのではとのこと。言いたいことはわかりますが、半日以上も「処理が遅くなる」ではなく「エラーレスポンスを返し続ける」のは流石にちょっと。。。

また、このワーカーインスタンスに関しては、利用者は一切状況を知ることができません。

しかもこの返答がきた日にもう一度料金プランをFreeに戻してみましたが、相変わらずエラーレスポンスを返している状態。これもしや6日間もサーバがダウンしていたということ??

回答の締めが「もっと課金すればいいんですよ!」だったのもなかなか。

お別れ

上記の対応も含め色々ともやもやしていたので見切りをつけ、心機一転、別サービスを利用することに決めました。「ググっても出てこない特殊な設定が他にもあるのでは?」とか、「ダッシュボードを見るだけじゃ分からない利用制限があるのでは?」とかいちいち悩む事を考えると、少なくとも個人でやっている自分にはデメリットが大きすぎるなという結論に至りました。あと自分の使い方であれば、上位プランを契約するなら他社のサービスを使った方が費用的に優れていることも決め手。

ベンダーロックインされていなかったのも良かった。もし.NETで作ってたらなかなか移行しづらいですからね。

みなさんもサービスを選定する際は、注意深く情報を探してみてください。

〜後日談〜

この後、サポートに対して「別サービスを選定しているところなのでもういいです」と返答し放置していたところ、数週間後に「申し訳ありません、サーバのバグでした。」との回答が届きました。更に、「このバグはアメリカのサーバから順次修正されるため、あなたのサーバ(東南アジアリージョン)の修正時期は未定です。」とのこと。

勿論、このバグのせいで無駄に発生していたBasicプランの料金補償もありませんでした。更には本番環境を別サービスに移行後、AppServiceのインスタンスを停止(念の為削除はせず)していたにも関わらず、CPUは何故か稼働し続けており数ヶ月間満額が課金されていました。
更に、Basicプランでもたまに数分間サーバがエラーレスポンスを返す現象は発生していました。
また、APIサーバとして利用していたのですが、処理速度は乗換先の国産お手軽レンタルサーバの方が倍近い速さ。

あくまで個人の感想ですが、さすがにこのようなことが起こると使い続けるメンタルにはなれないです。

レンタルサーバはConohaWINGが最強にオススメ!

muchilogでは今までいろんなレンタルサーバやSaaSを使ってきましたが、今では全てをConohaWINGにて運営しています。

■今まで使ってきたサービス一覧
・さくらレンタルサーバ(ベーシックプラン)
・カゴヤ
・Azure
・AWS

今ではこのブログは勿論、webサービスのバックエンドやアプリのサーバ機能もConohaWINGで動かしています。
そんなConohaWINGのメリットをいくつか紹介します!

【国内最速No.1】高性能レンタルサーバーConoHa WING

無料で最大2個の独自ドメインが使える!

サイト運営に必要な独自ドメインをなんと無料で取得することが可能です!これだけでも月100円以上は運営費が節約できます。

優れた速度と安定感

私がAzureやさくらを解約した大きな理由はこれ。Conohaは非常に安定して稼働しており、ダウンタイムがほぼ発生しません。発生した場合は潔くお知らせしてくれます。
また、このブログは勿論、バックエンドとして動いてるプログラムも処理速度が大幅に向上しました(体感で倍速以上)。 Azure等のSaaSからレンタルサーバに移行するって普通考えられませんよね?しかし実際に大きなメリットを感じているのです。

頻繁に開催されるキャンペーン

ConohaWINGは半額に迫るようなキャンペーンを頻繁に開催しています。このキャンペーンによって、性能的には業界トップクラスであるにも関わらず、 月額料金換算で最安値クラスで使えるのです。
基本的に長期一括契約の方がお得になるため、muchilogでは最長で契約することをオススメします。価格と性能のバランスを考えれば他に乗り換えることも考えれられませんし。

レンタルサーバは必須です!

web系のプログラミング学習を進める際には、レンタルサーバの契約は必須と思ってください。ローカルの環境と本番環境で動作が違うことは良くありますし、ポートフォリオを公開するのも大切です。

学習や制作に集中するためにも、満足度、速度、安定度全てのレベルが高いConohaWINGを最強にオススメします!

web系サービス開発会社に転職したい!

muchilogではIT系へ転職したいという方には「自社サービスを運営しているweb系企業」への転職をおすすめしています。

web系は「自由な社風」「成長できる環境」「ホワイトな労働条件」であることが多いからです。

そんなweb系企業への転職を確実にするためのプログラミングスクールが登場しました。


RUNTEQ

RUNTEQはただのスクールじゃない!

RUNTEQはweb系の開発会社。開発会社が運営するスクールなので必要とされる技術力は勿論習得可能。しかしそれだけではないのです。

特にweb系で転職・就職活動を行う際にはポートフォリオを求められることがあります。ポートフォリオとは自分自身の作品のことで、技術力や企画力を示すものです。

RUNTEQではポートフォリオの作成を企画段階からサポートしてくれます!

他のプログラミングスクールでは提携企業の派遣やアルバイトとして就職するしかなかったりもしますが、RUNTEQはあなたの市場価値を高める方法まで教えてくれるということですね。

また、RUNTEQが扱う教材はどれも第一線で当たり前に使われている技術。特に未経験者の独学ではどうしてもスキルセットに穴が出来てしまいます。その点RUNTEQは確実に現場力を養えます。

そして2020年2月〜2021年12月までの内定者の98%がweb系企業に内定しています。これはRUNTEQの指導力とサポートが優れていることの証拠でしょう。

まずは無料説明会に申し込んではいかがでしょうか?

RUNTEQ


未分類
muchiをフォローする
MUCHILOG
タイトルとURLをコピーしました