arrow_back

Creating a Virtual Machine

参加 ログイン

Creating a Virtual Machine

40分 クレジット: 1

GSP001

Google Cloud セルフペース ラボ

概要

Compute Engine では、Google インフラストラクチャ上でさまざまなオペレーティング システムを実行する仮想マシンを作成できます。その中には Linux の主なディストリビューション(Debian、Ubuntu、SUSE、Red Hat、CoreOS)や Windows Server などが含まれます。安定した高速パフォーマンスを提供するシステム上で、多数の仮想 CPU を運用することができます。

このハンズオンラボでは、Google Cloud Console と gcloud コマンドラインを使用して、さまざまなマシンタイプの仮想マシン インスタンスを作成します。NGINX ウェブサーバーを仮想マシンに接続する方法について学習していきます。

ラボからコマンドをコピーして適切な場所に貼り付けることは簡単ですが、コアコンセプトに対する理解を深めるために、コマンドをご自身で入力することをおすすめします。

演習内容

  • Cloud Console で仮想マシンを作成する。

  • gcloud コマンドラインで仮想マシンを作成する。

  • ウェブサーバーをデプロイし、仮想マシンに接続する。

前提事項

  • Linux の標準的なテキスト エディタ(vimemacsnano など)の使用経験があると役に立ちます。

設定

[ラボを開始] ボタンをクリックする前に

こちらの手順をお読みください。ラボの時間は記録されており、一時停止することはできません。[ラボを開始] をクリックするとスタートするタイマーは、Google Cloud のリソースを利用できる時間を示しています。

この Qwiklabs ハンズオンラボでは、シミュレーションやデモ環境ではなく、実際のクラウド環境を使ってご自身でラボのアクティビティを行うことができます。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。

必要なもの

このラボを完了するためには、下記が必要です。

  • 標準的なインターネット ブラウザ(Chrome を推奨)
  • ラボを完了するために十分な時間

注: すでに個人の Google Cloud アカウントやプロジェクトをお持ちの場合でも、ラボでは使用しないでください。

注: Chrome OS デバイスを使用している場合は、シークレット ウィンドウを開いてこのラボを実行してください。

ラボを開始して Console にログインする方法

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側のパネルには、このラボで使用する必要がある一時的な認証情報が表示されます。

    Google Console を開く

  2. ユーザー名をコピーし、[Google Console を開く] をクリックします。 ラボでリソースが起動し、別のタブで [アカウントの選択] ページが表示されます。

    ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。

  3. [アカウントの選択] ページで [別のアカウントを使用] をクリックします。

    アカウントを選択

  4. [ログイン] ページが開きます。[接続の詳細] パネルでコピーしたユーザー名を貼り付けます。パスワードもコピーして貼り付けます。

    重要: 認証情報は [接続の詳細] パネルに表示されたものを使用してください。ご自身の Qwiklabs 認証情報は使用しないでください。請求が発生する事態を避けるため、GCP アカウントをお持ちの場合でもそのアカウントはラボで使用しないでください。

  5. 以降のページでは次の点にご注意ください。

    • 利用規約に同意してください。
    • 復元オプションや 2 要素認証プロセスは設定しないでください(一時的なアカウントであるため)。
    • 無料トライアルには登録しないでください。

しばらくすると、このタブで GCP Console が開きます。

Google Cloud Shell の有効化

Google Cloud Shell は、デベロッパー ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Google Cloud Shell では、コマンドラインで GCP リソースにアクセスできます。

  1. GCP Console の右上のツールバーにある [Cloud Shell をアクティブにする] ボタンをクリックします。

    Cloud Shell アイコン

  2. [続行] をクリックします。

    cloudshell_continue

環境のプロビジョニングと接続には少し時間がかかります。接続すると、すでに認証されており、プロジェクトは PROJECT_ID に設定されています。例えば:

Cloud Shell 端末

gcloud は Google Cloud Platform のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。

次のコマンドを使用すると、有効なアカウント名を一覧表示できます。

gcloud auth list

出力:

Credentialed accounts:
- <myaccount>@<mydomain>.com (active)
	

出力例:

Credentialed accounts:
- google1623327_student@qwiklabs.net
	

次のコマンドを使用すると、プロジェクト ID を一覧表示できます。

gcloud config list project
	

出力:

[core]
project = <project_ID>
	

出力例:

[core]
project = qwiklabs-gcp-44776a13dea667a6
	

リージョンとゾーンについて

一部の Compute Engine リソースは、リージョン内またはゾーン内にのみ存在します。リージョンとは、リソースを実行できる特定の地理的な場所です。各リージョンには、1 つまたは複数のゾーンがあります。たとえば、リージョン us-central1 は米国中部を指し、ゾーン us-central1-aus-central1-bus-central1-cus-central1-f が含まれています。

regions_and_zones.png

