gracetory’s blog

東池袋にある合同会社グレストリのエンジニアブログです

無料で使える個人用サーバが欲しかったらGCP(Google Cloud Platform)を使ってみよう

f:id:ykira:20171006113201p:plain

こんにちは、ykiraと申します。

寒い日が多くなってきましたが、皆様いかがお過ごしでしょうか。

今年も早いものでもう10月。あと3ヶ月で1年が過ぎ去ろうとしています。

これからイベントも多くなり、出費などが痛い季節でもありますね。

そんな方のために、今回は無料で使える個人用サーバを構築してみようと思います。

GCP(Google Cloud Platform)とは?

Googleがやっているクラウドサービスです。

いわゆるIaaSらしいです。ちなみに「イァース」と読むみたい。言いにくいですね。

類似サービスとしてはAWS(Amazon Web Services)が有名です。

ただ、どちらも沢山の機能(サービス)があるので、GCP=クラウドサーバでは無いということを注意しておきましょう。

今回は、無料の遊べるサーバが欲しいだけなのでGCPの中でもCompute Engineというサービスのみ使う形です。

AWSだとAmazon EC2ですね。

なんで無料なの?

米国時間での2017年3月9日に、GoogleはGCPの常時無料プログラムを提供しました。

これは、ある条件であればずーっと無料でサーバ使えるという神プログラムで、AWSなどには無いものです。

その条件とは、、、

  • 1つのf1-micro VMインスタンス (1か月あたり、バージニア州北部を除く米国リージョン)
  • 30GBのHDD永続ディスクストレージ (1か月あたり)
  • 5GBのスナップショットストレージ (1か月あたり)
  • 1GBの北米から他のリージョン宛て下りネットワーク利用 (1か月あたり、中国およびオーストラリアを除く)

となり、この条件範囲内であればずーっと無料です。

f1-microのスペックは1つの仮想CPUと0.60GBメモリとなりますので、本番用などには向きませんが、遊びや学習用途では十分に使えると思います。

バースト機能も提供されているので、瞬間的な負荷などでも対応できるのではないでしょうか。

もちろん、Googleの方針でこのプログラムが終了してしまう可能性はありますので、今のうちに使っておきましょう。

まずはGCPの無料トライアルを始めよう!

まずは、サイトにアクセスして無料トライアルを始めましょう。

Googleアカウントにログインする必要があります。アカウント持っていない人は作ってください。

