Amazonのサービスを使って、ウェブサービスを立ち上げてみる
自分で作成したウェブ上のサービスを、みなさんに利用して頂けたら良いな、との思いからサービスを公開して使用していただける仕組みの構築に取り掛かっています。
ウェブ上に簡単にサービスを公開できない理由
ウェブ上にサービスを展開するにあたり、一番気になるのは、やはり「サイバー攻撃」。「個人のサービスなんてハッカーの目に留まらないだろう」とは思いつつも、万が一、目を付けられたら大変!
そこで、
セキュリティ第一に考えた時、個人でサービスを公開できるサーバーをレンタルして自分でセキュリティを毎日毎日守り切るよりも、AmazonやMicrosoft、Googleの力を借りたほうが良いとの判断に至りました。
安全面においては、きっちり調べて信用できる会社を頼りましょう。
先ずは、AmazonのAWSにターゲットを絞る
そこで、最初に手に取ったのはAmazonのAWS。その中でも自作サービスを作って公開できるものは、多数選択肢がありました。
しかし、AWSのセキュリティの考え方としては、
自作のアプリケーションやサービスにセキュリティの穴があっても知りません。ご自身の責任で守ってください
個人がどこからか探してきて勝手に使う様々なツールについては、セキュリティはご自身で責任を持ってください
サービスを動かす土台となるオペレーティングシステム部分については、各自でアップデートをするなどご自身の責任で守ってください
ネットワーク設備やサーバー機器(実際のケーブルやハードウェア)はAWSがきっちり守ります
というお考えのようです。
これでは、自作するサービスと使用するツールについては自ら責任を負うのは分かるが、OSはAWSにやってほしいとの思いがあるため、OSまでセキュリティの面倒を見てくれるサービスを探しました。
調べてみると、なかなか複雑で、自作サービスを動くようにする(ビルドする)ためのものや、自作サービスが大きくなった時に処理能力を自動調整するものや、そのサービスを動かすための仮想のPCや、・・・・・、とたくさん考えなければならないことがあることが分かりました。
めんどうだなぁ。。。
そう思った時、やはり世界中の多数の方々が同じことを思うんですね。ひとまとまりになったサービスがありました。
それが、
App Runner
です。
気になるApp Runnerの費用
で、やはり気になるのが費用。これだけ便利だと、費用もお高くつく(高額)なのではと思います。実際の費用は次の通りでした。
デプロイ時
日本に住んでいると0.009 USD/GB 時
メモリ1GBあたり、一時間で0.009ドルです。一時間あたり1.5円です。($1 = ¥160計算)
運用時
0.009USD/GB時および 0.081USD/vCPU
メモリ1GBあたり、一時間で0.009ドルです。vCPUは1CPUあたり、一時間で0.081ドルです。つまり、1Gのメモリで一つのvCPUで処理できるのであれば、1時間当たり0.09ドル(14円)、一カ月動かしていると1万円と少しの費用が掛かります。
デプロイ時の費用は、開発しているときは必要ですが、そんなに負担にならないですね。
運用時には月に1万円ほどかかりますので、それなりの覚悟が必要となります。(最も安くなる、軽く動作するサービスなら月2,321円程です)
セキュリティ面は安全だということを考えると、月1万円でサービスが動かせるというのは、みなさんの価値観では、高いですか安いですか?
その他に、自作サービスがデータベースを利用するなら、月○円など、他にAWSを利用する料金やらなにやら少しかかります。
実際にちいさいプログラムを動かして公開してみた
実際に、Node.jsという環境をAppRunnerに作成し、プログラムを動かしてみました。
四苦八苦すること8時間、ようやく動くようになって、2日間放置してみたところ、2日間で$2のコストが発生しました。
何回もデプロイという作業を行ったのもあり、多少コストがかかりましたが、320円程度でプログラムが公開できてサービス提供を開始できるのであれば、安いものだと思いました。
なにかのサービスを立ち上げてみようかな。という気持ちになれる調査研究でした。