チェックポイント
Create a Compute Engine instance and add Nginx Server to your instance with necessary firewall rules.
/ 50
Create a new instance with gcloud.
/ 50
仮想マシンの作成
GSP001
概要
Compute Engine を使用すると、さまざまなオペレーティング システムを実行する仮想マシン(VM)を Google インフラストラクチャ上に作成できます。オペレーティング システムには Linux の各種ディストリビューション(Debian、Ubuntu、SUSE、Red Hat、CoreOS)や Windows Server などが含まれます。安定した高速パフォーマンスを提供するシステム上で、多数の仮想 CPU を運用することができます。
このハンズオンラボでは、Google Cloud コンソールと Cloud Shell の gcloud
コマンドラインを使用して、さまざまなマシンタイプの VM インスタンスを作成する方法について学びます。また、NGINX ウェブサーバーを VM に接続する方法も学習します。
ラボからコマンドをコピーして適切な場所に貼り付けることは簡単ですが、コアコンセプトに対する理解を深めるために、コマンドをご自身で入力することをおすすめします。
演習内容
- Cloud コンソールを使用して VM を作成する。
-
gcloud
コマンドラインを使用して VM を作成する。 - ウェブサーバーをデプロイし、VM に接続する。
前提条件
- Linux の標準的なテキスト エディタ(
vim
、emacs
、nano
など)を使い慣れていること。
設定と要件
[ラボを開始] ボタンをクリックする前に
こちらの手順をお読みください。ラボの時間は記録されており、一時停止することはできません。[ラボを開始] をクリックするとスタートするタイマーは、Google Cloud のリソースを利用できる時間を示しています。
このハンズオンラボでは、シミュレーションやデモ環境ではなく、実際のクラウド環境を使ってご自身でラボのアクティビティを行うことができます。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。
このラボを完了するためには、下記が必要です。
- 標準的なインターネット ブラウザ(Chrome を推奨)
- ラボを完了するために十分な時間を確保してください。ラボをいったん開始すると一時停止することはできません。
ラボを開始して Google Cloud コンソールにログインする方法
-
[ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。
- [Google Cloud コンソールを開く] ボタン
- 残り時間
- このラボで使用する必要がある一時的な認証情報
- このラボを行うために必要なその他の情報(ある場合)
-
[Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウでリンクを開く] を選択します)。
ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。
ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。
注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。 -
必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。
{{{user_0.username | "Username"}}} [ラボの詳細] パネルでも [ユーザー名] を確認できます。
-
[次へ] をクリックします。
-
以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。
{{{user_0.password | "Password"}}} [ラボの詳細] パネルでも [パスワード] を確認できます。
-
[次へ] をクリックします。
重要: ラボで提供された認証情報を使用する必要があります。Google Cloud アカウントの認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。 -
その後次のように進みます。
- 利用規約に同意してください。
- 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
- 無料トライアルには登録しないでください。
その後、このタブで Google Cloud コンソールが開きます。
Cloud Shell をアクティブにする
Cloud Shell は、開発ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。
- Google Cloud コンソールの上部にある「Cloud Shell をアクティブにする」アイコン をクリックします。
接続した時点で認証が完了しており、プロジェクトに各自の PROJECT_ID が設定されます。出力には、このセッションの PROJECT_ID を宣言する次の行が含まれています。
gcloud
は Google Cloud のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。
- (省略可)次のコマンドを使用すると、有効なアカウント名を一覧表示できます。
-
[承認] をクリックします。
-
出力は次のようになります。
出力:
- (省略可)次のコマンドを使用すると、プロジェクト ID を一覧表示できます。
出力:
出力例:
gcloud
ドキュメントの全文については、gcloud CLI の概要ガイドをご覧ください。
リージョンとゾーンについて
一部の Compute Engine リソースは、リージョンまたはゾーンに属します。リージョンとは、リソースを実行できる特定の地理的位置です。各リージョンには、1 つまたは複数のゾーンがあります。たとえば、リージョン us-central1 は米国中部のリージョンを指し、ゾーン us-central1-a
、us-central1-b
、us-central1-c
、us-central1-f
が含まれています。
リージョン | ゾーン |
---|---|
米国西部 | us-west1-a、us-west1-b |
米国中部 | us-central1-a、us-central1-b、us-central1-d、us-central1-f |
米国東部 | us-east1-b、us-east1-c、us-east1-d |
西ヨーロッパ | europe-west1-b、europe-west1-c、europe-west1-d |
東アジア | asia-east1-a、asia-east1-b、asia-east1-c |
ゾーン内にあるリソースをゾーンリソースと呼びます。仮想マシン インスタンスと永続ディスクはゾーンに属します。永続ディスクを仮想マシン インスタンスにアタッチするには、両方のリソースを同じゾーン内に配置する必要があります。同様に、インスタンスに静的 IP アドレスを割り当てるには、インスタンスが静的 IP と同じリージョンに存在している必要があります。
リージョンとゾーンを設定する
- このラボのプロジェクト リージョンを設定します。
- リージョンの変数を作成します。
- ゾーンの変数を作成します。
詳しくは、リージョンとゾーンのドキュメントをご確認ください。
gcloud
を実行する場合はセッション間で config 設定が維持されますが、Cloud Shell で実行する場合はセッションごと、または再接続するたびに設定する必要があります。
タスク 1. Cloud コンソールから新しいインスタンスを作成する
このセクションでは、Cloud コンソールから Compute Engine を使用して、事前定義された新しいマシンタイプを作成します。
-
Cloud コンソールのナビゲーション メニュー()で、[Compute Engine] > [VM インスタンス] の順にクリックします。
最初に初期化する際は 1 分ほどかかることがあります。
-
新しいインスタンスを作成するには、[インスタンスを作成] をクリックします。
-
新しいインスタンスの作成時に構成できるパラメータは多数ありますが、このラボでは以下を使用します。
項目 | 値 | その他の情報 |
---|---|---|
名前 | gcelab | VM インスタンスの名前 |
リージョン | リージョンについて詳しくは、Compute Engine ガイドのリージョンとゾーンをご覧ください。 | |
ゾーン | 注: 後で必要になるので、選択したゾーンを控えておいてください。ゾーンについて詳しくは、Compute Engine ガイドのリージョンとゾーンをご覧ください。 | |
シリーズ | E2 | シリーズの名前 |
マシンタイプ | vCPU 2 個 | これは(e2-medium)2 CPU、4 GB RAMのインスタンスです。マイクロ インスタンス タイプから 32 コア、208 GB RAM のインスタンス タイプまで、選択できるマシンタイプは複数あります。詳しくは、Compute Engine ガイドのマシン ファミリーについてをご覧ください。注: 新しいプロジェクトにはデフォルトのリソース割り当てが適用されるため、CPU コアの数が制限される場合があります。このラボ以外のプロジェクトで作業を行う際は、より多くの CPU コアをリクエストできます。 |
ブートディスク | 新しい 10 GB のバランス永続ディスク OS イメージ: Debian GNU/Linux 11(bullseye) | Debian、Ubuntu、CoreOS から、Red Hat Enterprise Linux や Windows Server などのプレミアム イメージまで、選択できるイメージは複数あります。詳しくは、オペレーティング システムのドキュメントをご覧ください。 |
ファイアウォール | HTTP トラフィックを許可する | 後でインストールするウェブサーバーにアクセスするために、このオプションを選択します。注: これによって、ポート 80 で HTTP トラフィックを許可するファイアウォール ルールが自動的に作成されます。 |
-
[作成] をクリックします。
VM
gcelab
が作成されるまでに 1 分ほどかかります。gcelab
が作成されたら、[VM インスタンス] ページの VM インスタンス リストに表示されます。 -
SSH を使用して VM に接続するには、インスタンス名
gcelab
の右側で [SSH] をクリックします。これによって、ブラウザから直接 SSH クライアントを起動できます。
注: SSH を使用してインスタンスに接続する方法について詳しくは、Compute Engine ガイドの Google のツールを使用して Linux VM に接続するをご覧ください。
タスク 2. NGINX ウェブサーバーをインストールする
ここでは、VM を接続するために、世界的に広く利用されているウェブサーバーである NGINX ウェブサーバーをインストールします。
-
OS を更新します。
sudo 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] ... -
NGINX をインストールします。
sudo apt-get install -y nginx 想定される出力:
Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: ... -
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 -
ウェブページを表示するために、Cloud コンソールに戻って該当するマシンの行の [外部 IP] をクリックするか、新しいブラウザ ウィンドウまたはタブで [外部 IP] の値を
http://EXTERNAL_IP/
に追加します。このデフォルトのウェブページが開きます。
このラボの進捗状況を確認するには、下の [進行状況を確認] をクリックします。チェックマークは完了を意味します。
Compute Engine インスタンスを作成し、NGINX サーバーをインスタンスに追加して、必要なファイアウォール ルールを設定する
タスク 3. gcloud で新しいインスタンスを作成する
Cloud コンソールを使用する代わりに、コマンドライン ツール gcloud
を使用して VM インスタンスを作成できます。このツールは Google Cloud Shell にプリインストールされています。Cloud Shell は、必要な開発ツール(gcloud
、git
など)がすべて揃った Google Cloud のインタラクティブなシェル環境であり、5 GB の永続的なホーム ディレクトリを備えています。
-
Cloud Shell でコマンドラインから
gcloud
を使用して、新しい VM インスタンスを作成します。gcloud compute instances create gcelab2 --machine-type e2-medium --zone=$ZONE 想定される出力:
Created [...gcelab2]. NAME: gcelab2 ZONE: {{{project_0.default_zone | Zone}}} MACHINE_TYPE: e2-medium PREEMPTIBLE: INTERNAL_IP: 10.128.0.3 EXTERNAL_IP: 34.136.51.150 STATUS: RUNNING このラボの進捗状況を確認するには、下の [進行状況を確認] をクリックします。チェックマークは完了を意味します。
gcloud で新しいインスタンスを作成する 新しいインスタンスには以下のデフォルト値が設定されます。
- 最新の Debian 11(bullseye)イメージ。
-
e2-medium
のマシンタイプ。 - インスタンスと同じ名前のルート永続ディスクが自動的にインスタンスに組み込まれます。
ご自身のプロジェクトで作業している場合、カスタム マシンタイプを指定できます。
-
すべてのデフォルトを表示するために、次のコマンドを実行します。
gcloud compute instances create --help 注: 常に同一のリージョンまたはゾーンを使用していて、毎回 --zone
フラグを追加したくない場合は、gcloud
で使用されるデフォルトのリージョンとゾーンを設定できます。そのためには、以下のコマンドを実行します。
gcloud config set compute/zone ...
gcloud config set compute/region ...
-
help
を終了するには、Ctrl+C キーを押します。 -
Cloud コンソールのナビゲーション メニューで、[Compute Engine] > [VM インスタンス] をクリックします。
新しい 2 つのインスタンスが表示されます。 -
gcloud
経由で、SSH を使用してインスタンスに接続することもできます。その際には必ず該当するゾーンを追加します。ただし、このオプションをグローバルに設定した場合は--zone
フラグを省略できます。gcloud compute ssh gcelab2 --zone=$ZONE __Expected output__: 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. -
「Y」と入力して続行します。
Do you want to continue? (Y/n) -
パスフレーズ セクションでは Enter キーを押し、パスフレーズを空白のままにします。
Generating public/private rsa key pair. Enter passphrase (empty for no passphrase) -
接続後、リモートシェルを終了して SSH 接続を解除します。
exit
タスク 4. 理解度テスト
クイズに挑戦して Google Cloud に関する知識をチェックしましょう (正しいものをすべて選択してください)。
お疲れさまでした
Compute Engine は Google Cloud の Infrastructure as a Service の基礎となっています。Compute Engine で VM を作成したことで、既存のサーバー インフラストラクチャ、ロードバランサ、ネットワーク トポロジを Google Cloud にマッピングできるようになりました。
クエストを完了する
このセルフペース ラボは、「Google Cloud Essentials」クエストの一部です。クエストとは学習パスを構成する一連のラボのことで、このラボの修了後、こちらのクエストに登録すれば、すぐにクレジットを受け取ることができます。受講可能なその他のクエストもご確認ください。
次のラボを受講する
Cloud Shell と gcloud のスタートガイドに進んでクエストを続けるか、以下のラボをご確認ください。
次のステップと詳細情報
- 仮想マシン インスタンスで VM の概要を確認する
- VM を Google Cloud に移行する方法を確認する
- サブネットワークとネットワーク トポロジについて学ぶ
- 正しい VM タイプを選択できるよう、VM マシンタイプを選択するを確認する
Google Cloud トレーニングと認定資格
Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。
マニュアルの最終更新日: 2023 年 9 月 13 日
ラボの最終テスト日: 2023 年 9 月 13 日
Copyright 2024 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。