ゾーン内で動作するリソースはゾーンリソースと呼びます。仮想マシン インスタンスと永続ディスクは 1 つのゾーン内で動作します。永続ディスクを仮想マシン インスタンスに接続するには、両方のリソースを同じゾーン内に配置する必要があります。同様に、インスタンスに静的 IP アドレスを割り当てるには、インスタンスが静的 IP と同じリージョンに存在している必要があります。

タスク 1: Cloud Console から新しいインスタンスを作成する

ここでは、Cloud Console で Compute Engine を使って新しい事前定義のマシンタイプを作成する方法を学びます。

  1. Cloud Console のナビゲーション メニューナビゲーション メニュー)で、[Compute Engine] > [VM インスタンス] の順にクリックします。

    最初に初期化する際は 1 分ほどかかることがあります。

  2. 新しいインスタンスを作成するには、[インスタンスを作成] をクリックします。

  3. 新しいインスタンスの作成時に構成できるパラメータは多数ありますが、このラボでは以下を使用します。

項目 その他の情報
名前 gcelab VM インスタンスの名前
リージョン us-central1(アイオワ) リージョンについて詳しくは、リージョンとゾーンをご覧ください。
ゾーン us-central1-f 注: 後で必要になるので、選択したゾーンを控えておいてください。ゾーンについて詳しくは、リージョンとゾーンをご覧ください。
シリーズ N1 シリーズの名前
マシンタイプ vCPU 2 個 これは n1-standard-2、2-CPU、7.5 GB RAM インスタンスです。マイクロ インスタンス タイプから 32 コア、208 GB RAM のインスタンス タイプまで、選択できるマシンタイプは複数あります。詳細については、マシンタイプをご覧ください。注: 新しいプロジェクトにはデフォルトのリソース割り当てが適用されるため、CPU コアの数が制限される場合があります。このラボ以外のプロジェクトで作業を行う際は、より多くの CPU コアをリクエストできます。
ブートディスク 新しい 10 GB のバランス永続ディスク OS イメージ: [Debian GNU/Linux 10 (buster)] Debian、Ubuntu、CoreOS から、Red Hat Enterprise Linux や Windows Server などのプレミアム イメージまで、選択できるイメージは複数あります。詳しくは、オペレーティング システムのドキュメントをご覧ください。
ファイアウォール HTTP トラフィックを許可する 後でインストールするウェブサーバーにアクセスするために、このオプションを選択します。注: これによって、ポート 80 に HTTP トラフィックを許可するファイアウォール ルールが自動的に作成されます。
  1. [作成] をクリックします。

    マシンが作成されるまでに 1 分ほどかかります。その後、新しい仮想マシンが [VM インスタンス] ページに表示されます。

  2. SSH を使用して仮想マシンに接続するには、該当するマシンの行で [SSH] をクリックします。

    これによって、ブラウザから直接 SSH クライアントを起動できます。

    d64685c5118c91c7.png

    注: 詳しくは、SSH を使用してインスタンスに接続する方法をご覧ください。

タスク 2: NGINX ウェブサーバーをインストールする

ここでは、仮想マシンを接続するために、世界的に広く利用されているウェブサーバーである NGINX ウェブサーバーをインストールします。

  1. SSH ターミナルで、root アクセス権を取得するために、以下のコマンドを実行します。

    sudo su -
  2. root ユーザーとして、OS を更新します。

    apt-get update

    想定される出力:

    Get:1 http://security.debian.org stretch/updates InRelease [94.3 kB] Ign http://deb.debian.org strech InRelease Get:2 http://deb.debian.org strech-updates InRelease [91.0 kB] ...
  3. NGINX をインストールします。

    apt-get install nginx -y

    想定される出力:

    Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: ...
  4. NGINX が実行されていることを確認します。

    ps auwx | grep nginx

    想定される出力:

    root 2330 0.0 0.0 159532 1628 ? Ss 14:06 0:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; www-data 2331 0.0 0.0 159864 3204 ? S 14:06 0:00 nginx: worker process www-data 2332 0.0 0.0 159864 3204 ? S 14:06 0:00 nginx: worker process root 2342 0.0 0.0 12780 988 pts/0 S+ 14:07 0:00 grep nginx
  5. ウェブページを表示するために、Cloud Console に戻って該当するマシンの行の [外部 IP] をクリックするか、新しいブラウザ ウィンドウまたはタブで [外部 IP] の値を http://EXTERNAL_IP/ に追加します。

    fa24dc2b865d88cf.png

    このデフォルトのウェブページが開きます。

    c0908a068b419647.png

    このラボの進捗状況を確認するには、下の [進行状況を確認] をクリックします。チェックマークが表示されていれば完了しています。

    Compute Engine インスタンスを作成し、NGINX サーバーをインスタンスに追加して、必要なファイアウォール ルールを設定する

