Azure CLI kullanarak IaaS kaynaklarını klasik modelden Azure Resource Manager’a geçirme

Şunlar için geçerlidir: ✔️ Linux VM'leri ✔️ Windows VM'leri

Önemli

Günümüzde IaaS VM'lerinin yaklaşık %90'ı Azure Resource Manager kullanıyor. 28 Şubat 2020 itibarıyla klasik VM'ler kullanımdan kaldırılmıştır ve 6 Eylül 2023'te tamamen kullanımdan kaldırılacaktır. Bu kullanımdan kaldırma ve bunun sizi nasıl etkilediği hakkında daha fazla bilgi edinin.

Bu adımlar, cli komutlarını kullanarak hizmet olarak altyapı (IaaS) kaynaklarını klasik dağıtım modelinden Azure Resource Manager dağıtım modeline geçirmeyi gösterir. Bu makale için Klasik Azure CLI gerekir. Azure CLI yalnızca Azure Resource Manager kaynakları için geçerli olduğundan bu geçiş için kullanılamaz.

Not

Burada açıklanan tüm işlemler bir kez etkili olur. Desteklenmeyen bir özellik veya yapılandırma hatası dışında bir sorununuz varsa hazırlama, durdurma veya işleme işlemini yeniden denemenizi öneririz. Ardından platform eylemi yeniden dener.


Geçiş işlemi sırasında hangi adımların yürütülmesi gerektiğini belirlemek için bir akış çizelgesi aşağıdadır

Geçiş adımlarını gösteren ekran görüntüsü

1. Adım: Geçişe hazırlanma

IaaS kaynaklarını klasikten Resource Manager geçirmeyi değerlendirirken önerdiğimiz en iyi yöntemlerden birkaçı aşağıdadır:

  • Desteklenmeyen yapılandırmalar veya özellikler listesini okuyun. Desteklenmeyen yapılandırmalar veya özellikler kullanan sanal makineleriniz varsa özellik/yapılandırma desteğinin duyurulmasını beklemenizi öneririz. Alternatif olarak, gereksinimlerinize uygunsa geçişi etkinleştirmek için bu özelliği kaldırabilir veya bu yapılandırmanın dışına taşıyabilirsiniz.
  • Altyapınızı ve uygulamalarınızı bugün dağıtan otomatik betikleriniz varsa, geçiş için bu betikleri kullanarak benzer bir test kurulumu oluşturmayı deneyin. Alternatif olarak, Azure portal kullanarak örnek ortamlar ayarlayabilirsiniz.

Önemli

Application Gateway'ler şu anda klasikten Resource Manager geçiş için desteklenmemektedir. Application Gateway ile klasik bir sanal ağı geçirmek için, ağı taşımak üzere hazırlama işlemini çalıştırmadan önce ağ geçidini kaldırın. Geçişi tamamladıktan sonra Azure Resource Manager'de ağ geçidini yeniden bağlayın.

Başka bir abonelikteki ExpressRoute bağlantı hatlarına bağlanan ExpressRoute ağ geçitleri otomatik olarak geçirilemez. Böyle durumlarda ExpressRoute ağ geçidini kaldırın, sanal ağı geçirin ve ağ geçidini yeniden oluşturun. Daha fazla bilgi için lütfen ExpressRoute bağlantı hatlarını ve ilişkili sanal ağları klasikten Resource Manager dağıtım modeline geçirme bölümüne bakın.

2. Adım: Aboneliğinizi ayarlama ve sağlayıcıyı kaydetme

Geçiş senaryoları için ortamınızı hem klasik hem de Resource Manager için ayarlamanız gerekir. Klasik Azure CLI'yi yükleyin ve aboneliğinizi seçin.

Hesabınızda oturum açın.

azure login

Aşağıdaki komutu kullanarak Azure aboneliğini seçin.

azure account set "<azure-subscription-name>"

Not

Kayıt tek seferlik bir adımdır, ancak geçiş denemesi yapılmadan önce bir kez yapılması gerekir. Kaydetmeden aşağıdaki hata iletisini görürsünüz

BadRequest: Abonelik geçiş için kaydedilmedi.

Aşağıdaki komutu kullanarak geçiş kaynağı sağlayıcısına kaydolun. Bazı durumlarda bu komutun zaman aşımına uyduğunu unutmayın. Ancak kayıt başarılı olur.

azure provider register Microsoft.ClassicInfrastructureMigrate

Kaydın bitmesini beş dakika bekleyin. Onay durumunu denetlemek için aşağıdaki komutu kullanabilirsiniz. Devam etmeden önce RegistrationState değerinin olduğundan Registered emin olun.

azure provider show Microsoft.ClassicInfrastructureMigrate

Şimdi CLI'yi asm moda geçirin.

azure config mode asm

3. Adım: Geçerli dağıtımınızın veya sanal ağınızın Azure bölgesinde yeterli Azure Resource Manager Sanal Makine vCPU'nuz olduğundan emin olun

Bu adım için moda geçmeniz arm gerekir. Bunu aşağıdaki komutla yapın.

