ROMANCE DAWN for the new world

Microsoft Azure を中心とした技術情報を書いています。

Azure Lab Services を使って複数の仮想マシンを構築する

ハンズオンなどのトレーニングにおいて、受講者向けに複数の仮想マシンを Azure 上に構築する方法をまとめておきます。
Azure Portal からポチポチと1台ずつ作るのは厳しいため、選択肢としては次の2つの方法があると思います。

  • Azure Resource Manager テンプレート
  • Azure Lab Services

この記事では、Azure Lab Services を使う方法について記載します。
Azure Resource Manager テンプレート を使う方法については、こちらの記事を参照してください。
gooner.hateblo.jp

Azure Lab Services とは?

Azure Lab Services は、ハンズオンなどのトレーニング向けに Azure の仮想マシンを展開できるサービスで、受講者は仮想マシンに RDP 接続して使うことができます。
受講者1人につき1台の仮想マシンだけでなく、複数のサーバーで構成された環境を展開することもできます。
昨年の2月末に GA しており、東日本と西日本のどちらのリージョンでも使えます。

Lab Account を作成する

まず、ハンズオンを開催する講師側で必要な作業を実施します。
Azure Portal から、Azure Lab Services を作成します。リソース名やリージョンなど基本的な情報だけを入力すればOKです。
その他の項目は必須ではありませんが、今回はハンズオン向けの仮想マシンイメージを作成済みの想定なので、Shared Image Gallery を指定しました。

f:id:TonyTonyKun:20200121142111p:plain

Classroom Lab を作成する

Lab Account が作成されたら、Azure Portal のリンクをクリックすると、Azure Lab Services Portal に移動します。左上の「空色 Lab Services」というタイトルが微妙な感じですが、気にせず進めます。

f:id:TonyTonyKun:20200121142127p:plain

ハンズオン向けの新しいラボを作成します。※上記の画面は、すでに2つ作成済み。
まずは、必要な仮想マシンサイズとイメージを選択します。Shared Image Gallery を指定して Lab Account を作成していると、ここでカスタムイメージを選択できます。

f:id:TonyTonyKun:20200121142139p:plain

次に、仮想マシンのユーザー名とパスワードを設定します。仮想マシンを使う受講者にパスワードを変更させることもできます。

f:id:TonyTonyKun:20200121142152p:plain

最後にポリシーを設定しますが、後で変更することも可能です。クォータは、ラボに対してスケジュールされた時間外にユーザーが利用できる時間です。自動シャットダウンなども設定できます。

f:id:TonyTonyKun:20200121142203p:plain

完了ボタンを押すと、ラボで利用する仮想マシンのテンプレートが作成されるのですが、上記のメッセージにもあるように割と時間がかかります。

f:id:TonyTonyKun:20200121142215p:plain

20分ほど待つと、仮想マシンのテンプレート作成が完了します。

仮想マシンを展開する

仮想マシンのテンプレートが作成できたら、受講者が利用する台数分を公開します。

f:id:TonyTonyKun:20200121142227p:plain

これもメッセージにあるように、割と時間がかかります。40分ほどで3台の仮想マシンを公開できました。仮想マシンプールで、3台すべてが受講者に未割当の仮想マシンであることを確認できます。

f:id:TonyTonyKun:20200121142240p:plain

公開した仮想マシンを受講者に払い出したいので、ユーザーの追加ボタンからメールアドレスを登録します。メールアドレスは、手入力もしくは CSV ファイルで登録できます。

f:id:TonyTonyKun:20200121142252p:plain

ユーザーを登録できたら、全員を招待ボタン から受講者へ招待メールを送信します。これでハンズオンを開催する講師側で必要な作業は完了です。

受講者が仮想マシンを利用する

ここからは、ハンズオンに参加する受講者側で必要な作業です。ハンズオンのラボへの参加を招待するメールが届いているはずです。

f:id:TonyTonyKun:20200121142315p:plain

ラボへの登録のリンクをクリックして、Azure Lab Services Portal にサインインします。サインインするには、Microsoft アカウントが必要となります。

f:id:TonyTonyKun:20200121142326p:plain

受講者は、自分に割り当てられた仮想マシンが表示されるので、赤印をクリックして RDP ファイルをダウンロードすることができます。

Azure Lab Services の課金体系

Azure Lab Services の課金対象となるのは、アクティブな仮想マシンのみです。シャットダウンされているインスタンスは課金対象外ですし、通常の仮想マシンのように、コンピューティングやストレージやネットワークへの課金がありません。
ハンズオンで使った分だけ、シンプルかつリーズナブルに利用できるサービスです。詳細は、公式サイトで確認してください。

まとめ

Azure Lab Services を使って、複数の仮想マシンを Azure 上に構築してみました。
ARM テンプレートは仮想マシンを作るだけですが、Azure Lab Services はハンズオンなどのトレーニング向けに特化しているメリットがあります。

  • 受講者向けにメールで仮想マシンに招待できる
  • 講師側で仮想マシンを起動できる時間帯や自動シャットダウンを制御できる
  • コスト計算がシンプルで通常の仮想マシンよりも安い

しかし、仮想マシンのテンプレート作成や展開に時間がかかりすぎるので、今後の改善を期待したいです。