Azure’da genelleştirilmiş bir VM’nin eski yönetilen görüntüsünü oluşturma

Şunlar için geçerlidir: ✔️ Linux VM'leri ✔️ Windows VM'leri ✔️ Esnek ölçek kümeleri

Önemli

Bu makale, eski yönetilen görüntü teknolojisini kapsar. En güncel teknoloji için müşterilerin Azure İşlem Galerisi'ni kullanmaları teşvik edilir. ARM64, Güvenilen Başlatma ve Gizli VM gibi tüm yeni özellikler yalnızca Azure İşlem Galerisi aracılığıyla desteklenir.  Mevcut bir yönetilen görüntüye sahipseniz, bunu kaynak olarak kullanabilir ve bir Azure İşlem Galerisi görüntüsü oluşturabilirsiniz.  Daha fazla bilgi için bkz . Yönetilen görüntüyü Azure işlem galerisine geçirme.

Vm'yi Azure'da olarak generalized işaretledikten sonra VM'yi yeniden başlatamazsınız.

Tek bir yönetilen görüntü en fazla 20 eşzamanlı dağıtımı destekler. Aynı yönetilen görüntüden eşzamanlı olarak 20'den fazla VM oluşturmaya çalışmak, tek bir VHD'nin depolama performansı sınırlamaları nedeniyle zaman aşımlarına neden olabilir. Eşzamanlı olarak 20'den fazla VM oluşturmak için, her 20 eşzamanlı VM dağıtımı için 1 çoğaltma ile yapılandırılmış bir Azure İşlem Galerisi (eski adıyla Paylaşılan Görüntü Galerisi) görüntüsü kullanın.

Yönetilen görüntülerin nasıl faturalandığı hakkında bilgi için bkz. fiyatlandırma Yönetilen Diskler.

Önkoşullar

Görüntü oluşturmak için genelleştirilmiş bir VM'ye ihtiyacınız vardır.

CLI: Vm'nin eski yönetilen görüntüsünü oluşturma

az image create ile VM'nin yönetilen görüntüsünü oluşturun. Aşağıdaki örnek, myVM adlı VM kaynağını kullanarak myResourceGroup adlı kaynak grubunda myImage adlı bir görüntü oluşturur.

az image create \
   --resource-group myResourceGroup \
   --name myImage --source myVM

Not

Görüntü, kaynak VM'nizle aynı kaynak grubunda oluşturulur. Bu görüntüden aboneliğinizdeki herhangi bir kaynak grubunda VM oluşturabilirsiniz. Yönetim açısından bakıldığında, VM kaynaklarınız ve görüntüleriniz için belirli bir kaynak grubu oluşturmak isteyebilirsiniz.

2. nesil bir VM'nin görüntüsünü yakalayıyorsanız parametresini --hyper-v-generation V2 de kullanın. daha fazla bilgi için bkz . 2. Nesil VM'ler.

Görüntünüzü bölge dayanıklı depolama alanında depolamak istiyorsanız, kullanılabilirlik alanlarını destekleyen ve parametresini --zone-resilient true içeren bir bölgede oluşturmanız gerekir.

Bu komut, VM görüntüsünü açıklayan JSON döndürür. Bu çıkışı daha sonra başvurmak üzere kaydedin.

PowerShell: Vm'nin eski yönetilen görüntüsünü oluşturma

Doğrudan VM'den görüntü oluşturmak, görüntünün işletim sistemi diski ve veri diskleri dahil olmak üzere VM ile ilişkili tüm diskleri içermesini sağlar. Bu örnekte, yönetilen diskler kullanan bir VM'den yönetilen görüntü oluşturma gösterilmektedir.

Başlamadan önce Azure PowerShell modülünün en son sürümüne sahip olduğunuzdan emin olun. Sürümü bulmak için PowerShell'de komutunu çalıştırın Get-Module -ListAvailable Az . Yükseltmeniz gerekiyorsa bkz . PowerShellGet ile Windows'a Azure PowerShell yükleme. PowerShell'i yerel olarak çalıştırıyorsanız Azure ile bağlantı oluşturmak için komutunu çalıştırın Connect-AzAccount .

Not

Görüntünüzü alanlar arası yedekli depolama alanında depolamak istiyorsanız, kullanılabilirlik alanlarını destekleyen bir bölgede oluşturmanız ve parametresini görüntü yapılandırmasına -ZoneResilient (New-AzImageConfig komut) eklemeniz gerekir.