azure config mode arm

Azure Resource Manager'de geçerli vCPU sayısını denetlemek için aşağıdaki CLI komutunu kullanabilirsiniz. vCPU kotaları hakkında daha fazla bilgi edinmek için bkz. Sınırlar ve Azure Resource Manager.

azure vm list-usage -l "<Your VNET or Deployment's Azure region"

Bu adımı doğrulamayı tamamladıktan sonra moda geri asm dönebilirsiniz.

azure config mode asm

4. Adım: Seçenek 1 - Bulut hizmetindeki sanal makineleri geçirme

Aşağıdaki komutu kullanarak bulut hizmetlerinin listesini alın ve geçirmek istediğiniz bulut hizmetini seçin. Bulut hizmetindeki VM'ler bir sanal ağdaysa veya web/çalışan rollerine sahipse bir hata iletisi alırsınız.

azure service list

Ayrıntılı çıktıdan bulut hizmetinin dağıtım adını almak için aşağıdaki komutu çalıştırın. Çoğu durumda dağıtım adı bulut hizmeti adıyla aynıdır.

azure service show <serviceName> -vv

İlk olarak, aşağıdaki komutları kullanarak bulut hizmetini geçirip geçiremediğini doğrulayın:

azure service deployment validate-migration <serviceName> <deploymentName> new "" "" ""

Bulut hizmetindeki sanal makineleri geçiş için hazırlayın. Aralarından seçim yapabileceğiniz iki seçenek vardır.

VM'leri platform tarafından oluşturulan bir sanal ağa geçirmek istiyorsanız aşağıdaki komutu kullanın.

azure service deployment prepare-migration <serviceName> <deploymentName> new "" "" ""

Resource Manager dağıtım modelinde mevcut bir sanal ağa geçiş yapmak istiyorsanız aşağıdaki komutu kullanın.

azure service deployment prepare-migration <serviceName> <deploymentName> existing <destinationVNETResourceGroupName> <subnetName> <vnetName>

Hazırlama işlemi başarılı olduktan sonra, VM'lerin geçiş durumunu almak ve durumunda olduklarından emin olmak için ayrıntılı çıktıya Prepared bakabilirsiniz.

azure vm show <vmName> -vv

CLI veya Azure portal kullanarak hazırlanan kaynakların yapılandırmasını denetleyin. Geçişe hazır değilseniz ve eski duruma geri dönmek istiyorsanız aşağıdaki komutu kullanın.

azure service deployment abort-migration <serviceName> <deploymentName>

Hazırlanan yapılandırma iyi görünüyorsa, aşağıdaki komutu kullanarak ileri gidebilir ve kaynakları işleyebilirsiniz.

azure service deployment commit-migration <serviceName> <deploymentName>

4. Adım: Seçenek 2 - Sanal ağdaki sanal makineleri geçirme

Geçirmek istediğiniz sanal ağı seçin. Sanal ağ, desteklenmeyen yapılandırmalara sahip web/çalışan rolleri veya VM'ler içeriyorsa bir doğrulama hata iletisi alırsınız.

Aşağıdaki komutu kullanarak abonelikteki tüm sanal ağları alın.

azure network vnet list

Çıkış şuna benzer olacaktır:

Tüm sanal ağ adının vurgulandığı komut satırının ekran görüntüsü.

Yukarıdaki örnekte virtualNetworkName , "Group classicubuntu16 classicubuntu16" adının tamamıdır.

İlk olarak, aşağıdaki komutu kullanarak sanal ağı geçirip geçiremediğini doğrulayın:

azure network vnet validate-migration <virtualNetworkName>

Aşağıdaki komutu kullanarak seçtiğiniz sanal ağı geçiş için hazırlayın.

azure network vnet prepare-migration <virtualNetworkName>

CLI veya Azure portal kullanarak hazırlanan sanal makinelerin yapılandırmasını denetleyin. Geçişe hazır değilseniz ve eski duruma geri dönmek istiyorsanız aşağıdaki komutu kullanın.

azure network vnet abort-migration <virtualNetworkName>

Hazırlanan yapılandırma iyi görünüyorsa, aşağıdaki komutu kullanarak ileri gidebilir ve kaynakları işleyebilirsiniz.

azure network vnet commit-migration <virtualNetworkName>

5. Adım: Depolama hesabını geçirme

Sanal makineleri geçirmeyi tamamladıktan sonra depolama hesabını geçirmenizi öneririz.

Aşağıdaki komutu kullanarak depolama hesabını geçiş için hazırlama

azure storage account prepare-migration <storageAccountName>

CLI veya Azure portal kullanarak hazırlanan depolama hesabının yapılandırmasını denetleyin. Geçişe hazır değilseniz ve eski duruma geri dönmek istiyorsanız aşağıdaki komutu kullanın.

azure storage account abort-migration <storageAccountName>

Hazırlanan yapılandırma iyi görünüyorsa, aşağıdaki komutu kullanarak ileri gidebilir ve kaynakları işleyebilirsiniz.

azure storage account commit-migration <storageAccountName>

Sonraki adımlar