連載
» 2018年01月29日 05時00分 公開

Visual Studioで始めるGoogle Cloud Platformプログラミング:GoogleのクラウドでもVisual Studioからいつも通りに使えるってホント? (1/4)

Googleが提供する「Cloud SDK」と「Cloud Tools」を使うことで、Visual Studioを使っていつもの操作感でGoogleのクラウド環境を利用できるかを見てみよう。

[かわさきしんじ,Insider.NET編集部]
「連載:Visual Studioで始めるGoogle Cloud Platformプログラミング」のインデックス

連載「Visual Studioで始めるGoogle Cloud Platformプログラミング」

 Google Cloud Platform(以下、GCP)は、Googleが内部で利用しているインフラと同等なインフラを利用してサードパーティーがクラウド上でさまざまなプログラムやサービスを開発/運用するためのプラットフォームだ。

 そして、開発マシンからGCPが提供する各種サービスにアクセスするために必要となるのが、Cloud SDKCloud Tools for Visual Studio(以下、Cloud Tools)といったツール類になる(前回に取り上げたNuGetパッケージもCloud Toolsの一部)。

 今回はCloud SDKとCloud Toolsがどんなものか、その概要を見ていこう。

Cloud SDKとは

 Cloud SDKは「GCP上で実行されるプログラムや、そこに展開される各種リソースを操作、管理するためのコマンドラインツール群」のこと。Windowsに限らず、macOS/Linux向けのCloud SDKも提供されている(が、本稿ではWindowsでのみ動作を確認している)。後述するCloud Toolsでも使用されているので、Visual Studio(以下、VS)を利用してGoogleのクラウド環境にWebアプリを展開しようと考えているのであれば、Cloud SDKとCloud Toolsの両者が必要になることには注意しよう。

コマンドプロンプト(Cloud Tools Shell)でCloud SDKが提供するCLIツールを利用しているところ コマンドプロンプト(Cloud Tools Shell)でCloud SDKが提供するCLIツールを利用しているところ

 Cloud SDKが提供するコマンドは以下の3つ。

  • gcloud
  • bq
  • gsutil

 gcloudがメインのコマンドだ。このコマンドには、GCPが提供するさまざまなサービス(やサービスが提供する機能)を「グループ」として指定して、そのグループに対してどんな操作を行うかを「コマンド」として指定する。大枠としては「gcloud グループ コマンド」となり、ここにさらにさまざまなオプションを指定していくことになる。例えば、自分が関連しているプロジェクトを一覧するには「gcloud projects list」とする(上の画面でこれを行っている)。さらに細かく「gcloud compute images list」のようにグループとコマンドが連続する場合もある(このコマンドはGoogleが提供する仮想マシンサービスのCompute Engineで、仮想マシン作成に使えるOSイメージを一覧表示するもの)。

 bqは、Googleが提供するビッグデータ解析サービス「BigQuery」に対するインタフェースとなるコマンド。gsutilは、Googleが提供するクラウド上のストレージ「Google Cloud Storage」を管理するためのコマンドだ。

 本稿ではこれらのコマンドについて詳細には取り上げないが、先に述べた通り、VSからGoogleのクラウド環境にアクセスするには必須なので、忘れずにインストールしておこう。

Cloud Toolsとは

 Cloud Toolsは、「ASP.NETアプリをGoogleが提供するクラウド上の仮想マシンやアプリのホスティングサービスなどへ展開するために必要な機能」をVSに統合したものだと考えられる。

 Googleのクラウド環境でWebアプリを実行するには、「App Engine」と呼ばれる「Webアプリやモバイルアプリのバックエンドなどを実行するためのPaaS」と、「Compute Engine」と呼ばれる「仮想マシンを実行するためのIaaS」、コンテナ環境である「Kubernetes Engine」がその選択肢となる。Cloud Toolsがあれば、VS内部からそれらの環境に対してASP.NETアプリを展開したり、そのために必要なリソースを管理したりといったことが簡単に行える。

 VSに統合されているので、その操作感もVSの一般的なツール類と同様だ。つまり、ソリューションエクスプローラーでプロジェクトを右クリックすることで、GCP上のWebアプリホストサービスにアプリを発行したり、[Google Cloud Explorer]でクラウド上のリソースを表示、管理したりできる。使い慣れたVSを使って、いつもと同じ操作感で(Azureではない)Googleのクラウドサービスにシームレスに接続できるのがCloud Toolsのよいところといえるだろう。VSに統合されたCloud SDKの簡易的なシェルといってもよい(できることはCloud SDKの方が多いとは思うが)。

ソリューションエクスプローラーに追加された[Publish to Google Cloud]メニュー項目
[Google Cloud Explorer] Cloud Toolsを利用しているところ
上はソリューションエクスプローラーに追加された[Publish to Google Cloud]メニュー項目。下は[Google Cloud Explorer]で、GCP上に展開されたリソースを一覧しているところ。

 VS内部からGCP上の仮想マシンにASP.NETアプリを展開するには、VS側でASP.NETプロジェクトが、GCP側でASP.NETプロジェクトをホストするためのプロジェクトが必要だ。そして、GCP側のプロジェクトは前述のCloud SDKのgcloudコマンドで作成したり、Webブラウザを開いてGCPのコンソール画面から作成したりする必要がある(全てをVSで完結させられないという点では少し残念なところだ)。

 以下では、これら2つのツールをインストールして、VSからGoogleのクラウド環境に仮想マシンを作成して、そこにASP.NETアプリを発行する手順を見てみよう。

       1|2|3|4 次のページへ

Copyright© 1999-2018 Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。