VM görüntüsü oluşturmak için şu adımları izleyin:

  1. Bazı değişkenler oluşturun.

    $vmName = "myVM"
    $rgName = "myResourceGroup"
    $location = "EastUS"
    $imageName = "myImage"
    
  2. VM'nin serbest bırakıldığına emin olun.

    Stop-AzVM -ResourceGroupName $rgName -Name $vmName -Force
    
  3. Sanal makinenin durumunu Genelleştirilmiş olarak ayarlayın.

    Set-AzVm -ResourceGroupName $rgName -Name $vmName -Generalized
    
  4. Sanal makineyi alın.

    $vm = Get-AzVM -Name $vmName -ResourceGroupName $rgName
    
  5. Görüntü yapılandırması oluşturun.

    $image = New-AzImageConfig -Location $location -SourceVirtualMachineId $vm.Id 
    
  6. Görüntü oluşturun.

    New-AzImage -Image $image -ImageName $imageName -ResourceGroupName $rgName
    

PowerShell: Yönetilen diskten eski yönetilen görüntü oluşturma

Yalnızca işletim sistemi diskinin görüntüsünü oluşturmak istiyorsanız, yönetilen disk kimliğini işletim sistemi diski olarak belirtin:

  1. Bazı değişkenler oluşturun.

    $vmName = "myVM"
    $rgName = "myResourceGroup"
    $location = "EastUS"
    $imageName = "myImage"
    
  2. VM'yi alın.

    $vm = Get-AzVm -Name $vmName -ResourceGroupName $rgName
    
  3. Yönetilen diskin kimliğini alın.

    $diskID = $vm.StorageProfile.OsDisk.ManagedDisk.Id
    
  4. Görüntü yapılandırması oluşturun.

    $imageConfig = New-AzImageConfig -Location $location
    $imageConfig = Set-AzImageOsDisk -Image $imageConfig -OsState Generalized -OsType Windows -ManagedDiskId $diskID
    
  5. Görüntü oluşturun.

    New-AzImage -ImageName $imageName -ResourceGroupName $rgName -Image $imageConfig
    

PowerShell: Anlık görüntüden eski yönetilen görüntü oluşturma

Şu adımları izleyerek genelleştirilmiş bir VM'nin anlık görüntüsünden yönetilen görüntü oluşturabilirsiniz:

  1. Bazı değişkenler oluşturun.

    $rgName = "myResourceGroup"
    $location = "EastUS"
    $snapshotName = "mySnapshot"
    $imageName = "myImage"
    
  2. Anlık görüntüyü alın.

    $snapshot = Get-AzSnapshot -ResourceGroupName $rgName -SnapshotName $snapshotName
    
  3. Görüntü yapılandırması oluşturun.

    $imageConfig = New-AzImageConfig -Location $location
    $imageConfig = Set-AzImageOsDisk -Image $imageConfig -OsState Generalized -OsType Windows -SnapshotId $snapshot.Id
    
  4. Görüntü oluşturun.

    New-AzImage -ImageName $imageName -ResourceGroupName $rgName -Image $imageConfig
    

PowerShell: Depolama hesabı kullanan bir VM'den eski yönetilen görüntü oluşturma

Yönetilen disk kullanmayan bir VM'den yönetilen görüntü oluşturmak için depolama hesabında şu biçimde işletim sistemi VHD'sinin URI'sine ihtiyacınız vardır: https:// mystorageaccount.blob.core.windows.net/ vhdcontainer/vhdfilename.vhd. Bu örnekte VHD, mystorageaccount içinde, vhdcontainer adlı bir kapsayıcıda ve VHD dosya adı vhdfilename.vhd şeklindedir.

  1. Bazı değişkenler oluşturun.

    $vmName = "myVM"
    $rgName = "myResourceGroup"
    $location = "EastUS"
    $imageName = "myImage"
    $osVhdUri = "https://mystorageaccount.blob.core.windows.net/vhdcontainer/vhdfilename.vhd"
    
  2. VM'yi durdurun/serbest bırakın.

    Stop-AzVM -ResourceGroupName $rgName -Name $vmName -Force
    
  3. VM'yi genelleştirilmiş olarak işaretleyin.

    Set-AzVm -ResourceGroupName $rgName -Name $vmName -Generalized    
    
  4. Genelleştirilmiş işletim sistemi VHD'nizi kullanarak görüntüyü oluşturun.

    $imageConfig = New-AzImageConfig -Location $location
    $imageConfig = Set-AzImageOsDisk -Image $imageConfig -OsType Windows -OsState Generalized -BlobUri $osVhdUri
    $image = New-AzImage -ImageName $imageName -ResourceGroupName $rgName -Image $imageConfig
    

