GCP(Google Cloud Platform)でCompute Engineを立ててみる

AMDlabの柴田です。AMDlabでは、インフラ周りを構築する際にGCP(Google Cloud Platform)を採用しているプロジェクトが多くあります。そこで今回は、GCPのサービスの中でも基本的なサービスであるGoogle Compute Engine (GCE)にpythonのアプリをデプロイして、外部IPからアクセスできるところまで触れていきます。

GCPとは?

Google Cloud Platform (GCP)は、Googleが提供するクラウドサービスの総称です。仮想マシン、データベース、機械学習、データ解析などのサービスを提供。使用量やサービスに応じて料金が発生し、コスト効率の良いクラウドリソースの利用を可能にします。企業はアプリケーションやデータをGCP上で管理・運用できます。

GCEとは?

Google Compute Engine (GCE)は、Google Cloud Platform (GCP)の仮想マシン(VM)ホスティングサービスです。つまり、こちらを使用すれば手軽にwebサービスをインターネット上にあげることができます。 

1.GCPアカウントの登録

まず、GCPアカウントの登録を行なってください。

2.Google Compute Engine (GCE)の作成

GCPのコンソール内で作成していきます。まず、GCPのCompute Engineのページに入り、新規で作成します。一見色んな項目があるので、混乱しそうですが、今回はお試しで作成していくので、下記の項目のみ変更し、作成します。

・名前 → test

・マシンタイプ → e2-micro  

  ファイアウォールの項目でHTTP,HTTPSどちらも許可します

 

3.ファイアウォールの作成

VPC ネットワーク → ファイアウォール → ファイアウォール ルールの作成

外部からアクセスする際に、特定のポートの解放し、アクセスの許可を設定する為、別のページでファイアウォールを作成していきます。

名前は適当で良いのですが、ここではtest-fire-wallにします。

また、下記のように項目を変更し、その他はデフォルトの設定にします。

TCPのポート5000を開放します。

また下記の項目を変更し、その他はデフォルトの設定で保存します。

ターゲットタグ → test-fire-wall

送信元IPv4 → 0.0.0.0/0

4.Google Compute Engine (GCE)の変更

作成したGCEのページに戻り、ネットワークタグに先ほど作成したターゲットタグ test-fire-wallを追加します。

これでhttp経由でport5000にアクセスできるようになりました。

5.Google Compute Engine (GCE)にアクセスする

作成したGCEの項目SSHの項目があるので、そこをクリックし、SSH接続でGCEに入ります。

しばらくすると下記のコンソールが開きます。

この中で、今回必要なパッケージとサンプルのアプリを作成していきます。

ここではpython3のダウンロードとpythonのフレームワークFlaskをインストールします。

app.pyというファイル名で下記のサンプルアプリを作成します。

アプリの実行をします。

pipでFlaskをインストールした場合、PATHが通らない可能性がありますので、flaskを実行しても動かない場合は下記のコマンドを実行します。

アプリが無事起動すると下記のように表示されます。

6.ブラウザからアクセスする

これで、VMインスタンスの外部IPアドレスにアクセスすることで、Flaskアプリの画面を確認できます。 http://[YOUR_EXTERNAL_IP]:5000 のようなURLとなります。

Hello,World!が表示されれば成功です。

ありがとうございました!

不要であれば、インスタンスは削除するようにお願いします。

Tech
python
ARTICLES