Azure Cloud Shellを解説 【シリーズ Azureサービスいちから紹介】

このエントリはQiita Advent Calendar 2017 Microsoft Azureサービスいちから紹介 の21日目です。

ナレッジコミュニケーションの大柳です(@oyngtmhr)

21日目はAzure Cloud Shellです。ブラウザ上でシェルを使うことができて、Azureの中で一番好きな機能かもしれません。

概要

Azure Cloud Shellは、Webブラウザ上で利用できるシェル環境です。sshクライアントを立ち上げることなく、Webブラウザ上でAzure CLIコマンドなどを実行できます。

以下のような機能を利用できます。

・Bashシェル、PowerShellの利用
・Azure Storage経由のファイル共有
・プリインストールされた各種ツール

Bash版を実際に使いながら機能を見ていきます。

Azure Portal右上の[>_]ボタンを選択すると、画面の下半分にシェルウィンドウが現れます。
今回は[Bash(Linux)]を選択します。

初回起動時には、ストレージの作成の指示が出ます。これを設定することでCloud ShellからAzureファイル共有をマウントしてくれるのでCloud Shell環境とのファイルのアップロード、ダウンロードができるようになります。
サブスクリプションを選んで、[Create storage]を選択します。

しばらく待つと、シェルが立ち上がります。
右上の□を押すと画面を最大化できます。

いくつかコマンドを打ってみました。homeディレクトリの下にはclouddriveというディレクトリがあり、Azureファイル共有にマウントされています。

このclouddriveフォルダにファイルを作成すると、Azure PortalのFileサービスからダウンロードすることができます。逆にFileサービスにファイルをアップロードすればCloud Shellから使うことができます。

プログラミング言語、ユーティリティともメジャーなものが標準で入っています。

azure-cli 2.0.23
.Net 2.0.0
Go 1.7
Java 1.8.0_151
Node.js 6.9.4
Python 3.5.2
Docker 17.04.0-ce
mysql 14.14
sqlcmd 13.1.0007.0

主だったもののバージョンを確認した結果も載せておきます。


$ az -v
azure-cli (2.0.23)

acr (2.0.17)
acs (2.0.22)
advisor (0.1.0)
appservice (0.1.22)
backup (1.0.3)
batch (3.1.7)
batchai (0.1.3)
billing (0.1.6)
cdn (0.0.10)
cloud (2.0.10)
cognitiveservices (0.1.9)
command-modules-nspkg (2.0.1)
configure (2.0.12)
consumption (0.2.0)
container (0.1.15)
core (2.0.23)
cosmosdb (0.1.15)
dla (0.0.15)
dls (0.0.18)
eventgrid (0.1.5)
extension (0.0.6)
feedback (2.0.6)
find (0.2.7)
interactive (0.3.11)
iot (0.1.15)
keyvault (2.0.15)
lab (0.0.13)
monitor (0.0.13)
network (2.0.19)
nspkg (3.0.1)
profile (2.0.16)
rdbms (0.0.9)
redis (0.2.10)
reservations (0.1.0)
resource (2.0.19)
role (2.0.15)
servicefabric (0.0.7)
sql (2.0.17)
storage (2.0.21)
vm (2.0.20)

Python location '/opt/az/bin/python3'
Extensions directory '/home/user_name/.azure/cliextensions'

Python (Linux) 3.6.1 (default, Dec 15 2017, 17:51:12)
[GCC 4.8.4]

Legal docs and information: aka.ms/AzureCliLegal

$ dotnet --version
2.0.0

$ go version
go version go1.7 linux/amd64

$ java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-0ubuntu0.16.04.2-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)

$ node -v
v6.9.4

$ python --version
Python 3.5.2

$ docker -v
Docker version 17.04.0-ce, build 4845c56

$ mysql --version
mysql Ver 14.14 Distrib 5.7.20, for Linux (x86_64) using EditLine wrapper

$ sqlcmd -?
Microsoft (R) SQL Server Command Line Tool
Version 13.1.0007.0 Linux
Copyright (c) 2012 Microsoft. All rights reserved.

ツールのリストは https://docs.microsoft.com/ja-jp/azure/cloud-shell/features に詳細があります。

料金

・Cloud Shellの利用には料金はかかりません。

・Azure Storageに作成した共有領域にのみ課金されます。

まとめ

azコマンドなどをインストールしなくてもすぐに使えるのでとても便利です。プログラミング言語、Git、Docker、DB接続クライアントなど一通りの機能をWebブラウザ上から使えるのも、ちょっとした確認をすぐにできてありがたいです。

この記事を書いた人

azure-recipe-user