CLI: Eski yönetilen görüntüden VM oluşturma

az vm create ile oluşturduğunuz görüntüyü kullanarak bir VM oluşturun. Aşağıdaki örnek, myImage adlı görüntüden myVMDeployed adlı bir VM oluşturur.

az vm create \
   --resource-group myResourceGroup \
   --name myVMDeployed \
   --image myImage\
   --admin-username azureuser \
   --ssh-key-value ~/.ssh/id_rsa.pub

CLI: Eski yönetilen görüntüden başka bir kaynak grubunda VM oluşturma

Aboneliğinizdeki herhangi bir kaynak grubundaki bir görüntüden VM oluşturabilirsiniz. Görüntüden farklı bir kaynak grubunda VM oluşturmak için görüntünüz için tam kaynak kimliğini belirtin. Resim listesini görüntülemek için az image list komutunu kullanın. Çıktı aşağıdaki örneğe benzerdir.

"id": "/subscriptions/guid/resourceGroups/MYRESOURCEGROUP/providers/Microsoft.Compute/images/myImage",
   "location": "westus",
   "name": "myImage",

Aşağıdaki örnek, az vm create komutunu kullanarak, görüntü kaynak kimliğini belirterek kaynak görüntü dışında bir kaynak grubunda VM oluşturur.

az vm create \
   --resource-group myOtherResourceGroup \
   --name myOtherVMDeployed \
   --image "/subscriptions/guid/resourceGroups/MYRESOURCEGROUP/providers/Microsoft.Compute/images/myImage" \
   --admin-username azureuser \
   --ssh-key-value ~/.ssh/id_rsa.pub

Portal: Eski yönetilen görüntüden VM oluşturma

  1. Yönetilen bir görüntü bulmak için Azure portalına gidin. Resimler'i arayın ve seçin.
  2. Listeden kullanmak istediğiniz resmi seçin. Görüntüye Genel Bakış sayfası açılır.
  3. Menüden VM oluştur'u seçin.
  4. Sanal makine bilgilerini girin. Buraya girilen kullanıcı adı ve parola, sanal makinede oturum açmak için kullanılır. Tamamlandığında Tamam'ı seçin. Yeni VM'yi mevcut bir kaynak grubunda oluşturabilir veya VM'yi depolamak üzere yeni bir kaynak grubu oluşturmak için Yeni oluştur'u seçebilirsiniz.
  5. VM için bir boyut seçin. Daha fazla boyut görmek için Tümünü görüntüle’yi seçin veya Desteklenen disk türü filtresini değiştirin.
  6. Ayarlar altında, gerekli değişiklikleri yapın ve Tamam'ı seçin.
  7. Özet sayfasında, resim adınızın Özel görüntü olarak listelendiğini görmeniz gerekir. Sanal makine dağıtımını başlatmak için Tamam'ı seçin.

PowerShell: Eski yönetilen görüntüden VM oluşturma

New-AzVm cmdlet'i için basitleştirilmiş parametre kümesini kullanarak bir görüntüden VM oluşturmak için PowerShell'i kullanabilirsiniz. Görüntünün VM'yi oluşturacağınız kaynak grubunda olması gerekir.

New-AzVm için basitleştirilmiş parametre kümesi yalnızca bir görüntüden VM oluşturmak için bir ad, kaynak grubu ve görüntü adı sağlamanız gerekir. New-AzVm, otomatik olarak oluşturduğu tüm kaynakların adı olarak -Name parametresinin değerini kullanır. Bu örnekte, kaynakların her biri için daha ayrıntılı adlar sağlarız, ancak cmdlet'in bunları otomatik olarak oluşturmasına izin veririz. Ayrıca önceden sanal ağ gibi kaynaklar oluşturabilir ve kaynak adını cmdlet'ine geçirebilirsiniz. New-AzVm, mevcut kaynakları adlarıyla bulabilirse kullanır.

Aşağıdaki örnek, myImage adlı görüntüden myResourceGroup kaynak grubunda myVMFromImage adlı bir VM oluşturur.

New-AzVm `
    -ResourceGroupName "myResourceGroup" `
    -Name "myVMfromImage" `
    -ImageName "myImage" `
    -Location "East US" `
    -VirtualNetworkName "myImageVnet" `
    -SubnetName "myImageSubnet" `
    -SecurityGroupName "myImageNSG" `
    -PublicIpAddressName "myImagePIP" 

Sonraki adımlar