Skip to content

Commit 0786dc9

Browse files
authored
Update trusted-launch-portal.md
1 parent d0ccc5f commit 0786dc9

File tree

1 file changed

+58
-62
lines changed

1 file changed

+58
-62
lines changed

articles/virtual-machines/trusted-launch-portal.md

Lines changed: 58 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -158,12 +158,12 @@ You can deploy trusted launch VMs using a quickstart template:
158158

159159
[Azure trusted launch virtual machines](trusted-launch.md) supports the creation and sharing of custom images using Azure Compute Gallery. There are two types of images that you can create, based on the security types of the image:
160160

161-
- [Trusted Launch VM (`Trustedlaunch`) images](#trusted-launch-vm-images) are images where the source already has [VM Guest state information](trustedlaunch#what-is-vm-guest-state-vmgs).
162-
- [Trusted launch VM supported (`Trustedlaunchsupported`) images](#trusted-launch-vm-supported-images) are images where the source doesn't have VM Guest state information.
161+
- [Trusted launch VM (`TrustedLaunch`) images](#trusted-launch-vm-images) are images where the source already has [VM Guest state information](trusted-launch.md#what-is-vm-guest-state-vmgs).
162+
- [Trusted launch VM Supported (`TrustedLaunchSupported`) images](#trusted-launch-vm-supported-images) are images where the source doesn't have VM Guest state information.
163163

164-
### Trusted Launch VM Images
164+
### Trusted launch VM Images
165165

166-
For the following image sources, the security type on the image definition should be set to `Trustedlaunch` as the image source already has [VM Guest state information](trustedlaunch#what-is-vm-guest-state-vmgs):
166+
For the following image sources, the security type on the image definition should be set to `TrustedLaunch` as the image source already has [VM Guest state information](trusted-launch.md#what-is-vm-guest-state-vmgs):
167167
- Trusted launch VM capture
168168
- Managed OS disk
169169
- Managed OS disk snapshot
@@ -188,7 +188,8 @@ The resulting image version can be used only to create Azure Trusted launch VMs.
188188
14. The image and the security type are already populated based on the selected image version. The **Secure Boot** and **vTPM** checkboxes are enabled by default.
189189
15. Fill in the **Administrator account** information and then **Inbound port rules**.
190190
16. At the bottom of the page, select **Review + Create**
191-
17. On the **Create a virtual machine** page, you can see the details about the VM you are about to deploy. Once validation shows as passed, select **Create**.
191+
1. On the validation page, review the details of the VM.
192+
1. After the validation succeeds, select **Create** to finish creating the VM.
192193

193194
In case you want to use either a managed disk or a managed disk snapshot as a source of the image version (instead of a trusted launch VM), then use the following steps
194195

@@ -204,10 +205,10 @@ In case you want to use either a managed disk or a managed disk snapshot as a so
204205
10. The **Encryption** tab can also be used to provide SSE encryption related information, if required.
205206
11. Select **Create** in the **Review + create** tab to create the image
206207
12. Once the image version is successfully created, select the **+ Create VM** to land on the Create a virtual machine page.
207-
13. Please follow steps 12 to 17 as mentioned earlier to create a trusted launch VM using this image version
208+
13. Follow steps 12 to 18 as mentioned earlier to create a trusted launch VM using this image version
208209

209210

210-
### [CLI](#tab/cli2)
211+
#### [CLI](#tab/cli2)
211212

212213
Make sure you are running the latest version of Azure CLI
213214

@@ -239,21 +240,22 @@ az sig image-version create --resource-group MyResourceGroup \
239240

240241
In case a managed disk or a managed disk snapshot needs to be used as the image source for the image version, replace the --managed-image in the above command with --os-snapshot and provide the disk or the snapshot resource name
241242

242-
Create a Trusted Launch VM from the above image version
243+
Create a Trusted launch VM from the above image version
243244

244245
```azurecli-interactive
245246
adminUsername=linuxvm
246247
az vm create --resource-group MyResourceGroup \
247248
--name myTrustedLaunchVM \
248249
--image "/subscriptions/00000000-0000-0000-0000-00000000xxxx/resourceGroups/MyResourceGroup/providers/Microsoft.Compute/galleries/MyGallery/images/MyImageDef" \
250+
--size Standard_D2s_v5 \
249251
--security-type TrustedLaunch \
250252
--enable-secure-boot true \
251253
--enable-vtpm true \
252254
--admin-username $adminUsername \
253255
--generate-ssh-keys
254256
```
255257

256-
### [PowerShell](#tab/powershell2)
258+
#### [PowerShell](#tab/powershell2)
257259

258260
Create an image definition with `TrustedLaunch` security type
259261

@@ -282,15 +284,15 @@ $galleryImageVersionName = "1.0.0"
282284
$sourceImageId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myVMRG/providers/Microsoft.Compute/virtualMachines/myVM"
283285
New-AzGalleryImageVersion -ResourceGroupName $rgName -GalleryName $galleryName -GalleryImageDefinitionName $galleryImageDefinitionName -Name $galleryImageVersionName -Location $location -SourceImageId $sourceImageId
284286
```
285-
Create a Trusted Launch VM from the above image version
287+
Create a Trusted launch VM from the above image version
286288

287289
```azurepowershell-interactive
288290
$rgName = "MyResourceGroup"
289291
$galleryName = "MyGallery"
290292
$galleryImageDefinitionName = "MyImageDef"
291293
$location = "eastus"
292294
$vmName = "myVMfromImage"
293-
$vmSize = "Standard_D2s_v3"
295+
$vmSize = "Standard_D2s_v5"
294296
$imageDefinition = Get-AzGalleryImageDefinition `
295297
-GalleryName $galleryName `
296298
-ResourceGroupName $rgName `
@@ -350,58 +352,52 @@ New-AzVM `
350352
```
351353
---
352354

353-
### Trusted Launch VM Supported Images
355+
### Trusted launch VM Supported Images
354356

355-
For the following image sources, the security type on the image definition should be set to `Trustedlaunchsupported` as the image source does not have VM Guest state information:
357+
For the following image sources, the security type on the image definition should be set to `TrustedLaunchsupported` as the image source does not have VM Guest state information:
356358
- Gen2 OS Disk VHD
357359
- Gen2 Managed Image
358360
- Gen2 Gallery Image Version
359361

360362
The resulting image version can be used to create either Azure Gen2 VMs or Trusted launch VMs.
361363

362-
These images can be shared to everyone through [Azure Compute Gallery - Community Gallery](https://learn.microsoft.com/azure/virtual-machines/azure-compute-gallery#community-gallery) and to specific subscriptions or tenants through [Azure Compute Gallery - Direct Shared Gallery](https://learn.microsoft.com/azure/virtual-machines/azure-compute-gallery#shared-directly-to-a-tenant-or-subscription)
364+
These images can be shared with specific subscriptions or tenants through [Azure Compute Gallery - Direct Shared Gallery](../virtual-machines/azure-compute-gallery.md#shared-directly-to-a-tenant-or-subscription) and with all Azure users using [Azure Compute Gallery - Community Gallery](../virtual-machines/azure-compute-gallery.md#community-gallery)
363365

364366
> [!NOTE]
365-
> The OS disk VHD, Managed Image or Gallery Image Version should be created from an image that is compatible with Trusted launch VMs.
366-
367-
#### [Portal](#tab/portal2)
368-
369-
1. Sign in to the Azure [portal](https://portal.azure.com).
370-
2. To create an Azure Compute Gallery Image from a VM, open an existing Trusted launch VM and select **Capture**.
371-
3. In the Create an Image page that follows, allow the image to be shared to the gallery as a VM image version. Creation of Managed Images is not supported for Trusted Launch VMs.
372-
4. Create a new target Azure Compute Gallery or select an existing gallery.
373-
5. Select the **Operating system state** as either **Generalized** or **Specialized**. If you want to create a generalized image, ensure that you [generalize the VM to remove machine specific information](generalize.md) before selecting this option. If Bitlocker based encryption is enabled on your Trusted launch Windows VM, you may not be able to generalize the same.
374-
6. Create a new image definition by providing a name, publisher, offer and SKU details. The **Security Type** of the image definition should already be set to **Trusted launch**.
375-
7. Provide a version number for the image version.
376-
8. Modify replication options if required.
377-
9. At the bottom of the **Create an Image** page, select **Review + Create** and when validation shows as passed, select **Create**.
378-
10. Once the image version is created, go the image version directly. Alternatively, you can navigate to the required image version through the image definition.
379-
11. On the **VM image version** page, select the **+ Create VM** to land on the Create a virtual machine page.
367+
> The OS disk VHD, Managed Image or Gallery Image Version should be created from a Gen2 image source that is compatible with Trusted launch VMs.
368+
369+
#### [Portal](#tab/portal3)
370+
371+
1. Sign in to the [Azure portal](https://portal.azure.com).
372+
1. Search for and select **VM image versions** in the search bar
373+
1. On the **VM image versions** page, select **Create**.
374+
1. On the **Create VM image version** page, on the **Basics** tab:
375+
1. Select the Azure subscription.
376+
1. Select an existing resource group or create a new resource group.
377+
1. Select the Azure region.
378+
1. Enter an image version number.
379+
1. For **Source**, select either **Storage Blobs (VHD)** or **Managed Image** or another **VM Image Version**
380+
1. If you selected **Storage Blobs (VHD)**, enter an OS disk VHD (without the VM Guest state). Make sure to use a Gen 2 VHD.
381+
1. If you selected **Managed Image**, select an existing managed image of a Gen 2 VM.
382+
1. If you selected **VM Image Version**, select an existing Gallery Image Version of a Gen2 VM.
383+
1. For **Target Azure compute gallery**, select or create a gallery to share the image.
384+
1. For **Operating system state**, select either **Generalized** or **Specialized** depending on your use case. If you're using a managed image as the source, always select **Generalized**. If you're using a storage blob (VHD) and want to select **Generalized**, follow the steps to [generalize a Linux VHD](../virtual-machines/linux/create-upload-generic.md) or [generalize a Windows VHD](../virtual-machines/windows/upload-generalized-managed.md) before you continue. If you're using an existing VM Image Version, select either **Generalized** or **Specialized** based on what is used in the source VM image definition.
385+
1. For **Target VM Image Definition**, select **Create new**.
386+
1. In the **Create a VM image definition** pane, enter a name for the definition. Make sure the security type is set to **Trustedlaunch Supported**. Enter publisher, offer, and SKU information. Then, select **Ok**.
387+
1. On the **Replication** tab, enter the replica count and target regions for image replication, if required.
388+
1. On the **Encryption** tab, enter SSE encryption-related information, if required.
389+
1. Select **Review + Create**.
390+
1. After the configuration is successfully validated, select **Create** to finish creating the image.
391+
1. After the image version is created, select **Create VM**.
380392
12. In the Create a virtual machine page, under **Resource group**, select **Create new** and type a name for your resource group or select an existing resource group from the dropdown.
381393
13. Under **Instance details**, type a name for the virtual machine name and choose a region that supports [trusted launch](trusted-launch.md#limitations).
382-
14. The image and the security type are already populated based on the selected image version. The **Secure Boot** and **vTPM** checkboxes are enabled by default.
394+
14. Select **Trusted launch virtual machines** as the security type. The **Secure Boot** and **vTPM** checkboxes are enabled by default.
383395
15. Fill in the **Administrator account** information and then **Inbound port rules**.
384-
16. At the bottom of the page, select **Review + Create**
385-
17. On the **Create a virtual machine** page, you can see the details about the VM you are about to deploy. Once validation shows as passed, select **Create**.
386-
387-
In case you want to use either a managed disk or a managed disk snapshot as a source of the image version (instead of a trusted launch VM), then use the following steps
388-
389-
1. Sign in to the [portal](https://portal.azure.com)
390-
2. Search for **VM Image Versions** and select **Create**
391-
3. Provide the subscription, resource group, region and image version number
392-
4. Select the source as **Disks and/or Snapshots**
393-
5. Select the OS disk as a managed disk or a managed disk snapshot from the dropdown list
394-
6. Select a **Target Azure Compute Gallery** to create and share the image. If no gallery exists, create a new gallery.
395-
7. Select the **Operating system state** as either **Generalized** or **Specialized**. If you want to create a generalized image, ensure that you generalize the disk or snapshot to remove machine specific information.
396-
8. For the **Target VM Image Definition** select Create new. In the window that opens, select an image definition name and ensure that the **Security type** is set to **Trusted launch**. Provide the publisher, offer and SKU information and select **OK**.
397-
9. The **Replication** tab can be used to set the replica count and target regions for image replication, if required.
398-
10. The **Encryption** tab can also be used to provide SSE encryption related information, if required.
399-
11. Select **Create** in the **Review + create** tab to create the image
400-
12. Once the image version is successfully created, select the **+ Create VM** to land on the Create a virtual machine page.
401-
13. Please follow steps 12 to 17 as mentioned earlier to create a trusted launch VM using this image version
396+
1. On the validation page, review the details of the VM.
397+
1. After the validation succeeds, select **Create** to finish creating the VM.
402398

403399

404-
### [CLI](#tab/cli2)
400+
#### [CLI](#tab/cli3)
405401

406402
Make sure you are running the latest version of Azure CLI
407403

@@ -411,43 +407,43 @@ Sign in to Azure using `az login`.
411407
az login
412408
```
413409

414-
Create an image definition with `TrustedLaunch` security type
410+
Create an image definition with `TrustedLaunchSupported` security type
415411

416412
```azurecli-interactive
417413
az sig image-definition create --resource-group MyResourceGroup --location eastus \
418414
--gallery-name MyGallery --gallery-image-definition MyImageDef \
419415
--publisher TrustedLaunchPublisher --offer TrustedLaunchOffer --sku TrustedLaunchSku \
420416
--os-type Linux --os-state Generalized \
421417
--hyper-v-generation V2 \
422-
--features SecurityType=TrustedLaunch
418+
--features SecurityType=TrustedLaunchSupported
423419
```
424420

425-
To create an image version, we can capture an existing Linux based Trusted launch VM. [Generalize the Trusted launch VM](generalize.md) before creating the image version.
421+
Use an OS disk VHD to create an image version. Ensure that the Linux VHD was generalized before uploading to an Azure storage account blob using steps outlined [here](../virtual-machines/linux/create-upload-generic.md)
426422

427423
```azurecli-interactive
428424
az sig image-version create --resource-group MyResourceGroup \
429425
--gallery-name MyGallery --gallery-image-definition MyImageDef \
430426
--gallery-image-version 1.0.0 \
431-
--managed-image /subscriptions/00000000-0000-0000-0000-00000000xxxx/resourceGroups/MyResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM
427+
--os-vhd-storage-account /subscriptions/00000000-0000-0000-0000-00000000xxxx/resourceGroups/imageGroups/providers/Microsoft.Storage/storageAccounts/mystorageaccount \
428+
--os-vhd-uri https://mystorageaccount.blob.core.windows.net/container/path_to_vhd_file
432429
```
433430

434-
In case a managed disk or a managed disk snapshot needs to be used as the image source for the image version, replace the --managed-image in the above command with --os-snapshot and provide the disk or the snapshot resource name
435-
436-
Create a Trusted Launch VM from the above image version
431+
Create a Trusted launch VM from the above image version
437432

438433
```azurecli-interactive
439434
adminUsername=linuxvm
440435
az vm create --resource-group MyResourceGroup \
441436
--name myTrustedLaunchVM \
442437
--image "/subscriptions/00000000-0000-0000-0000-00000000xxxx/resourceGroups/MyResourceGroup/providers/Microsoft.Compute/galleries/MyGallery/images/MyImageDef" \
438+
--size Standard_D2s_v5 \
443439
--security-type TrustedLaunch \
444440
--enable-secure-boot true \
445441
--enable-vtpm true \
446442
--admin-username $adminUsername \
447443
--generate-ssh-keys
448444
```
449445

450-
### [PowerShell](#tab/powershell2)
446+
#### [PowerShell](#tab/powershell3)
451447

452448
Create an image definition with `TrustedLaunch` security type
453449

@@ -460,31 +456,31 @@ $publisherName = "TrustedlaunchPublisher"
460456
$offerName = "TrustedlaunchOffer"
461457
$skuName = "TrustedlaunchSku"
462458
$description = "My gallery"
463-
$SecurityType = @{Name='SecurityType';Value='TrustedLaunch'}
459+
$SecurityType = @{Name='SecurityType';Value='TrustedLaunchSupported'}
464460
$features = @($SecurityType)
465461
New-AzGalleryImageDefinition -ResourceGroupName $rgName -GalleryName $galleryName -Name $galleryImageDefinitionName -Location $location -Publisher $publisherName -Offer $offerName -Sku $skuName -HyperVGeneration "V2" -OsState "Generalized" -OsType "Windows" -Description $description -Feature $features
466462
```
467463

468-
To create an image version, we can capture an existing Windows based Trusted launch VM. [Generalize the Trusted launch VM](generalize.md) before creating the image version.
464+
To create an image version, we can use an existing Gen2 Gallery Image Version which was generalized during creation.
469465

470466
```azurepowershell-interactive
471467
$rgName = "MyResourceGroup"
472468
$galleryName = "MyGallery"
473469
$galleryImageDefinitionName = "MyImageDef"
474470
$location = "eastus"
475471
$galleryImageVersionName = "1.0.0"
476-
$sourceImageId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myVMRG/providers/Microsoft.Compute/virtualMachines/myVM"
472+
$sourceImageId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myVMRG/providers/Microsoft.Compute/galleries/MyGallery/images/Gen2VMImageDef/versions/0.0.1"
477473
New-AzGalleryImageVersion -ResourceGroupName $rgName -GalleryName $galleryName -GalleryImageDefinitionName $galleryImageDefinitionName -Name $galleryImageVersionName -Location $location -SourceImageId $sourceImageId
478474
```
479-
Create a Trusted Launch VM from the above image version
475+
Create a Trusted launch VM from the above image version
480476

481477
```azurepowershell-interactive
482478
$rgName = "MyResourceGroup"
483479
$galleryName = "MyGallery"
484480
$galleryImageDefinitionName = "MyImageDef"
485481
$location = "eastus"
486482
$vmName = "myVMfromImage"
487-
$vmSize = "Standard_D2s_v3"
483+
$vmSize = "Standard_D2s_v5"
488484
$imageDefinition = Get-AzGalleryImageDefinition `
489485
-GalleryName $galleryName `
490486
-ResourceGroupName $rgName `

0 commit comments

Comments
 (0)