VM Uygulamalarına genel bakış
VM Uygulamaları, Azure İşlem Galerisi'nde (eski adıyla Paylaşılan Görüntü Galerisi) sanal makineleriniz için uygulamaların yönetimini, paylaşımını ve genel dağıtımını kolaylaştıran bir kaynak türüdür.
Uygulamaların önceden yüklenmiş olduğu bir VM'nin görüntüsünü oluşturabilirsiniz ancak uygulama değişiklikleriniz her seferinde görüntünüzü güncelleştirmeniz gerekir. Uygulama yüklemenizi VM görüntülerinizden ayırmak, her kod satırı değişikliği için yeni bir görüntü yayımlamanıza gerek olmadığı anlamına gelir.
Uygulama paketleri, diğer dağıtım ve paketleme yöntemlerine göre avantajlar sağlar:
VM Uygulamaları Azure İlkeleri desteğine sahiptir
Paketlerinizi gruplandırma ve sürüm oluşturma
VM uygulamaları altyapınıza daha yakın olacak şekilde genel olarak çoğaltılabilir, bu nedenle bitleri Azure bölgeleri arasında kopyalamak için AzCopy veya diğer depolama kopyalama mekanizmalarını kullanmanız gerekmez.
Azure Rol Tabanlı Erişim Denetimi (RBAC) aracılığıyla diğer kullanıcılarla paylaşma
Sanal makineler ve hem esnek hem de tekdüzen ölçek kümeleri için destek
SANAL makinenizde veya ölçek kümenizde Ağ Güvenlik Grubu (NSG) kuralları uygulanmışsa, paketleri bir internet deposundan indirmek mümkün olmayabilir. Depolama hesaplarıyla paketlerin kilitli VM'lere indirilmesi için özel bağlantıların ayarlanması gerekir.
Blok Blobları desteği: Bu özellik, büyük dosyaların daha küçük, yönetilebilir bloklara bölünerek verimli bir şekilde işlenmesini sağlar. Büyük miktarda veri, akış ve arka plan karşıya yükleme için idealdir.
VM uygulama paketleri nedir?
VM uygulama paketleri birden çok kaynak türü kullanır:
Kaynak | Açıklama |
---|---|
Azure işlem galerisi | Galeri, uygulama paketlerini yönetmeye ve paylaşmaya yönelik bir depodur. Kullanıcılar galeri kaynağını paylaşabilir ve tüm alt kaynaklar otomatik olarak paylaşılır. Galeri adı her abonelik için benzersiz olmalıdır. Örneğin, tüm işletim sistemi görüntülerinizi depolamak için bir galeriniz ve tüm VM uygulamalarınızı depolamak için başka bir galeriniz olabilir. |
VM uygulaması | VM uygulamanızın tanımı. Altındaki tüm sürümler için ortak meta verileri depolayan mantıksal bir kaynaktır. Örneğin, Apache Tomcat için bir uygulama tanımınız olabilir ve içinde birden çok sürüm olabilir. |
VM Uygulaması sürümü | Dağıtılabilir kaynak. VM uygulama sürümlerinizi, VM altyapınıza daha yakın olan hedef bölgelere genel olarak çoğaltabilirsiniz. VM Uygulama Sürümü, o bölgedeki bir VM'ye dağıtılmadan önce bir bölgeye çoğaltılmalıdır. |
Sınırlamalar
Bölge başına en fazla 3 çoğaltma: VM Uygulaması sürümü oluştururken, bölge başına çoğaltma sayısı üst sınırı üçtür.
Genel erişimli depolama veya okuma ayrıcalığına sahip SAS URI'si: Depolama hesabının genel düzeyde erişimi olması veya diğer kısıtlama düzeyleri dağıtımlarda başarısız olduğundan okuma ayrıcalığına sahip bir SAS URI'sini kullanması gerekir.
Başarısız yüklemeleri yeniden deneme: Şu anda, başarısız yüklemeyi yeniden denemenin tek yolu uygulamayı profilden kaldırmak ve sonra geri eklemektir.
VM başına yalnızca 25 uygulama: Herhangi bir noktada vm'ye en fazla 25 uygulama dağıtılamaz.
2 GB uygulama boyutu: Uygulama sürümünün dosya boyutu üst sınırı 2 GB'tır.
Betiğinizde yeniden başlatma garantisi yok: Betiğiniz yeniden başlatma gerektiriyorsa, söz konusu uygulamanın dağıtım sırasında en son yerleştirilmesi önerilir. Kod yeniden başlatmaları işlemeye çalışsa da başarısız olabilir.
BIR VM Aracısı gerektirir: VM aracısı VM'de bulunmalı ve hedef durumlarını alabilmelidir.
Aynı vm'de aynı uygulamanın birden çok sürümü: Vm'de aynı uygulamanın birden çok sürümü olamaz.
Taşıma işlemleri şu anda desteklenmiyor: VM Uygulamaları ile VM'lerin diğer kaynak gruplarına taşınması şu anda desteklenmiyor.
Not
Azure İşlem Galerisi ve VM Uygulamaları için Depolama SAS'ı çoğaltmadan sonra silinebilir. Ancak, sonraki tüm güncelleştirme işlemleri geçerli bir SAS gerektirir.
Maliyet
VM Uygulama Paketlerini kullanmak için ek ücret alınmaz, ancak aşağıdaki kaynaklar için ücretlendirilirsiniz:
- Her paketi ve çoğaltmayı depolamanın depolama maliyetleri.
- İlk görüntü sürümünün kaynak bölgeden çoğaltılan bölgelere çoğaltılması için ağ çıkış ücretleri. Sonraki çoğaltmalar bölge içinde işlenir, bu nedenle ek ücret alınmaz.
Ağ çıkışı hakkında daha fazla bilgi için bkz . Bant genişliği fiyatlandırması.
VM uygulamaları
VM uygulama kaynağı, VM uygulamanız hakkında aşağıdakileri tanımlar:
- VM uygulamasının depolandığı Azure İşlem Galerisi
- Uygulamanın adı
- Linux veya Windows gibi desteklenen işletim sistemi türü
- VM uygulamasının açıklaması
VM uygulama sürümleri
VM uygulama sürümleri dağıtılabilir kaynaktır. Sürümler aşağıdaki özelliklerle tanımlanır:
- Sürüm numarası
- Depolama hesabındaki uygulama paketi dosyasına bağlantı
- Uygulamayı yüklemek için yükleme dizesi
- Uygulamanın düzgün bir şekilde nasıl kaldırılacağını göstermek için dizeyi kaldırma
- Vm'ye indirildiğinde kullanılacak paket dosyası adı
- Vm'de uygulamayı yapılandırmak için kullanılacak yapılandırma dosyası adı
- Lisans dosyalarını ekleyebileceğiniz VM uygulamasının yapılandırma dosyasının bağlantısı
- VM uygulamasını daha yeni bir sürüme güncelleştirmeye yönelik güncelleştirme dizesi
- Yaşam sonu tarihi. Kullanım süresi sonu tarihleri bilgilendirilir; VM uygulama sürümlerini kullanım süresi sonu tarihinden sonra da dağıtabilirsiniz.
- En son sürümden hariç tutun. Bir sürümün uygulamanın en son sürümü olarak kullanılmasını engelleyebilirsiniz.
- Çoğaltma için hedef bölgeler
- Bölge başına çoğaltma sayısı
Dizini indirme
Uygulama paketinin ve yapılandırma dosyalarının indirme konumu şunlardır:
- Linux:
/var/lib/waagent/Microsoft.CPlat.Core.VMApplicationManagerLinux/<appname>/<app version>
- Windows:
C:\Packages\Plugins\Microsoft.CPlat.Core.VMApplicationManagerWindows\1.0.9\Downloads\<appname>\<app version>
Yükleme/güncelleştirme/kaldırma komutları, uygulama paketinin ve yapılandırma dosyasının geçerli dizinde olduğu varsayılarak yazılmalıdır.
Dosya isimlendirme
Uygulama dosyası VM'ye indirildiğinde, "MyVmApp" (uzantı yok) olarak yeniden adlandırılır. Bunun nedeni, VM'nin paketinizin özgün adını veya uzantısını bilmiyor olmasıdır. Sahip olduğu tek adı kullanır. Bu, uygulama adının kendisidir: "MyVmApp".
Bu sorunda gezinmek için birkaç alternatif aşağıda verilmiştir:
Betiğinizi, yürütmeden önce dosyayı yeniden adlandırmak için bir komut içerecek şekilde değiştirebilirsiniz:
move .\\MyVmApp .\\MyApp.exe & MyApp.exe /S
Dosyanızı yeniden adlandırmamız için bize neleri yeniden adlandırabileceğinizi bildirmek için (ve buna karşılık gelen configFileName
) özelliğini de kullanabilirsiniz packageFileName
. Örneğin, bunu "MyApp.exe" olarak ayarlamak, yükleme betiğinizin yalnızca şu şekilde olması gerekir:
MyAppe.exe /S
İpucu
Blobunuz başlangıçta "myapp" yerine "myApp.exe" olarak adlandırıldıysa yukarıdaki betik özelliği ayarlanmadan packageFileName
çalışırdı.
Komut yorumlayıcı
Varsayılan komut yorumlayıcıları şunlardır:
- Linux:
/bin/bash
- Windows:
cmd.exe
Yürütülebilir dosyayı çağırıp komutu ona geçirerek, makinede yüklü olduğu sürece Chocolatey veya PowerShell gibi farklı bir yorumlayıcı kullanmak mümkündür. Örneğin, komutunuzun cmd yerine Windows üzerinde PowerShell'de çalıştırılmasını sağlamak için powershell.exe -Command '<powershell commmand>'
Güncelleştirmeler nasıl işlenir?
Vm veya Sanal Makine Ölçek Kümeleri bir uygulama sürümünü güncelleştirdiğinizde, dağıtım sırasında sağladığınız güncelleştirme komutu kullanılır. Güncelleştirilmiş sürümde güncelleştirme komutu yoksa geçerli sürüm kaldırılır ve yeni sürüm yüklenir.
Güncelleştirme komutları, VM uygulamasının herhangi bir eski sürümünden güncelleştirilebileceği beklentisiyle yazılmalıdır.
Linux'ta VM Uygulamaları oluşturmaya yönelik ipuçları
Linux için üçüncü taraf uygulamaları birkaç şekilde paketlenebilir. Şimdi en yaygın komutlardan bazıları için yükleme komutlarını oluşturma işleminin nasıl işleneceğini inceleyelim.
dosyaları .tar ve .gz
Bu dosyalar sıkıştırılmış arşivlerdir ve istenen konuma ayıklanabilir. Özgün paketin belirli bir konuma ayıklanması gerekebilecek yükleme yönergelerini denetleyin. .tar.gz dosya kaynak kodu içeriyorsa, kaynaktan yükleme yönergelerine bakın.
Linux makinesine yüklenecek komutu yükleme golang
örneği:
sudo tar -C /usr/local -xzf go_linux
Örnek kaldır komutu:
sudo rm -rf /usr/local/go
Kısıtlı internet erişimine sahip VM'ler için , .rpm
ve diğer platforma özgü paketleri kullanarak .deb
uygulama paketleri oluşturma
Platforma özgü paket yöneticileri için tek tek paketleri indirebilirsiniz, ancak bunlar genellikle tüm bağımlılıkları içermez. Bu dosyalar için, uygulama paketine tüm bağımlılıkları da eklemeniz veya sistem paketi yöneticisinin vm'nin kullanabileceği depolar aracılığıyla bağımlılıkları indirmesini sağlamalısınız. İnternet erişimi kısıtlanmış bir VM ile çalışıyorsanız tüm bağımlılıkları kendiniz paketlemeniz gerekir.
Bağımlılıkları anlamak biraz zor olabilir. Bağımlılık ağacının tamamını gösterebilen üçüncü taraf araçlar vardır.
Ubuntu'da komutunu yürütürken sudo apt-get install <packge_name>
yüklenen tüm paketleri göstermek için komutunu çalıştırabilirsinizsudo apt show <package_name> | grep Depends
. Ardından bu çıkışı kullanarak tüm .deb
dosyaları indirerek uygulama paketi olarak kullanılabilecek bir arşiv oluşturabilirsiniz.
- Örneğin, Ubuntu için PowerShell'i yüklemek üzere bir VM uygulama paketi oluşturmak için önce aşağıdaki komutları çalıştırarak PowerShell'in indirilebileceği depoyu etkinleştirin ve ayrıca yeni bir Ubuntu VM'sine yönelik paket bağımlılıklarını belirleyin.
# Download the Microsoft repository GPG keys
wget -q "https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb"
# Register the Microsoft repository GPG keys
sudo dpkg -i packages-microsoft-prod.deb
sudo rm -rf packages-microsoft-prod.deb
sudo apt update
sudo apt show powershell | grep Depends
- Aşağıdaki paketlerin listelendiği Depends satırının çıkışını denetleyin:
Depends: libc6, lib32gcc-s1, libgssapi-krb5-2, libstdc++6, zlib1g, libicu72|libicu71|libicu70|libicu69|libicu68|libicu67|libicu66|libicu65|libicu63|libicu60|libicu57|libicu55|libicu52, libssl3|libssl1.1|libssl1.0.2|libssl1.
- Kullanarak
sudo apt-get download <package_name>
bu dosyaların her birini indirin ve tüm dosyalarla tar sıkıştırılmış bir arşiv oluşturun.
- Ubuntu 18.04:
mkdir /tmp/powershell
cd /tmp/powershell
sudo apt-get download libc6
sudo apt-get download lib32gcc-s1
sudo apt-get download libgssapi-krb5-2
sudo apt-get download libstdc++6
sudo apt-get download zlib1g
sudo apt-get download libssl1.1
sudo apt-get download libicu60
sudo apt-get download powershell
sudo tar -cvzf powershell.tar.gz *.deb
- Ubuntu 20.04:
mkdir /tmp/powershell
cd /tmp/powershell
sudo apt-get download libc6
sudo apt-get download lib32gcc-s1
sudo apt-get download libgssapi-krb5-2
sudo apt-get download libstdc++6
sudo apt-get download zlib1g
sudo apt-get download libssl1.1
sudo apt-get download libicu66
sudo apt-get download powershell
sudo tar -cvzf powershell.tar.gz *.deb
- Ubuntu 22.04:
mkdir /tmp/powershell
cd /tmp/powershell
sudo apt-get download libc6
sudo apt-get download lib32gcc-s1
sudo apt-get download libgssapi-krb5-2
sudo apt-get download libstdc++6
sudo apt-get download zlib1g
sudo apt-get download libssl3
sudo apt-get download libicu70
sudo apt-get download powershell
sudo tar -cvzf powershell.tar.gz *.deb
- Bu tar arşivi, uygulama paketi dosyasıdır.
- Bu durumda install komutu şu şekildedir:
sudo tar -xvzf powershell.tar.gz && sudo dpkg -i *.deb
- Remove komutu ise şu şekildedir:
sudo apt remove powershell
Tüm bağımlılıkları açıkça kaldırmaya çalışmak yerine kullanın sudo apt autoremove
. Çakışan bağımlılıklara sahip başka uygulamalar yüklemiş olabilirsiniz ve bu durumda açık bir kaldırma komutu başarısız olur.
Bağımlılıkları kendiniz çözmek istemediğinizde ve apt
depolara bağlanabiliyorsanız, tek .deb
bir dosyayla bir uygulama yükleyebilir ve bağımlılıkları işlemeye izin vekleyebilirsiniz apt
.
Örnek yükleme komutu:
dpkg -i <package_name> || apt --fix-broken install -y
Windows'da VM Uygulamaları oluşturmaya yönelik ipuçları
Windows'taki çoğu üçüncü taraf uygulaması .exe veya .msi yükleyici olarak kullanılabilir. Bazıları zip dosyalarını ayıklama ve çalıştırma olarak da kullanılabilir. Her biri için en iyi yöntemlere göz atalım.
.exe yükleyicisi
Yükleyici yürütülebilir dosyaları genellikle bir kullanıcı arabirimi (UI) başlatır ve kullanıcının kullanıcı arabirimi üzerinden seçim gerçekleştirmesini gerektirir. Yükleyici sessiz mod parametresini destekliyorsa, yükleme dizenize eklenmelidir.
Cmd.exe ayrıca yürütülebilir dosyaların uzantısına .exe
sahip olmasını bekler, bu nedenle uzantıya sahip .exe
olması için dosyayı yeniden adlandırmanız gerekir.
için myApp.exe
yürütülebilir dosya olarak gelen bir VM uygulama paketi oluşturmak istersem, VM Uygulamam 'myApp' olarak adlandırılır, bu nedenle uygulama paketinin geçerli dizinde olduğunu varsayarak komutunu yazıyorum:
"move .\\myApp .\\myApp.exe & myApp.exe /S -config myApp_config"
Yükleyici yürütülebilir dosyası bir kaldırma parametresini desteklemiyorsa, bazen kaldırıcının nerede olduğunu öğrenmek için bir test makinesinde kayıt defterini arayabilirsiniz.
Kayıt defterinde kaldırma dizesi içinde Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\<installed application name>\UninstallString
depolanır, bu nedenle kaldırma komutum olarak içeriğini kullanırım:
'\"C:\\Program Files\\myApp\\uninstall\\helper.exe\" /S'
.msi yükleyicisi
Yükleyicilerin komut satırı yürütmesi .msi
için, bir uygulamayı yükleme veya kaldırma komutları kullanmalıdır msiexec
. Genellikle, msiexec
kendi ayrı işlemi olarak çalışır ve cmd
tamamlanmasını beklemez ve bu da birden fazla VM uygulaması yüklenirken sorunlara yol açabilir. start
komutu, komutu döndürmeden önce yüklemenin tamamlandığından emin olmak için ile msiexec
birlikte kullanılabilir. Örneğin:
start /wait %windir%\\system32\\msiexec.exe /i myapp /quiet /forcerestart /log myapp_install.log
Örnek kaldır komutu:
start /wait %windir%\\system32\\msiexec.exe /x $appname /quiet /forcerestart /log ${appname}_uninstall.log
Komut genellikle start
bir toplu iş betiği içinde çağrılır. parametresiyle /wait
kullanıldığında, çağrılan işlem sonlandırılana kadar çağrılan betik duraklatılır. İşlem tamamlandıktan sonra, toplu iş betiği komutuyla ayarlanan değişkenini start
denetler errorlevel
ve aşağıdaki gibi çıkar:
start /wait %windir%\\system32\\msiexec.exe /i myapp /quiet /forcerestart /log myapp_install.log
if %errorlevel% neq 0 exit /b %errorlevel%
...
Sıkıştırılmış dosyalar
.zip veya diğer sıkıştırılmış dosyalar için, uygulama paketinin içeriğini istediğiniz hedefe yeniden adlandırın ve sıkıştırmasını açın.
Örnek yükleme komutu:
rename myapp myapp.zip && mkdir C:\myapp && powershell.exe -Command "Expand-Archive -path myapp.zip -destinationpath C:\myapp"
Örnek kaldır komutu:
rmdir /S /Q C:\\myapp
Hatayı dağıtım hatası olarak değerlendir
VM uygulama uzantısı, herhangi bir VM uygulamasının yüklenirken/güncelleştirilirken/kaldırılırken başarısız olup olmadığına bakılmaksızın her zaman bir başarı döndürür. VM Uygulaması uzantısı yalnızca uzantı veya temel altyapıyla ilgili bir sorun olduğunda uzantı durumunu hata olarak bildirir. Bu davranış, varsayılan olarak olarak ayarlanmış $false
ve olarak değiştirilebilen $true
"hatayı dağıtım hatası olarak değerlendir" bayrağı tarafından tetiklenir. Hata bayrağı PowerShell veya CLI'da yapılandırılabilir.
VM Uygulamalarında Sorun Giderme
Belirli bir VM uygulamasının VM örneğine başarıyla eklenip eklenmediğini öğrenmek için VM Uygulaması uzantısının iletisini denetleyin.
VM uzantılarının durumunu alma hakkında daha fazla bilgi edinmek için bkz . Linux için sanal makine uzantıları ve özellikleri ve Windows için sanal makine uzantıları ve özellikleri.
VM uzantılarının durumunu almak için Get-AzVM kullanın:
Get-AzVM -name <VM name> -ResourceGroupName <resource group name> -Status | convertto-json -Depth 10
Ölçek kümesi uzantılarının durumunu almak için Get-AzVMSS kullanın:
$result = Get-AzVmssVM -ResourceGroupName $rgName -VMScaleSetName $vmssName -InstanceView
$resultSummary = New-Object System.Collections.ArrayList
$result | ForEach-Object {
$res = @{ instanceId = $_.InstanceId; vmappStatus = $_.InstanceView.Extensions | Where-Object {$_.Name -eq "VMAppExtension"}}
$resultSummary.Add($res) | Out-Null
}
$resultSummary | convertto-json -depth 5
Hata iletileri
Mesaj | Açıklama |
---|---|
Geçerli VM Uygulama Sürümü {name} {date} tarihinde kullanım dışı bırakıldı. | Zaten kullanım dışı bırakılmış bir VM Uygulaması sürümünü dağıtmayı denediniz. Belirli bir sürümü belirtmek yerine kullanmayı latest deneyin. |
Geçerli VM Uygulama Sürümü {name}, {OS} işletim sistemini desteklerken, geçerli OSDisk'in işletim sistemi {OS}. | Linux uygulamasını Windows örneğine dağıtmaya çalıştınız veya tam tersi oldu. |
En fazla VM uygulaması sayısı (max=5, current={count}) aşıldı. Daha az uygulama kullanın ve isteği yeniden deneyin. | Şu anda VM veya ölçek kümesi başına yalnızca beş VM uygulaması destekliyoruz. |
Aynı packageReferenceId ile birden fazla VM Uygulaması belirtildi. | Aynı uygulama birden çok kez belirtildi. |
Abonelik bu görüntüye erişme yetkisine sahip değil. | Aboneliğin bu uygulama sürümüne erişimi yok. |
Bağımsız değişkenlerdeki depolama hesabı yok. | Bu abonelik için uygulama yok. |
{image} platform görüntüsü kullanılamıyor. Depolama profilindeki tüm alanların doğru olduğunu doğrulayın. Depolama profili bilgileri hakkında daha fazla bilgi için bkz https://aka.ms/storageprofile. . | Uygulama yok. |
{image} galeri görüntüsü {region} bölgesinde kullanılamıyor. Bu bölgeye çoğaltmak veya istediğiniz bölgeyi değiştirmek için görüntü sahibine başvurun. | Galeri uygulaması sürümü var, ancak bu bölgeye çoğaltılmış değil. |
SAS{ uri} kaynak uri'sinde geçerli değil. | Forbidden URL hakkında bilgi alınmaya çalışıldığında depolama alanından bir hata alındı (mediaLink veya defaultConfigurationLink). |
{uri} kaynak uri'sinin başvurdığı blob yok. | mediaLink veya defaultConfigurationLink özellikleri için sağlanan blob yok. |
Galeri uygulaması sürüm url'si {url} şu hata nedeniyle erişilemiyor: uzak ad bulunamadı. Blob'un mevcut olduğundan ve genel olarak erişilebilir olduğundan veya okuma ayrıcalıklarına sahip bir SAS URL'si olduğundan emin olun. | Büyük olasılıkla okuma ayrıcalıklarına sahip bir SAS uri'sinin sağlanmamış olmasıdır. |
Galeri uygulaması sürüm url'si {url} şu hata nedeniyle erişilemiyor: {error description}. Blob'un mevcut olduğundan ve genel olarak erişilebilir olduğundan veya okuma ayrıcalıklarına sahip bir SAS URL'si olduğundan emin olun. | Sağlanan depolama blobuyla ilgili bir sorun oluştu. Hata açıklaması daha fazla bilgi sağlar. |
{application} işlemi silinmek üzere işaretlendiğinden {operationName} işlemine izin verilmiyor. Yalnızca Delete işlemini yeniden deneyebilirsiniz (veya devam eden bir işlemin tamamlanmasını bekleyebilirsiniz). | Şu anda silinmiş olan bir uygulamayı güncelleştirmeyi deneme. |
'galleryApplicationVersion.properties.publishingProfile.replicaCount' parametresinin {value} değeri aralık dışında. Değer, dahil olmak üzere bir ile üç arasında olmalıdır. | VM Uygulaması sürümleri için yalnızca bir ile üç arasında çoğaltmaya izin verilir. |
'galleryApplicationVersion.properties.publishingProfile.manageActions.install' özelliğinin değiştirilmesine izin verilmez. (veya güncelleştirin, silin) | Mevcut bir VmApplication üzerindeki yönetim eylemlerinden herhangi birini değiştirmek mümkün değildir. Yeni bir VmApplication sürümü oluşturulmalıdır. |
' galleryApplicationVersion.properties.publishingProfile.settings.packageFileName ' özelliğinin değiştirilmesine izin verilmez. (veya configFileName) | Paket dosya adı veya yapılandırma dosyası adı gibi ayarları değiştirmek mümkün değildir. Yeni bir VmApplication sürümü oluşturulmalıdır. |
{uri} kaynak uri'sinin başvurdığı blob çok büyük: boyut = {size}. İzin verilen blob boyutu üst sınırı '1 GB'tır. | mediaLink veya defaultConfigurationLink tarafından başvurulan bir blob için en büyük boyut şu anda 1 GB'tır. |
{uri} kaynak uri'sinin başvurmuş olduğu blob boş. | Boş bir bloba başvuruldu. |
{type} blob türü {operation} işlemi için desteklenmiyor. Yalnızca sayfa blobları ve blok blobları desteklenir. | VmApplications yalnızca sayfa bloblarını ve blok bloblarını destekler. |
SAS{ uri} kaynak uri'sinde geçerli değil. | mediaLink veya defaultConfigurationLink için sağlanan SAS uri'si geçerli bir SAS uri'si değil. |
Abonelikte gerekli {featureName} özelliği eksik olduğundan hedef bölgelerde {region} belirtilemiyor. Aboneliğinizi gerekli özelliğe kaydedin veya bölgeyi hedef bölge listesinden kaldırın. | VmApplications'ı belirli kısıtlı bölgelerde kullanmak için bu abonelik için özellik bayrağının kayıtlı olması gerekir. |
Galeri görüntüsü sürümü yayımlama profili bölgeleri {regions}, {location} görüntü sürümünün konumunu içermelidir. | Çoğaltma bölgelerinin listesi, uygulama sürümünün bulunduğu konumu içermelidir. |
Hedef yayımlama bölgelerinde yinelenen bölgelere izin verilmez. | Yayımlama bölgelerinde yinelenen öğeler olmayabilir. |
Galeri uygulaması sürüm kaynakları şu anda şifrelemeyi desteklemiyor. | Hedef bölgelerin şifreleme özelliği VM Uygulamaları için desteklenmiyor |
Varlık adı, istek URL'sindeki adla eşleşmiyor. | İstek URL'sinde belirtilen galeri uygulaması sürümü, istek gövdesinde belirtilen sürümle eşleşmiyor. |
Galeri uygulaması sürüm adı geçersiz. Uygulama sürümü adı Major(int32) değerini almalıdır. Minor(int32). Patch(int32) biçimi; burada int 0 ile 2.147.483.647 (dahil) arasındadır. örneğin, 1.0.0, 2018.12.1 vb. |
Galeri uygulaması sürümü belirtilen biçime uygun olmalıdır. |
Sonraki adımlar
- VM uygulama paketleri oluşturmayı ve dağıtmayı öğrenin.