Azure DevTest Labs とは、管理者により許可された範囲内で、ユーザーによる仮想マシンの作成/削除が行えるセルフサービスVDI環境を構築できるサービスです。
Azure Portalにて仮想マシンを大量に作成し、RBACを駆使すればできるのですが、Azure DevTest Labs を使えば、そのような環境を簡単に構築できます。
Azure DevTest Labs 自体は無料です。
Azure DevTest Labs のしくみ
①ラボユーザーはAzureAD認証を行い、Azure Portalにサインインします。
②RBACによりDevTest Labsサービスにのみアクセスできます。
③DevTest Labsにてラボ所有者が作成した”要求可能な仮想マシン”から、利用したいVMを選択し割り当て”要求”を行います。
④割り当てられた仮想マシンに対してSSH/RDP接続(ローカル/ドメイン認証)を行います。
※”要求可能な仮想マシン”は全ラボユーザーから要求可能です。制限はできません。
※ラボユーザーから要求されたタイミングでVMは起動されます。
※ラボユーザーには[DevTest Labs ユーザー]を割り当てます。4000userが上限
ネットワーク構成
DevTest Labsでは、下記3パターンの配置が可能です。
①プライベートIPのみを持った仮想マシン
②パブリックIPを持った仮想マシン
③パブリックロードバランサー配下の仮想マシン
※通常のVMと同様なので、オンプレミスからの接続やドメイン参加も可能
ラボ所有者ができること
・ラボユーザーの追加/削除
・ラボユーザーが使用する仮想マシンの作成
・ラボユーザーへの仮想マシン数の割り当て上限設定
・ラボユーザーへのメッセージ送信
・MarketplaceイメージやVMサイズの制限
・数式(VM設定テンプレート)やカスタムイメージの作成
・Azure Compute Galleryの接続
・作成できるVMの制限を指定
・時間指定による自動起動/停止の設定
・成果物(アーティファクト)やリポジトリの接続
・コスト管理
ラボユーザーができること
・クラウドID/ハイブリッドIDが必要
・仮想マシンの要求と解放
・仮想マシンの起動/停止/再起動
・許可された範囲内での仮想マシン作成&サイズ変更
・数式(VM設定テンプレート)やカスタムイメージの作成
・仮想マシンの再配置(再デプロイ)
・時間指定による自動起動/停止の設定
全体の流れ
Step1:ラボを作成する
Step2:仮想マシンを作成する
Step3:ラボユーザーの割り当て
Step1:ラボを作成する
[+リソースの作成]ー[検索:DevTestLabs]ー作成を選択
サブスクリプション:Azureサービスの提供範囲
リソースグループ:グループ名(複数のリソースを1つにグループ化する機能)
ラボ名:表示名
場所:デプロイするAzureのリージョン
パブリックな環境:※オン=パブリックなリポジトリへのアクセスを許可する
有効:※オン=自動シャットダウンを有効化
スケジュールされたシャットダウン:シャットダウンする時刻を指定
タイムゾーン:※日本の場合、UTC+9
自動シャットダウンの前に通知を送信しますか?:
Webhook URL:※TLS1.2のサポートが必須
電子メールアドレス:※複数アドレスはセミコロンで区切る
Virtual Network:※既存のNWを指定可能
サブネット:※既存のサブネットを指定可能
ラボリソースの分離:※ストレージアカウント、キーコンテナーのFWが[特定の仮想ネットワークとIPアドレスからのパブリックアクセスを許可する]に設定されるだけ
下記リソースが作成されます。
ストレージアカウント:選択した成果物(アーティファクト)のスクリプトを保存
キーコンテナー:仮想マシンのパスワードを保存
Step2:仮想マシンを作成する
作成したラボを選択ー[+追加]
OSイメージを選択 ※選択できるOSの編集が可能
仮想マシン名:ホスト名
ユーザー名:ローカル管理者アカウント
保存されているシークレットを使用する:※Key Vaultに保存されたVM用パスワードを使う
パスワード:ローカル管理者のパスワード
仮想マシンサイズ:目的にあったサイズを選択
OSディスクの種類:[Standard HDD / Standard SSD]
成果物:リポジトリにあるアプリケーションをインストールできる
VM作成時に指定したアプリケーションをインストールできます。
※[Join Active Directory (AD) domain]でドメイン参加も可能
仮想ネットワーク:※VMを展開する仮想ネットワークを指定
サブネットセレクター:※VMを展開するサブネットを指定
IPアドレス:
ーパブリック:仮想マシン1台につき1つのPIPを作成
ープライベート:PIP無しでVMを作成
ー共有:パブリックロードバランサーを作成し、その配下にVMを作成
仮想マシンの有効期限:※期限になるとVMを削除
このマシンを要求可能にする:
ーはい:”要求可能な仮想マシン”として作成。※ラボユーザーに配信したい場合
ーいいえ:”自身の仮想マシン”として作成。※[解放]で”要求可能な仮想マシン”に戻せる
インスタンス数:作成する台数。1~100台
作成するごとに、自動的にリソースグループが作成される
おまけ
DevTest Labsでは、カスタムイメージと数式(VM設定テンプレート)を作成する事ができます。あらかじめ必要なアプリケーションをインストールしたカスタムイメージを作成し、そのOSを元に数式と組み合わせて、いつもの仮想マシンを簡単に作成する事ができます。
カスタムイメージの作成
※DevTest Labsで作成した仮想マシンに必要なアプリケーションをインストールします。
仮想マシンを選択ー[カスタムイメージの作成]を選択
数式の作成
[構成とポリシー]ー[数式(再利用可能なベース)]ー[+追加]を選択
先程作成した、カスタムイメージを選択
仮想マシン作成時と同じ要領で進めていく
数式(VM設定テンプレート)の完成
通常通り、仮想マシンを作成しようとすると「カスタムイメージ+数式」が選択できる。
先程、設定した内容が入力済みなので、作成ボタンを押すだけなのである。
Step3:ラボユーザーの割り当て
[構成とポリシー]ー[アクセス制御]ー[+追加]ー[ロールの割り当ての追加]を選択
[DevTest Labs ユーザー]を選択
ラボユーザーとなるアカウントを選択 ※グループはRBAC1カウント
これだけで完了です!
確認してみましょう!
ラボユーザーでAzure Portalにサインイン
要求可能な仮想マシンから選択
[マシンの要求]を選択すると同時にVMが起動します。
あとは、いつも通りのSSH/RDP接続となります。