実践GCP ④:Google Compute Engineを使ってみよう

ウェブページが完成されたので、本格的にゲームをアップロードしたいと思います。
先ずはゲームサーバーを起動するため、Google Compute Engineを使います。

GCPについて前回の記事はこちら

実践GCP ①:プロジェクトを始めよう
実践GCP ②:Serviceアカウントを設定しよう
実践GCP ③:Google App Engineを使ってみよう


  • GCEのVMインスタンス作成
  • GCPダッシュボードに接続し(https://console.cloud.google.com/)、「Compute Engine → VMインスタンス」 を選択します。

    「インスタンスを作成」 を選んでインスタンスを作ります。


    地域は 「us-central1, us-east1, us-west1」 の中で選びます。他の地域は無料オプションがついてないので、ご注意ください。

    赤線の地域が無料で使える所です。



    マシンタイプは 「f1-micro」 を選びます。他のタイプは無料で使えません。




    上の設定にすると、右上の予想費用に1ヶ月744時間無料メッセージが表示されます。

    赤線のメッセージを確認しましょう



    http、httpsトラフィックを許可をチェックして作成します。





    インスタンス作られたら目録からIP情報が見れます。

    外部IPは接続のために覚えておく必要です。



    これからSSHで接続が可能です。


    では、サーバーを起動させるために 「node.js」 をインストールします。
    nodeをインストールする方法はいるいるありますが、homebrewを使うと楽なので、まずhomebrewをインストールします。



    homebrew公式サイトにインストールコマンドがあるので、コピーして実行します。

    インストールが終わったら、node.jsをインストールします。
    (僕はv12でサーバーを作ったので、v12を設置します。)

    > brew install node@12


    nodeがインストールされたらテストしてみましょう。下のテストコードを作成して、 「server.js」 の名前で保存します。

     var http = require('http');
     http.createServer(function (req, res) {
      res.writeHead(200, {'Content-Type': 'text/plain'});
      res.end('Hello World!');
     }).listen(8080);


    nodeを実行します。

    > node server.js


    ブラウザーで 「http://IPアドレス:8080」 に接続してみます。このまま接続するとエラーが出ることがわかります。理由は8080ポートについてファイアワォールがかかっているからです。8080ポートを許可するように規則を変えます。




  • Firewallルール追加
  • ダッシュボードの 「VPCネットワーク → ファイアウォール ルール」 に移動します。



    「ファイアウォール ルールを作成」 選択

    一応テストのために ip: 0.0.0.0/0、tcp port 8080 を設定して作成します。

    両方のトラフィックについてFirewallを設定するには、各方向に対してルールを作成する必要があります。



    作成後にブラウザーで接続してみると、正常に接続できます。





    次回は実際のゲームでサーバーとの通信やりとりをテストしてみます。


    ※ 元ブログから移転された記事です。

    コメント