このチュートリアルでは、Compute Engine を始める方法を説明します。このチュートリアルに従い、.NET Web の Hello World アプリを Compute Engine にデプロイします。App Engine を初めて使用する場合は、App Engine スタンダード環境をご覧ください。
目標
- Hello World サンプルアプリを単一の Compute Engine インスタンスにデプロイします。
料金
このドキュメントでは、Google Cloud の次の課金対象のコンポーネントを使用します。
料金計算ツールを使うと、予想使用量に基づいて費用の見積もりを生成できます。
始める前に
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
- Microsoft Windows を実行しているローカルマシンに .NET Core SDK 2.1 以降をインストールします。
- Microsoft Windows を実行しているローカルマシンに Web Deploy 3.6 以降をインストールします。
アプリをローカルで実行する
GitHub からサンプル リポジトリをダウンロードして解凍するか、サンプル リポジトリのクローンを作成します。
git clone https://github.com/GoogleCloudPlatform/getting-started-dotnet.git
PowerShell ウィンドウで、
HelloWorld
ディレクトリに移動します。cd getting-started-dotnet\HelloWorld
ローカル ウェブサーバーを起動します。
dotnet run
ウェブブラウザを開いて
localhost:8080
にアクセスします。Web ブラウザーに、ローカル PC から送られる Hello World テキストが表示されます。
次に進む準備ができたら、Ctrl+Cキーを押してローカル ウェブサーバーを停止します。
単一インスタンスへのデプロイ
このセクションでは、Compute Engine 上でアプリの単一インスタンスを実行する手順を順を追って説明します。
Compute Engine インスタンスの作成と構成
Google Cloud マーケットプレイスから、Compute Engine で Microsoft IIS を実行している Windows のインスタンスを起動できます。
Google Cloud Console で、[ASP.NET フレームワーク] Cloud Marketplace ページに移動します。
[Launch] をクリックします。
設定はデフォルト値のままにして、[Deploy] をクリックします。
Compute Engine インスタンスがデプロイされるまで待ちます。通常、デプロイには約 5 分かかります。
リソース情報を表示するには、[VM インスタンス] をクリックします。
VM インスタンスを編集するには、[リソースの管理] をクリックします。
[Windows パスワードを設定] をクリックして、ユーザー名をメモします。
新しい Windows パスワードをコピーして、[閉じる] をクリックします。
[VM インスタンスの詳細] ページで、外部 IP アドレスをメモします。
ローカル Windows マシンで、ファイル
HelloWorld/Properties/PublishProfiles/ComputeEngine.pubxml
を編集します。VM インスタンスの外部 IP アドレスを、
<MSDeployServiceURL>
と</MSDeployServiceURL>
の間に入力します。例:<MSDeployServiceURL>203.0.113.22</MSDeployServiceURL>
以前にメモしたインスタンスのユーザー名を、
<UserName>
と</UserName>
の間に入力します。変更を
ComputeEngine.pubxml
ファイルに保存します。PowerShell ウィンドウで、アプリを Compute Engine インスタンスに公開します。
dotnet publish -c Release ` /p:PublishProfile=Properties\PublishProfiles\ComputeEngine.pubxml ` "/p:Password=YOUR-PASSWORD"
YOUR-PASSWORD
を、以前にコピーしたパスワードに置き換えます。ウェブブラウザを開いて、インスタンスの外部 IP アドレスにアクセスします。
ウェブブラウザに、Compute Engine インスタンスから送られる Hello World テキストが表示されます。
インスタンスの管理とモニタリング
インスタンスのモニタリングと管理には、Google Cloud コンソールを使用できます。
- Compute Engine リソースによって生成されたすべてのログを表示するには、[ログビューア] ページに移動します。[ログ エクスプローラ] に移動
Cloud Logging は、各種の一般的なサービス(
syslog
など)からログを収集するように自動的に構成されます。
クリーンアップ
このチュートリアルで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、リソースを含むプロジェクトを削除するか、プロジェクトを維持して個々のリソースを削除します。
プロジェクトの削除
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
個々のリソースの削除
gcloud compute instances delete my-app-instance --zone=YOUR_ZONE --delete-disks=all gcloud compute firewall-rules delete default-allow-http-80
次のステップ
Google Cloud に関するリファレンス アーキテクチャ、図、ベスト プラクティスを確認する。Cloud Architecture Center を確認します。
アプリの構築に使用するその他の .NET リソースについては、以下をご覧ください。
- インスタンス グループのデプロイメントの管理とモニタリングについては、Compute Engine > インスタンス グループ。
- URL マップやバックエンド サービスなどの負荷分散構成の管理については、ネットワーク サービス > 負荷分散。
- Google Kubernetes Engine にアプリをデプロイする
- その他の Google Cloud サービスを検索します。