タスク 3: gcloud で新しいインスタンスを作成する

Cloud Console を使用する代わりに、コマンドライン ツール gcloud を使用して仮想マシンのインスタンスを作成できます。このツールは Google Cloud Shell にプリインストールされています。Cloud Shell は Debian ベースの仮想マシンであり、さまざまな開発ツール(gcloudgit など)と永続的な 5 GB のホーム ディレクトリが用意されています。

注: ご自身のマシンで試す場合は、gcloud コマンドライン ツール ガイドをご覧ください。
  1. Cloud Shell で、コマンドラインから gcloud を使用して新しい仮想マシン インスタンスを作成します。

    gcloud compute instances create gcelab2 --machine-type n1-standard-2 --zone us-central1-f

    想定される出力:

    Created [...gcelab2]. NAME ZONE MACHINE_TYPE ... STATUS gcelab2 us-central1-f n1-standard-2 ... RUNNING

    このラボの進捗状況を確認するには、下の [進行状況を確認] をクリックします。チェックマークが表示されていれば完了しています。

    gcloud で新しいインスタンスを作成する

    新しいインスタンスには以下のデフォルト値が設定されます。

    • 最新の Debian 10(buster)イメージ。
    • マシンタイプn1-standard-2 になります。 このラボでは、他のマシンタイプ n1-highmem-4n1-highcpu-4 のいずれかを選択できます。Qwiklabs 以外のプロジェクトに取り組む際は、カスタム マシンタイプも指定できます。
    • インスタンスと同じ名前のルート永続ディスクが自動的にインスタンスに組み込まれます。
  2. すべてのデフォルトを表示するために、次のコマンドを実行します。

    gcloud compute instances create --help 注: 常に同一のリージョンまたはゾーンを使用していて、毎回 --zone フラグを追加したくない場合は、gcloud で使用されるデフォルトのリージョンとゾーンを設定できます。そのためには、以下のコマンドを実行します。

    gcloud config set compute/zone ...

    gcloud config set compute/region ...

  3. help を終了するには、Ctrl+C キーを押します。

  4. Cloud Console のナビゲーション メニューで、[Compute Engine] > [VM インスタンス] の順にクリックします。 新しい 2 つのインスタンスが表示されます。

    vm-instances.png

  5. gcloud 経由で、SSH を使用してインスタンスに接続することもできます。必ず、該当するゾーンを追加するか、--zone フラグを除外します(このオプションをグローバルに設定した場合)。

    gcloud compute ssh gcelab2 --zone us-central1-f

    想定される出力:

    WARNING: The public SSH key file for gcloud does not exist. WARNING: The private SSH key file for gcloud does not exist. WARNING: You do not have an SSH key for gcloud. WARNING: [/usr/bin/ssh-keygen] will be executed to generate a key. This tool needs to create the directory [/home/gcpstaging306_student/.ssh] before being able to generate SSH Keys.
  6. Y」と入力して続行します。

    Do you want to continue? (Y/n)
  7. パスフレーズ セクションでは Enter キーを押し、パスフレーズを空白のままにします。

    Generating public/private rsa key pair. Enter passphrase (empty for no passphrase)
  8. 接続後、リモートシェルを終了して SSH 接続を解除します。

    exit

理解度を確認する

クイズに挑戦して Google Cloud に関する知識をチェックしましょう(正しいものをすべて選択してください)。

お疲れさまでした

Compute Engine は Google Cloud の Infrastructure as a Service の基礎となっています。Compute Engine で仮想マシンを作成したことで、既存のサーバー インフラストラクチャ、ロードバランサ、ネットワーク トポロジを Google Cloud にマッピングできるようになりました。

GCP_Essentials_125x135_new.png

クエストを完了する

このセルフペース ラボは、Qwiklabs の「Google Cloud Essentials」クエストの一部です。クエストとは学習パスを構成する一連のラボのことで、完了すると成果が認められて上のようなバッジが贈られます。バッジは公開して、オンライン レジュメやソーシャル メディア アカウントにリンクできます。このラボの修了後、こちらのクエストに登録すれば、すぐにクレジットを受け取ることができます。受講可能なその他の Qwiklabs のクエストもご確認ください

次のラボを受講する

Cloud Shell と gcloud を使ってみる」でクエストを続けるか、または以下のおすすめのラボをご確認ください。

次のステップと詳細情報

Google Cloud Training & Certification

Google Cloud 技術を最大限に活用できるようになります。このクラスでは、必要な技術力とベスト プラクティスを習得し、継続的に学習することができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、仮想環境など、多忙なスケジュールに対応できるオプションが用意されています。認定資格を取得することで、Google Cloud の技術のスキルと知識を証明できます。

マニュアルの最終更新日: 2021 年 7 月 8 日
ラボの最終テスト日: 2021 年 7 月 8 日

Copyright 2020 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。