チェックポイント
Deploy a web server VM instance
/ 30
Create a Cloud Storage bucket using the gcloud storage command line
/ 30
Create the Cloud SQL instance
/ 40
Google Cloud Fundamentals: Cloud Storage と Cloud SQL を使ってみる
- 概要
- 目標
- タスク 1. Google Cloud コンソールにログインする
- タスク 2. ウェブサーバーの VM インスタンスをデプロイする
- タスク 3. gcloud storage コマンドラインを使用して Cloud Storage バケットを作成する
- タスク 4. Cloud SQL インスタンスを作成する
- タスク 5. Cloud SQL を使用するように Compute Engine インスタンスでアプリケーションを構成する
- タスク 6. Cloud Storage オブジェクトを使用するように Compute Engine インスタンスでアプリケーションを構成する
- まとめ
- ラボを終了する
- その他のリソース
概要
このラボでは、Cloud Storage バケットを作成して画像を配置します。また、Compute Engine で実行されているアプリケーションを、Cloud SQL で管理されるデータベースを使用するように構成します。このラボでは、PHP を使用してウェブサーバーを構成します。PHP は一般的なブログ ソフトウェアの基礎となるウェブ開発環境です。ラボ外では、類似の手法を使用してこれらのパッケージを構成します。
また、Cloud Storage バケット内の画像を参照するようにウェブサーバーを構成します。
目標
このラボでは、次のタスクの実行方法について学びます。
- Cloud Storage バケットを作成して画像を配置する。
- Cloud SQL インスタンスを作成して構成する。
- ウェブサーバーから Cloud SQL インスタンスに接続する。
- ウェブページで Cloud Storage バケット内の画像を使用する。
タスク 1. Google Cloud コンソールにログインする
各ラボでは、新しい Google Cloud プロジェクトとリソースセットを一定時間無料で利用できます。
-
[ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。
- [Google Cloud コンソールを開く] ボタン
- 残り時間
- このラボで使用する必要がある一時的な認証情報
- このラボを行うために必要なその他の情報(ある場合)
-
[Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウで開く] を選択します)。
ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。
ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。
注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。 -
必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。
{{{user_0.username | "Username"}}} [ラボの詳細] パネルでもユーザー名を確認できます。
-
[次へ] をクリックします。
-
以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。
{{{user_0.password | "Password"}}} [ラボの詳細] パネルでもパスワードを確認できます。
-
[次へ] をクリックします。
重要: ラボで提供された認証情報を使用する必要があります。Google Cloud アカウントの認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。 -
その後次のように進みます。
- 利用規約に同意してください。
- 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
- 無料トライアルには登録しないでください。
その後、このタブで Google Cloud コンソールが開きます。
タスク 2. ウェブサーバーの VM インスタンスをデプロイする
-
Google Cloud コンソールのナビゲーション メニュー()で、[Compute Engine] > [VM インスタンス] をクリックします。
-
[インスタンスを作成] をクリックします。
-
[インスタンスの作成] ページで、[名前] に「
bloghost
」と入力します。 -
[リージョン] と [ゾーン] は Qwiklabs によって割り当てられたものを選択します。
-
[マシンタイプ] は、デフォルトのままにします。
-
[ブートディスク] で、表示されるイメージが「Debian GNU/Linux 12」でない場合は、[変更] をクリックして、[Debian GNU/Linux 11(bullseye)] を選択します。
-
[ID と API へのアクセス] のデフォルト設定は変更せずにそのままにします。
-
[ファイアウォール] で、[HTTP トラフィックを許可する] をオンにします。
-
[詳細オプション] をクリックし、ダイアログのセクションを開きます。
-
[管理] をクリックし、ダイアログのセクションを開きます。
-
[自動化] セクションまで下にスクロールし、[起動スクリプト] の値として次のスクリプトを入力します。
- 残りの設定はデフォルトのままにして、[作成] をクリックします。
- このラボで後ほど使用するために、[VM インスタンス] ページの bloghost VM インスタンスの内部 IP アドレスと外部 IP アドレスをテキスト エディタにコピーします。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
タスク 3. gcloud storage コマンドラインを使用して Cloud Storage バケットを作成する
すべての Cloud Storage バケット名は、グローバルに一意である必要があります。バケット名が必ず一意になるように、ここでの手順ではバケットに Google Cloud プロジェクト ID と同じ名前を付けるよう指示されます。この ID もグローバルに一意です。
Cloud Storage バケットは、リージョンかマルチリージョンのロケーション(US、EU、ASIA)のいずれかに関連付けることができます。このアクティビティでは、Qwiklabs またはインストラクターによって割り当てられたリージョンとゾーンに最も近いマルチリージョンにバケットを関連付けます。
-
Google Cloud コンソールの右上のツールバーにある [Cloud Shell をアクティブにする] をクリックします。ダイアログ ボックスが表示されたら [続行] をクリックします。
-
便宜上、選択したロケーションを LOCATION という環境変数に入力します。次のいずれかのコマンドを入力します。
または
または
- Cloud Shell では、DEVSHELL_PROJECT_ID 環境変数にプロジェクト ID が含まれています。次のコマンドを入力して、そのプロジェクト ID に基づいた名前のバケットを作成します。
プロンプトが表示されたら [承認] をクリックして続行します。
- Cloud Storage の一般公開されているロケーションから、バナー画像を取得します。
- 新しく作成した Cloud Storage バケットにバナー画像をコピーします。
- 作成したオブジェクトのアクセス制御リストを変更し、誰でも読み取れるようにします。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
タスク 4. Cloud SQL インスタンスを作成する
-
Google Cloud コンソールのナビゲーション メニュー()で、[SQL] をクリックします。
-
[インスタンスを作成] をクリックします。
-
[データベース エンジンの選択] で、[MySQL を選択] をクリックします。
-
[Cloud SQL のエディションの選択] で、[Enterprise] をクリックし、プルダウンから [サンドボックス] を選択します。
-
[インスタンス ID] に「blog-db」と入力し、[root パスワード] に任意のパスワードを入力します。
- [シングルゾーン] を選択し、Qwiklabs によって割り当てられたリージョンとゾーンを設定します。
- [インスタンスを作成] をクリックします。
-
インスタンスの名前 [blog-db] をクリックし、その詳細ページを開きます。
-
このラボで後から使用できるように、[SQL インスタンス] 詳細ページで、SQL インスタンスの [パブリック IP アドレス] をテキスト エディタにコピーします。
-
左側の [ユーザー] メニュー、[ユーザー アカウントを追加] の順にクリックします。
-
[ユーザー名] に「
blogdbuser
」と入力します。 -
[パスワード] に任意のパスワードを入力します。これをメモします。
-
[追加] をクリックして、データベースにユーザー アカウントを追加します。
-
左側の [接続] メニュー、[ネットワーキング] タブの順にクリックします。
-
[ネットワークを追加] をクリックします。
-
[名前] に「
web front end
」と入力します。 -
[ネットワーク] に、bloghost VM インスタンスの外部 IP アドレスを入力し、末尾に
/32
を付加します。
結果は次のようになります。
-
[完了] をクリックして承認済みネットワークの定義を終了します。
-
[保存] をクリックして構成の変更を保存します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
タスク 5. Cloud SQL を使用するように Compute Engine インスタンスでアプリケーションを構成する
-
ナビゲーション メニュー()で、[Compute Engine] > [VM インスタンス] をクリックします。
-
VM インスタンス リストの VM インスタンス「bloghost」の行で [SSH] をクリックします。
-
「bloghost」の ssh セッションで、作業ディレクトリをウェブサーバーのドキュメント ルートに変更します。
- nano テキスト エディタを使用して、index.php というファイルを編集します。
- 次の内容をファイルに貼り付けます。
-
Ctrl+O キーの次に Enter キーを押し、編集したファイルを保存します。
-
Ctrl+X キーを押して nano テキスト エディタを終了します。
-
ウェブサーバーを再起動します。
- 新しいウェブブラウザ タブを開き、bloghost VM インスタンスの外部 IP アドレスの末尾に /index.php を付加してアドレスバーに貼り付けます。URL は次のようになります。
ページを読み込むと、次で始まるエラー メッセージが含まれています。
- bloghost の ssh セッションに戻ります。nano テキスト エディタを使用して、再度 index.php を編集します。
-
nano テキスト エディタで
CLOUDSQLIP
を、先ほどメモした Cloud SQL インスタンスのパブリック IP アドレスに置き換えます。値を引用符で囲みます。 -
nano テキスト エディタで、
DBPASSWORD
を先ほど定義した Cloud SQL データベース パスワードに置き換えます。値を引用符で囲みます。 -
Ctrl+O キーの次に Enter キーを押し、編集したファイルを保存します。
-
Ctrl+X キーを押して nano テキスト エディタを終了します。
-
ウェブサーバーを再起動します。
- bloghost VM インスタンスの外部 IP アドレスを開いたウェブブラウザのタブに戻ります。ページを読み込むと、次のメッセージが表示されます。
タスク 6. Cloud Storage オブジェクトを使用するように Compute Engine インスタンスでアプリケーションを構成する
-
Google Cloud コンソールで、[Cloud Storage] > [バケット] をクリックします。
-
Google Cloud プロジェクトに基づいた名前のバケットをクリックします。
-
このバケットには、my-excellent-blog.png というオブジェクトがあります。そのオブジェクトの [公開アクセス] 列に表示されているリンクアイコンの URL、または [公開リンク] という単語(表示されている場合)のリンク先の URL のいずれかをコピーします。
-
bloghost VM インスタンスの ssh セッションに戻ります。
-
次のコマンドを入力して、作業ディレクトリをウェブサーバーのドキュメント ルートに設定します。
- nano テキスト エディタを使用して、index.php を編集します。
-
矢印キーを使用して、h1 要素を含む行にカーソルを移動します。Enter キーを押して新しい空白の画面行を開き、上記でコピーした URL を貼り付けます。
-
次の HTML マークアップを URL の直前に貼り付けます。
- URL の末尾に閉じ一重引用符と閉じ山かっこを配置します。
行は次のようになります。
この手順により、<h1>...</h1>
を含む行の直前に <img src='...'>
を含む行が挿入されます。
-
Ctrl+O キーの次に Enter キーを押し、編集したファイルを保存します。
-
Ctrl+X キーを押して nano テキスト エディタを終了します。
-
ウェブサーバーを再起動します。
- bloghost VM インスタンスの外部 IP アドレスを開いたウェブブラウザのタブに戻ります。ページを読み込むと、そのコンテンツにバナー画像が表示されています。
まとめ
このラボでは、Cloud SQL インスタンスを構成し、そのインスタンスに Compute Engine インスタンス内のアプリケーションを接続しました。また、Cloud Storage バケットを使って作業しました。
ラボを終了する
ラボが完了したら、[ラボを終了] をクリックします。ラボで使用したリソースが Google Cloud Skills Boost から削除され、アカウントの情報も消去されます。
ラボの評価を求めるダイアログが表示されたら、星の数を選択してコメントを入力し、[送信] をクリックします。
星の数は、それぞれ次の評価を表します。
- 星 1 つ = 非常に不満
- 星 2 つ = 不満
- 星 3 つ = どちらともいえない
- 星 4 つ = 満足
- 星 5 つ = 非常に満足
フィードバックを送信しない場合は、ダイアログ ボックスを閉じてください。
フィードバックやご提案の送信、修正が必要な箇所をご報告いただく際は、[サポート] タブをご利用ください。
Copyright 2020 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。