GCPの無料枠でサーバーを立てる|GCEの設定と国別アクセス制限
/ 6 min read
Table of Contents
はじめに
Google Compute Engine(GCE)には、条件を満たすと無料で使い続けられる枠があります。小さなツールを常時動かしておくには十分な性能です。
無料枠に収めるための設定と、想定外の課金を避けるための対策をまとめました。
インスタンスを作成する
リージョンとマシンタイプ
- リージョンは
us-west1(オレゴン)を選びます。無料枠の対象リージョンの中では、日本からの距離がいちばん近くなります - マシンタイプは
e2-microを選びます
OSとディスクサイズ
ブートディスクの変更から設定します。
- OSは無料のものを選びます(UbuntuやCentOSが無難です)
- ディスクの種類は標準永続ディスクにします
- ディスクサイズは30GBまでが無料です
有料のOSイメージ(一部のWindows Serverなど)を選ぶと、インスタンスが無料枠でもライセンス料が発生します。
月間予測の表示について
作成画面に月間予測として金額が表示されますが、これは無料枠が反映されていないだけなので、条件を満たしていれば問題ありません。
特定の国からのアクセスをブロックする
無料枠には下り通信量の上限があります。公開したサーバーに大量のアクセスが来ると、そこを超えて課金される可能性があります。
日本国内向けのサービスであれば、通信量の多い国からのアクセスをあらかじめ遮断しておくのが有効です。ファイアウォールルールで国別に制限できます。
gcp-block-country-ja のスクリプトを使わせていただきました。
実行前に認証しておく
GCEのVMには最初から gcloud が入っていますが、そのまま実行するとこのエラーになります。
ERROR: (gcloud.compute.snapshots.list) Some requests did not succeed: - Insufficient Permission: Request had insufficient authentication scopes.ログインすれば解消します。
$ gcloud auth loginUbuntu側でのファイアウォール設定(ufw)と組み合わせる方法もあります。
おわりに
無料枠は、条件を1つ外すだけで課金が始まります。リージョン・マシンタイプ・ディスクの3点を押さえたうえで、予算アラートを保険としてかけておくのが安全な使い方です。
