概要
「Infrastructer as Code」ということで、Terraform を用いて Azure環境上の DevTest Labs にある Windows10Pro を作成した後、Azure CLI から Artifacts を利用して アプリケーションをインストールする方法の説明となります。
ローカル環境
- macOS Monterey 12.1
- python 3.8.12
- Azure CLI 2.33.0
- terraform v1.0.11
前提条件
- Azure環境がすでに用意されていること(テナント/サブスクリプション)
- ローカル環境に「azure cli」がインストールされていること
- ローカル環境に「terraform」環境が構成されていること
- TerraformでAzure上に環境構築するためのサービスプリンシパルが作成されており、Terraform のためのローカル環境変数が定義されていること
事前実施事項
この記事の定義ファイルを利用して terraform apply することにより、Azure上に Windows10 Pro の VM を作成していること
- リソースグループ名:rg_ituru_dt02
- DevTest Labs 名:dt_ituru_lab02
- 仮想マシン名:vm-ituru-vsc02
Windows10 Pro への アプリのインストール
仮想マシンの起動
$ az lab vm start --lab-name dt_ituru_lab02 --resource-group rg_ituru_dt02 --name vm-ituru-vsc02
Artifactsの適応
導入するアプリケーションの定義します。 Artifacts の public repo を利用します。
[
{
"artifactId": "/artifactSources/public repo/artifacts/windows-git",
"parameters": []
},
{
"artifactId": "/artifactSources/public repo/artifacts/windows-vscode64",
"parameters": []
}
]
仮想マシンへのArtifactsの適応
$ az lab vm apply-artifacts --lab-name dt_ituru_lab02 --resource-group rg_ituru_dt02 --name vm-ituru-vsc02 --artifacts '@artifacts.json'
仮想マシンへ接続しての確認
RDP接続
仮想マシンへの RDP接続については、この記事 を参考にして実施ください。
接続(ログイン)後の確認
コンソール(PowerShell)を立ち上げ、アプリケーションがインストールされていることを確認します。
PS C:\Users\adminuser> Get-ItemProperty HKLM:Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate | Format-Table -AutoSize
DisplayName DisplayVersion Publisher InstallDate
----------- -------------- --------- -----------
Git 2.35.1.2 The Git Development Community 20220217
Microsoft Visual Studio Code 1.64.2 Microsoft Corporation 20220217
Artifactsでインストールされたファイルのありかは以下となります
## VScode
Directory: C:\Packages\Plugins\Microsoft.Compute.CustomScriptExtension\1.10.12\Downloads\2\PublicRepo\master\8d2ed1d40ceea3d4ef64bf085ceceb83d1be0002\Artifacts
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2/17/2022 4:21 PM windows-vscode64
## Git
Directory: C:\Packages\Plugins\Microsoft.Compute.CustomScriptExtension\1.10.12\Downloads\1\PublicRepo\master\8d2ed1d40ceea3d4ef64bf085ceceb83d1be0002\Artifacts
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2/17/2022 4:18 PM windows-git
まとめ
これで、Terraform でサクッと Azure環境上に作成した DevTest Labs にある Windows10Pro に対し、Azure CLI から Artifacts を利用して アプリケーションをインストールする方法を確認できました。 Artifacts 部分も含め、すべて Terraform で実施するのはどうすればよいのでしょう、、、、、、