はじめに
Azure Container Instances を Azure Powershell で操作しようとコマンド一覧を確認していたが、次の通り Get(参照), New(作成), Remove(削除)などしか用意されていない。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
PS Azure:\> gcm *Az*ContainerGroup*
CommandType Name Version Source
----------- ---- ------- ------
Alias Get-AzureRmContainerGroup
Alias New-AzureRmContainerGroup
Alias Remove-AzureRmContainerGroup
Cmdlet Get-AzContainerGroup 1.0.1 Az.ContainerInstance
Cmdlet New-AzContainerGroup 1.0.1 Az.ContainerInstance
Cmdlet Remove-AzContainerGroup 1.0.1 Az.ContainerInstance
Azure:/
PS Azure:\> gcm *Az*ContainerInstance*
CommandType Name Version Source
----------- ---- ------- ------
Alias Get-AzureRmContainerInstanceLog
Cmdlet Get-AzContainerInstanceLog 1.0.1 Az.ContainerInstance
|
REST API では、start、stop、restart も用意されているけど、Azure Powershell のコマンドとしては提供されていないみたい。
どうしようか工夫した結果、Invoke-AzResourceAction で Azure Powershell コマンドからの操作が可能だった。
コマンド例
Container Instance の起動
1
|
Invoke-AzResourceAction -ResourceGroupName <YourResourceGroup> -ResourceName <YourACI> -Action Start -ResourceType Microsoft.ContainerInstance/containerGroups -Force
|
Container Instance の停止
1
|
Invoke-AzResourceAction -ResourceGroupName <YourResourceGroup> -ResourceName <YourACI> -Action Stop -ResourceType Microsoft.ContainerInstance/containerGroups -Force
|
Container Instance の再起動
1
|
Invoke-AzResourceAction -ResourceGroupName <YourResourceGroup> -ResourceName <YourACI> -Action Restart -ResourceType Microsoft.ContainerInstance/containerGroups -Force
|
おわり
Invoke-AzResourceAction は便利。これで Automation 経由で ACI を Restart できる。