テクノロジー

GCPの無料枠で簡単に安く企業ホームページを運用する

gcp-corporate-site

弊社のホームページはGoogle Cloud Platform(GCP)上で運用しています。この記事では、なぜGCP上で運用しているのかや実際に使用しているGCPのサービスについて記載します。

なぜGCPを選んだのか?

下記の3つがGCPを選んだ主な理由です。

Googleの各サービス(Google検索やYoutube、GmailやGoogleMap等)の運用で使っている環境と同じ環境を使えるためスケーラビリティがある GCPを使うことで高可用性(サーバが落ちることが限りなく少ない)が得られる GCPはAI関連のサービスを数多く提供しており、弊社の事業で使うクラウドサービスとして親和性が高い

クラウドサービスとしてはAmazonの「AWS」やMicrosoftの「Azure」等が有名で日本では圧倒的にAWSが使われているのが現状です。Google トレンドで検索数を調べてもAWSが最も多く検索されているのが分かります。

GCP無料枠

このようにAWSが最も多く検索されていますが、クラウドサービスを選ぶ時に重要なのは、一番使われているからというような理由ではなく、そのクラウドサービス(インフラ)上で実装したいサイトやシステムの特性によって、使い分けることが重要です。3つサービスで優劣があるというわけではなく、それぞれ特徴があり、強いところや弱いところがあるということです。

Google App Engine(GAE)かGoogle Compute Engine(GCE)か?

GCPでホームページ等のサイトを構築する際のやり方としては様々な方法が考えられますが、大きく分けるとGAEを使用するか、GCEを使用するかという選択になります。

GAEはいわゆるPaaS (Platform as a Service)と言われるもので、アプリケーションソフトが稼動するためのネットワークやハードウェア、OSをインターネット上のサービスとして提供する形態のことを指します。アプリケーションの開発前段階で必要な開発環境の準備(サーバーの設置/OSのインストール/ネットワークの設定等)を大幅に省略できるだけでなく、アプリケーション開発後の環境のメンテナンス(サーバー負荷に応じたリソースの増強/OSアップデート対応など)にかかるコスト削減ができることがメリットです。開発者はサイトのコーディングのみに集中できます。それ以外のインフラ面のメンテナンス等は全てGoogleにお任せできるのです。

GCEはいわゆるIaaS (Infrastructure as a Service)と言われるもので、システムの稼動に必要なネットワークやハードウェア等のインフラを、インターネット上のサービスとして提供する形態のことを指します。OSのアップデートや必要なソフトウェアのインストールは自分で行わかなればならないという点はありますが、その分、PaaSよりも自由度が高いという特徴があります。

GAEを使うかGCEを使うかというのは構築するサイトやアプリケーションの特徴や運用する技術者の数等によって、選べば良いです。弊社のホームページの場合は静的なサイトがメインであり、問い合わせフォームだけ動的なサイトになっているということや様々インフラ管理(サーバのメンテナンス等)はGoolgeにお任せしたいため、GAEを選択しています。これにより、サイトを作成したら後はGoogleにお任せということになり、運用面が非常に容易です。

GAEの特徴

Googleの提供する検索やGoogleMap、GmailやYoutube等、多くのサービスの基盤にもなっているというGAEですが、企業のホームページを運用する際には下記のような特徴があります。

維持コストが安い

・GCPの最初の12ヶ月は$300(約3万円)の無料枠が使用でき、その後もAlways Free プログラムを利用することにより月0円〜300円ぐらいで運用できます。(ただしアクセス数や構成により価格は前後します)

無料枠を使えば、ここまでできる

AppEngineであれば、1日あたり28インスタンス時間の利用が可能です。
インスタンス時間とは、インスタンスの起動時間を指します。つまり、性能をあげたくなり2インスタンス起動た場合した場合、14時間無料となります。

CloudStorageが5GB無料。FireStoreが1GBの無料。

なので、NoSQLでサイトを組めばほぼ無料で使い続けることができます。

無料枠の詳細はこちら

クラウドトレンド

インフラ面の管理が一切不要

  • OSのアップデートや脆弱性への対応、ネットワーク関連の対応等、通常のサーバを運用する際に発生するタスクを全てGoogle側が行ってくるため非常に安心。
  • アクセスがスパイクして一気に大量のアクセスが集まったとしてもGAEであれば、自動的にサーバを増やして(スケールアップ)して、管理してくれます。またアクセスが減ったら自動的にサーバを減らしてくれますので、節約にもなります。素敵ですね。
  • インフラ面の管理が不要になることにより、コーディングのみに集中できる

GAE上でバージョン管理ができる

  • GAEでは新しくサイトをサーバ上に公開する際に、今動いているサーバ上のコードを上書きするのではなく、別のサーバにコードをアップロードするので、本番サイトに公開する前にサーバ上で確認することができます。確認後にネットワークのトラフィックを変更することにより、ダウンタイムなしで新しいサイトに切り替えることができるのも大きな特徴です。
  • もし問題が起こった場合でも、古いサーバを削除せず取っておけば、すぐに前の状態に戻すこともできるという優れものです。

サイトのHTTPS化が容易

  • 現在Googleは全てのサイトに対してHTTPSにするように推奨しています。HTTPSに対応させるためには証明書の登録等が必要ですが、GAEを使用することにより、管理画面から非常に簡単に設定することができます。

GCPで困ったら

弊社ではGCPをメインに扱っており、GCPに関して非常に深い知識を持つクラウドアーキテクトが多数在籍しております。もしサーバのクラウド化について疑問や質問等があれば、お気軽にご相談ください。専門のコンサルタントがご対応させて頂きます。