GCP(https://cloud.google.com/)

f:id:ykira:20171006113215p:plain

無料トライアルのボタンをポチッとな。

するとこんな感じの画面になります。

f:id:ykira:20171006113231p:plain

1番上は日本(たぶんデフォでなっている)で2番目はお好きに、3番目は利用規約の同意なのでしっかり確認してはいを選びましょう。

同意して続行ボタンを押すと、こんな画面に。

f:id:ykira:20171006114203p:plain

項目に沿って、郵便番号・住所・氏名・電話番号・支払いクレジットカードを入力しましょう。

入力が終わったら無料トライアルを開始ボタンをセンターに入れてクリック。

おめでとうございます、GCPへの登録は完了です!

いまこのブログを書いている時点(2017/10/6)では、300ドル分(日本円で3万円ちょっと)の無料クレジットが入っていました。

登録をした日から12ヶ月以内であれば、この300ドル分は自由に使えますので、試しにスペックの高いサーバなどでも遊んでみてください。

それにしても300ドル分も使えるなんて、太っ腹ですねー!さすが天下のGoogle!

プロジェクトを作成してみよう!

登録が完了すると自動でコンソールに遷移するかと思います。

f:id:ykira:20171006125656p:plain

画像上部ロゴの右側にphp-devとなっているところがプロジェクトの表示となります。

実際には最初My First Projectとなっているかと思いますので、好きな名前のプロジェクトを作成しましょう。

php-devをクリックするとプロジェクトの一覧画面になります。

f:id:ykira:20171006125701p:plain

検索窓の右側にある+をクリックすると、プロジェクト作成画面になります。

f:id:ykira:20171006125704p:plain

好きな名前を入力して作成すると、プロジェクトが新規作成されます(少し時間がかかります)

コンソールに戻ったら、作成したプロジェクトに切り替えるのを忘れないようにしてください。

サーバを作成してみよう!

やっと本題です。サーバを作りましょう。

コンソール左側のメニューからCompute Engineをクリックしてください。

f:id:ykira:20171006130810p:plain

すると、こんな感じの画面に遷移します。

f:id:ykira:20171006130814p:plain

上部のメニューにインスタンスの作成というのがありますので、ここから作成します。

サーバ=インスタンスって思ってもらっていいと思います。

インスタンスの作成をクリックするとこんな画面に遷移します。

f:id:ykira:20171006131315p:plain

項目に沿って、サーバの情報を入力していきます。

  • 名前
    • 好きな名前を入力してください。
  • ゾーン
    • us-〜というやつを選択してください。
  • マシンタイプ
    • microを選択してください。
  • ブートディスク
    • HDDの容量とOSを決めます。HDDは30GBまで、OSは好きなやつを選択してください。
  • ID と API へのアクセス
    • 変更する必要はありません。
  • ファイアウォール
    • HTTP・HTTPSどちらのトラフィックも許可してください。

この状態でもインスタンスは作成できますが、デフォルトでグローバルIPがサーバを再起動する度に変わってしまうという設定になっていますので、それを変更しておきましょう。

管理、ディスク、ネットワーク、SSH認証鍵をクリックすると入力欄が表示されます。

タブメニューからネットワークを選択してください。

f:id:ykira:20171006132816p:plain

ネットワークインターフェイスという項目をクリックするとこんな入力欄が出てきます。

f:id:ykira:20171006132828p:plain

外部IPという項目(エフェメラルとなっている箇所)をクリックしてCreate IP Addressを選択してください。

すると新しい静的IPアドレスの予約ウィンドウが表示されます。

f:id:ykira:20171006132837p:plain

好きな名前を付けて予約しましょう。

静的IPが作られて、インスタンスに設定されます。

これで入力は完了です。

ゾーン・マシンタイプ・ブートディスクの設定を間違えると無料になりませんので注意してください。

ただ、間違って作成してもすぐに削除できますし、また作ることも簡単にできるので、とりあえず作ってみるという感覚でOKです。

作成ボタンを押すとインスタンスが作成されます(少し時間がかかります)

f:id:ykira:20171006134155p:plain

おめでとうございます!これでサーバができました!

サーバにsshでアクセスしてみよう!

sshでアクセスするために、鍵を設定しましょう。

鍵はCompute Engine左側メニューのメタデータから設定できます。

f:id:ykira:20171006135735p:plain

鍵の作り方は、公式ドキュメントを参照してください。

SSH 認証鍵の追加と削除  |  Compute Engine ドキュメント  |  Google Cloud Platform

$ ssh-keygen -t rsa -f ~/.ssh/[KEY_FILE_NAME] -C [USERNAME]

USERNAMEのところはGoogleのアカウント名にしてください。

たとえば、Gmailアドレスがykira@gmail.comとかならykiraがアカウント名になります。

鍵を作ったら、公開鍵(.pub)の中身をメタデータに設定しましよう。

画面の編集ボタンをクリックすると入力欄が出てきますので、そこにコピペして保存するだけです。

あとは、秘密鍵を使ってターミナルでsshしたり、SFTPクライアントを使ったりでサーバにアクセスできます。

個人用のサーバが無料で使える時代!

これであとはApacheとかPHPとか好きなものをインストールすれば、いいかと思います。

こんなに簡単に、しかも無料でサーバが使えるなんて、いい時代になりましたね。

そのうち、このサーバでPHPを動かすみたいな記事も書いてみたいと思います。

ただ、この記事のbrewyumに変わっただけになるだろうなと思います……

techblog.gracetory.co.jp

まーそんなこんなで、

気になった方は、ぜひ使ってみてください!

参考資料

このあたりの記事にも目を通しておくと良いかと思います。

GCEのf1-microインスタンスを真にタダで使う方法 - Qiita

Google Cloud Platformで何処にも割り当てていない「静的IPアドレス」には「維持費」が発生する | Welcome to Singularity