Google Cloud Platformをはじめようチュートリアル #gcpja

こんにちは。CTOの馬場です。

最近GCE(Google Compute Engine)やDocker連携などで盛り上がっている、 Google謹製クラウド GCP (Google Cloud Platform)を使ってみましょう。

今回は概要と、GCEでインスタンスを立てるところまでやってみます。

GCP?GCE?

GCP = Google Cloud Platform で、いろいろなサービスの総称です。

  • Amazon Web Services, Incの「Amazon Web Services」
  • Google Inc. の「Google Cloud Platform」

それぞれいろいろなサービスラインナップがあり、 競合するもの・しないものがあります。

以下の表は互換性があるとかではないですが、 分野的なところがかぶっているよというのをイメージしてもらいやすいと思います。

※誤解などあれば教えてください!

AWS GCP
EC2 Compute Engine
EBS Persistent Disk(GCE)
S3 Cloud Storage
RDS Cloud SQL
Route53 Cloud DNS
DynamoDB Cloud Datastore
RedShift BigQuery

IaaS的なみかたをすると上記のようなAWSとの比較になりますが、 じつは GAE (Google App Engine)もGCPファミリーのプロジェクトです。

Webコンソールからアカウントをセットアップしてプロジェクト作成

GCEはGoogleのアカウントを使ってログインします。

ログインしたあとにプロジェクトを作成し、 プロジェクトごとに支払情報などを登録します。

ブラウザで利用できるGCPのWebコンソールは https://console.developers.google.com/ にあるのでまずはアクセスします。

signin.png

お手持ちのgoogleアカウントでログインしましょう。

そうするとプロジェクト一覧の画面になります。

projects.png

この画面になったら Create Project ボタンを押すとプロジェクト作成ダイアログが表示されます。

PROJECT NAME は自分の好きな名前(今回はSandbox Project)、 PROJECT IDは提案されたものを使えばいいかなーと思います。

newproject.png

数分待つとプロジェクトが作成され、作成したプロジェクトのOverviewに遷移します。

projectcreated.png

請求情報を登録

インスタンスを立てたりするには請求情報を登録しないとなりません。

Overviewの画面で Create Instance などを押すと請求情報の登録を促されます。

billing1.png

ポチポチと入力していきます。

billing2.png

全部英語ですが、特にわかりづらい単語はないので大丈夫でしょう。 お支払いはクレジットカードになります。

billing3.png

登録が完了するとインスタンスの起動などができるようになります!

インスタンスを起動する

それではインスタンスを起動しましょう。 まずはコンソールからCompute Engineを選択し New instance します。

instance1.png

次にスペックを設定します。

  • NAME: インスタンス名
  • METADATA: インスタンスのメタデータ(任意)
  • ZONE: ゾーン
    • ゾーンごとにメンテナンスウィンドウが設定されているので、可用性が欲しい場合はマルチゾーンにする
    • us-central1-a/b, europe-west1-a/b, asia-east1-a/bがあります(2014/6/4現在)
  • MACHINE TYPE: マシンタイプ
  • BOOT SOURCE: 既存Disk/snapshotを利用するか、新規Diskを使うか
  • Delete boot disk when instance is deleted: インスタンスを削除したときにboot diskも消すか(現時点ではboot diskは揮発性のephemeralのみのようです)
  • IMAGE: 利用するイメージ
    • デフォルトでdebian7/centos6/sles-11/rhel-6がありました
  • NETWORK: 最初はdefaultのみ
  • EXTERNAL IP: None/Ephemeral/Static IPを選べます

instance2.png

全て入力して30秒くらい待つと・・・

instance3.png

インスタンスが起動します。 すごい速い!これは感動します。

instance4.png

一覧からインスタンス名をクリックすると詳細が表示されます。

instance5.png

SSH のボタンを押すと、GCP用のCLIツール gcutil を使ったログイン方法が表示されます。

これを実行できるようになるために、手元のPCにgcutilをインストールしましょう。

instance8.png

GCPクライアントツールを手元にセットアップする

GCPクライアントツールであるgcutil手元の環境にセットアップしましょう。

インストール方法はgoogleのdevelopersサイトにあります。 https://developers.google.com/cloud/sdk/

MacOSX/Linux/Cygwinの場合は1行実行するだけです。

インストールしたあとは gcloud auth login で認証を取得し、 gcloud config set project で取り扱うプロジェクトをPROJECT IDで指定します。

curl https://sdk.cloud.google.com | bash
gcloud auth login
gcloud config set project xxxx-xxxx-999

ここまでくればあとはSSHでログインできます。

[baba@local ~]$ SSH_AUTH_SOCK= gcutil --service_version="v1" --project="xxxx-xxxx-999" ssh --zone="asia-east1-b" "instance-1"
INFO: Running command line: ssh -o UserKnownHostsFile=/dev/null -o CheckHostIP=no -o StrictHostKeyChecking=no -i /Users/baba/.ssh/google_compute_engine -A -p 22 baba@xxx.xxx.xxx.xxx --
Warning: Permanently added 'xxx.xxx.xxx.xxx' (RSA) to the list of known hosts.
Enter passphrase for key '/Users/baba/.ssh/google_compute_engine':
[baba@instance-1 ~]$

やったね!

30秒でインスタンスが起動するの、かなり感動します。 ぜひお試しあれ。

株式会社ハートビーツのインフラエンジニアから、ちょっとした情報をお届けします。