2017-01-05 6 views
0

は、私はこのPowerShellを使用して、最新のUbuntu 14.04の画像を見つけることができます。 Azure Resource Managerを使用して最新のUbuntu 14.04 LTSイメージを選択するにはどうすればよいですか?古典Azureの仮想マシンを作成する場合

Get-AzureVMImage | where { $_.ImageFamily -eq "Ubuntu Server 14.04 LTS" } | sort PublishedDate -Descending | select -First 1 

は現在、これは私に最適です14.04.5 LTS-を与えます。

Resource ManagerのPowerShellコマンドレットを使用して同じことを行うにはどうすればよいですか? ?LTSの$が、私は好きではない - 私は私が最後^ 14.04をgrepすることができますね

Skus    Offer  PublisherName Location Id 
----    -----  ------------- -------- -- 
... 
12.10    UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/12.10 
14.04-beta  UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/14.04-beta 
14.04.0-LTS  UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/14.04.0-LTS 
14.04.1-LTS  UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/14.04.1-LTS 
14.04.2-LTS  UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/14.04.2-LTS 
14.04.3-LTS  UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/14.04.3-LTS 
14.04.4-LTS  UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/14.04.4-LTS 
14.04.5-DAILY-LTS UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/14.04.5-DAILY-LTS 
14.04.5-LTS  UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/14.04.5-LTS 
14.10    UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/14.10 
14.10-beta  UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/14.10-beta 
14.10-DAILY  UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/14.10-DAILY 
15.04    UbuntuServer Canonical  eastus /Subscriptions/3523a95a-af89-4e37-98f5-bdbd56dce1ba/Providers/Microsoft.Compute/Locations/eastus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/15.04 
... 

を返し

Get-AzureRMVMImageSku -Location "East US" -Publisher "Canonical" -Offer "UbuntuServer" 

(\ D +。):私は働くことができる最も近いです同じままの命名規則に頼っています。古典のImageFamilyとPublishedDateはどこにありますか? ARMモジュールで

答えて

1

は、画像とはPublishedDateがない、我々は、最新のリストを表示するためにSKUを使用することができます。

Get-AzureRmVMImageSku -Location "East Us" -PublisherName "canonical" -Offer "UbuntuServer" | ?{($_.skus -like '14.04.*-lts') -and ($_.skus -notlike '14.04.*-da*')} | Sort-Object -Descending skus | select -First 1 

enter image description here

$a = (Get-AzureRmVMImageSku -Location "East Us" -PublisherName "canonical" -Offer "UbuntuServer" | ?{($_.skus -like '14.04.*-lts') -and ($_.skus -notlike '14.04.*-da*')} | Sort-Object skus).skus 
$b = ([int[]](($a -split '-' -split 'LTS' -split '14.04.') | sort -Descending)) | select -Unique | select -First 1 
$c = '14.04.'+$b+'-LTS' 
Get-AzureRmVMImageSku -Location "East Us" -PublisherName "canonical" -Offer "UbuntuServer" | ?{($_.skus -eq $c)} 

enter image description here

更新:
あなたは正しいです、命名計画に頼っているのはbaですアイデア。私はAzureのARMモジュールでそれを見つけることができますGet-AzureRmVMImage |ソートオブジェクト - 縮小 - プロパティPublishedDate

$ossku = "16.04-beta" 
Get-AzureRmVMImage -Location "East Us" -PublisherName 'canonical' -Offer 'UbuntuServer' -Skus $osSKU | Sort-Object -Descending -Property PublishedDate 
Version   FilterExpression Skus  Offer  PublisherName Location Id 
-------   ---------------- ----  -----  ------------- -------- -- 
16.04.201603220     16.04-beta UbuntuServer canonical  eastus /Subscriptions/53847bbb-222b-49c3-9488-0361e29a7b15/Providers/Microsoft.Compute/Locations/eastus/Publishers/canonical/ArtifactTypes/VMImage/Of... 
16.04.201602231     16.04-beta UbuntuServer canonical  eastus /Subscriptions/53847bbb-222b-49c3-9488-0361e29a7b15/Providers/Microsoft.Compute/Locations/eastus/Publishers/canonical/ArtifactTypes/VMImage/Of... 
+0

このスニペットをありがとう。命名規則に頼るよりも良い方法はありますか?例えばSky 14.04.10-LTSは、14.04.1-LTSと14.0.2-LTSの間でソートされますが、これは間違っています。 –

+0

ありがとうございます。命名方式が一貫している限り、動作します。 –

+0

残念ながら、これは最新のビルドが "16.04-LTS"の下にあり、古いビルドが "16.04.0-LTS"の下にあるUbuntu 16.04では動作しません。これは、命名計画に頼っていることが悪い考えであるという私の疑念を裏付けるものです。 –

関連する問題