GCPの無料枠でVMインスタンスを作成

懐事情等であまり課金されてしまうのは...というときのために完全無料のWebサーバをGCPの無料枠で立てましょう、ということでメモ。

※2024年2月1日　課金可能性のあるポイントを追記

# 1. Google Cloudの無料枠(Compute Engine)
Google Cloudの無料プロダクトはこちらから確認できます(2024.1.11現在）
[無料トライアルと無料枠 | Google Cloud](https://cloud.google.com/free?hl=ja "無料トライアルと無料枠 | Google Cloud")

今回はその中のCompute Engineを使います。
![スクリーンショット 2024-01-11 13.10.29.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/0bfb5503-ca88-93fa-8807-5874eea3104c.png)
この条件をもとにVMインスタンスを作っていきましょう。

# 2. VMインスタンスの作成
Google Cloudにログインしたら、Google Cloud Platform(以下GCP)から
Compute Engine→VMインスタンスと選択します。
![スクリーンショット 2024-01-11 12.24.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/5af2d864-7da0-049f-a38a-4e051d558e1f.png)
画面上部の「インスタンス作成」をクリックして、インスタンスを作成していきましょう。

### ◆各項目設定
各項目を設定してきます。
触れない項目はデフォルトのままの設定でOKです。
<img width="80%" alt="スクリーンショット 2024-01-11 13.40.12.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/c2f743ff-1667-c823-12bb-7a9ce030ece3.png">


・__名前__
このインスタンス以外作らないのであればなんでもよいと思いますが、複数のインスタンスを作って使い分ける場合は変えておくのが無難です。
今回は「webserve-1」としました。

・__リージョンとゾーン__
先の無料枠で確認したリージョンを選びます。
無料で使用できるのは
　-オレゴン:us-west1
　-アイオワ:us-central1
　-サウスカロライナ:us-east1
の3つです。
日本から一番近いオレゴンを選ぶのが一般的でしょうか。なので今回はオレゴンを選択。
ゾーンはus-west1でa, b, cの3つがありますが、どれを選んでも大差はありません。
今回はデフォルトで選択されたbを使います。

・__マシンの構成__
無料枠は _E2_ なので、こちら1択。
<img width="80%" alt="スクリーンショット 2024-01-11 13.54.08.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/9a828b8f-895c-709c-60f3-cde2243f14c3.png">

・__マシンタイプ__
マシンの構成の一環ですが、マシンタイプも選択します。
こちらも無料枠の表通り、_e2-micro_ を。

<img width="80%" alt="スクリーンショット 2024-01-11 13.36.08.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/fc408889-d85f-53cf-a1fa-1f92a70564fa.png">

・__ブートディスク__
ブートディスクはこのままの設定でも問題ないですが、せっかく30GBまで無料ということなので、30GBに設定します。
変更ボタンをクリックすると設定画面が開きます。
<img width="80%" alt="スクリーンショット 2024-01-11 13.57.44.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/5b7699c5-0de6-3a33-a8d1-31d9c9c32920.png">
OSは好みで変更しても問題ありません。
ただし、Red HatをよびSUSEのEnterprise版、Windows Serverを選択してしまうと費用が発生してしまうので注意してください。

ブートディスクの種類も無料で使えるのは標準永続ディスクだけです。
サイズだけ30GBに書き換えて、選択ボタンをクリックしましょう。

<img width="80%" alt="スクリーンショット 2024-01-11 13.36.17.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/a888fc90-4a55-6915-0e14-97e6a46fc027.png">

・__ファイアウォール__
そのままでも問題ないですが、Webサーバ用途などの場合は「HTTPSトラフィックを許可」にチェックを入れておいてもよいかもしれません。
あとで設定変更も可能です。
<img width="80%" alt="スクリーンショット 2024-01-11 13.36.28.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/897989f1-5363-1de2-cb2d-56c5a84d8f84.png">


・__ネットワーキング__
詳細オプションを開いて、更にネットワーキングを開きます。
<img width="80%" alt=スクリーンショット 2024-01-11 14.14.35.png"" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/66488c5b-6850-5703-2fe2-09ec479930ea.png">
ネットワーキングの中から、ネットワークインターフェースの項目を変更します。

defaultの __∨__ をクリックし「ネットワークインターフェースの編集」を表示させます。
<img width="80%" alt="スクリーンショット 2024-01-11 14.15.06.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/2b1c4a63-7032-2704-8d8d-2fb52df12da7.png">

「外部IPv4アドレス」の欄をクリックして「静的外部IPアドレスを予約」を選択します。
設定をしないと、再起動するたびにIPアドレスが変わってしまいます。
用途によってはそれでも問題ないと思いますが、課金されないのであれば予約しておくのが無難です。
_※ちなみに、プライマリ内部IPv4アドレスに静的アドレスを予約するともしかすると課金されるかもしれません。特別な用途がなければ内部IPv4はエフェメラル（自動）のままで作成しましょう。_

ネットワークの名前を設定するウィンドウが表示されるので、適当な名前をつけましょう。
今回は webserver-nicとしました。
<img width="80%" alt="スクリーンショット 2024-01-11 14.15.40.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/494905c2-d573-5ccf-c0a6-91cff065082f.png">
以上で設定は完了です。
画面下部の「作成」ボタンをクリックしてインスタンスを作成しましょう。

これ以外の設定を追加・変更してしまうと課金されてしまう可能性があるので、設定は最小限に。

#### ちなみに...
ここまでの無料枠設定をしても画面右側に表示される「月間予測」に$7.31と表示されてしまいます。
無料じゃないの？！と驚くかもしれませんが、実際には課金されません。
表示に無料枠分が対応していないようなのですが、早く設定なおして欲しいですね...
<img width="300" alt="スクリーンショット 2024-01-11 14.09.12.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/b89d4c23-36c6-bc7f-a459-46715c9abcf9.png">


# 3.作成完了
これでVMインスタンス作成が完了しました。
VMインスタンスの一覧に今作ったインスタンスが表示されていると思います。
![スクリーンショット 2024-01-11 14.44.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456861/62249cb6-41d2-e08f-431b-0a11b13841a0.png)

スペックが2vCPUで1GBのメモリなのでやれることはある程度限定されると思いますが、ちょっとしたWebサーバとして試すには問題ないかなと思います。