AzureVmssDeployment@0 - Azure VM ölçek kümesi dağıtımı v0 görevi
Bu görev bir Sanal Makine ölçek kümesi görüntüsü dağıtır.
Syntax
# Azure VM scale set deployment v0
# Deploy a virtual machine scale set image.
- task: AzureVmssDeployment@0
inputs:
# Azure Details
azureSubscription: # string. Alias: ConnectedServiceName. Required. Azure subscription.
action: 'Update image' # 'Update image' | 'Configure application startup'. Required. Action. Default: Update image.
vmssName: # string. Required. Virtual Machine scale set name.
vmssOsType: # 'Windows' | 'Linux'. Required. OS type.
# Image Details
#imageUrl: # string. Required when action = Update image || action = UpdateImage. Image URL.
# Configure start-up
#customScriptsDirectory: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Custom script directory.
#customScript: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Command.
#customScriptArguments: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Arguments.
#customScriptsStorageAccount: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Azure storage account where custom scripts will be uploaded.
# Advanced
#skipArchivingCustomScripts: false # boolean. Skip Archiving custom scripts. Default: false.
# Azure VM scale set Deployment v0
# Deploy Virtual Machine scale set image.
- task: AzureVmssDeployment@0
inputs:
# Azure Details
azureSubscription: # string. Alias: ConnectedServiceName. Required. Azure subscription.
action: 'Update image' # 'Update image' | 'Configure application startup'. Required. Action. Default: Update image.
vmssName: # string. Required. Virtual Machine scale set name.
vmssOsType: # 'Windows' | 'Linux'. Required. OS type.
# Image Details
#imageUrl: # string. Required when action = Update image || action = UpdateImage. Image URL.
# Configure start-up
#customScriptsDirectory: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Custom script directory.
#customScript: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Command.
#customScriptArguments: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Arguments.
#customScriptsStorageAccount: # string. Optional. Use when action = Configure application startup || action = Update image || action = UpdateImage. Azure storage account where custom scripts will be uploaded.
# Advanced
#skipArchivingCustomScripts: false # boolean. Skip Archiving custom scripts. Default: false.
Girişler
azureSubscription
- Azure aboneliği
Giriş diğer adı: ConnectedServiceName
. string
. Gereklidir.
Ölçek kümesi için Azure Resource Manager aboneliğini belirtir.
action
- Eylem
string
. Gereklidir. İzin verilen değerler: Update image
(Görüntü kullanarak VM Ölçek kümesini güncelleştirme), Configure application startup
(VM ölçek kümesinde Özel Betik VM uzantısını çalıştırma). Varsayılan değer: Update image
.
VHD görüntüsü kullanarak ve/veya Özel Betik VM Uzantısı'nı kullanarak dağıtım/yükleme betiklerini çalıştırarak seçilen yöntem tarafından bir VM ölçek kümesi Güncelleştirmeler.
VHD görüntü yaklaşımı , hızlı ölçeklendirme ve geri alma için daha iyidir. Özel görüntü kullanılarak bir VM ölçek kümesi oluşturulduğunda, bir VHD görüntüsü tarafından güncelleştirilebilir. VM ölçek kümesi Azure'da bulunan bir platform/galeri görüntüsü kullanılarak oluşturulduysa güncelleştirme başarısız olur.
Özel Betik VM Uzantısı yaklaşımı dağıtım sonrası yapılandırma, yazılım yüklemesi veya başka bir yapılandırma/yönetim görevi için kullanışlıdır. Özel Betik VM Uzantısı yaklaşımı, özel görüntü veya platform/galeri görüntüsü kullanılarak oluşturulan bir VM ölçek kümesi için kullanılabilir.
vmssName
- Sanal Makine ölçek kümesi adı
string
. Gereklidir.
Güncelleştirilecek VM ölçek ayarının adını belirtir. VHD görüntüsü veya Özel Betik VM Uzantısı kullanın.
vmssOsType
- İşletim sistemi türü
string
. Gereklidir. İzin verilen değerler: Windows
, Linux
.
VM ölçek kümesinin işletim sistemi türünü belirtir.
imageUrl
- Resim URL'si
string
. olduğunda action = Update image || action = UpdateImage
gereklidir.
VHD görüntüsünün URL'sini belirtir. Bu bir Azure depolama blobu URL'siyse, depolama hesabı konumu ölçek kümesi konumuyla aynıdır.
customScriptsDirectory
- Özel betik dizini
string
. İsteğe bağlı. when action = Configure application startup || action = Update image || action = UpdateImage
kullanın.
İsteğe bağlı. Özel Betik VM Uzantısı kullanılarak çalıştırılan özel betikleri içeren dizinin yolu. Uzantı yaklaşımı dağıtım sonrası yapılandırma, uygulama/yazılım yüklemesi veya başka bir uygulama yapılandırması/yönetim görevi için kullanışlıdır. Örneğin betik, veritabanı bağlantı dizeleri gibi uygulamanın kullandığı bir makine düzeyi ortam değişkeni ayarlayabilir.
customScript
- Komut
string
. İsteğe bağlı. when action = Configure application startup || action = Update image || action = UpdateImage
kullanın.
İsteğe bağlı. Özel Betik VM Uzantısı kullanılarak çalıştırılan betik. Bu betik dizindeki diğer betikleri çağırabilir ve aşağıda geçirilen bağımsız değişkenlerle çağrılır.
Bu tür bağımsız değişkenlerle birlikte, bu betik komutları yürütmek için kullanılabilir.
Örnek:
Update-DatabaseConnectionStrings.ps1 -clusterType dev -user $(dbUser) -password $(dbUserPwd)
web uygulamasının bağlantı dizesiweb.config
güncelleştirir.install-secrets.sh --key-vault-type prod -key serviceprincipalkey
, hizmet sorumlusu anahtarı içeren şifrelenmiş bir dosya oluşturur.
customScriptArguments
- Bağımsız değişken
string
. İsteğe bağlı. when action = Configure application startup || action = Update image || action = UpdateImage
kullanın.
İsteğe bağlı. Geçirilen bağımsız değişkenlerle özel betik çağrılır. Derleme/yayın değişkenleri kullanılabilir ve bu da gizli dizileri kullanmayı kolaylaştırır.
customScriptsStorageAccount
- Özel betiklerin karşıya yüklendiği Azure depolama hesabı
string
. İsteğe bağlı. when action = Configure application startup || action = Update image || action = UpdateImage
kullanın.
İsteğe bağlı. Özel Betik Uzantısı vm ölçek kümesindeki her sanal makinede sağlanan betikleri indirir ve yürütür. Bu betikler burada belirtilen önceden var olan ARM depolama hesabında depolanır.
skipArchivingCustomScripts
- Özel betikleri arşivlemeyi atla
boolean
. Varsayılan değer: false
.
İsteğe bağlı. Varsayılan olarak, bu görev özel betikleri içeren dizinin sıkıştırılmış bir arşivini oluşturur. Bu, Azure depolamaya yüklenirken performansı ve güvenilirliği artırır. Seçilmezse arşivleme yapılmaz ve tüm dosyalar tek tek karşıya yüklenir.
Görev denetim seçenekleri
Tüm görevlerde görev girişlerine ek olarak denetim seçenekleri vardır. Daha fazla bilgi için bkz . Denetim seçenekleri ve ortak görev özellikleri.
Çıkış değişkenleri
Yok.
Açıklamalar
Sanal Makine ölçek kümesi görüntüsünü dağıtmak için bu görevi kullanın.
Betik yürütme başarılı olarak bildirilir, ancak VMSS örnekleri güncelleştirilmez
Ölçek kümeleri, VM'lerin en son ölçek kümesi modeliyle nasıl güncellendiğini belirleyen bir yükseltme ilkesine sahiptir ve yükseltme ilkesi el ile olarak ayarlandıysa her VM'yi el ile yükseltmeniz gerekir. Daha fazla bilgi için bkz. Vm'leri en son ölçek kümesi modeliyle güncelleştirme. Güncelleştirme ilkesini değiştirebilir veya her VM'yi el ile yükseltebilirsiniz. Örneğin, ilkeyi sürümüne yükseltmek için Automatic
aşağıdaki Az CLI komutunu kullanın: az vmss update --set upgradePolicy.mode=Automatic -g <resource group name> -n <vmss name>
Hata: 'İzin reddedildi: Betik yürütülebilir değil'
Özel bir betik çalıştırmaya çalıştığınızda ancak betik yürütülebilir değilse bu sorun oluşur.
Sorunu çözmek için, önce girişte betik adından customScript
'test.sh'
önce veya başka bir şey olmadığından ./
emin olun:
customScript: 'test.sh'
Ardından, sanal makine ölçek kümesi görevinden önce bir komut satırı görevi eklemeyi deneyin:
- task: CmdLine@2
inputs:
script: 'chmod 777 $(System.DefaultWorkingDirectory)/test.sh'
Gereksinimler
Gereksinim | Açıklama |
---|---|
İşlem hattı türleri | YAML, Klasik derleme, Klasik sürüm |
Üzerinde çalışır | Agent, DeploymentGroup |
Talep | Hiçbiri |
Özellikler | Bu görev, işteki sonraki görevler için hiçbir talebi karşılamaz. |
Komut kısıtlamaları | Herhangi biri |
Ayarlanabilir değişkenler | Herhangi biri |
Aracı sürümü | 2.0.0 veya üzeri |
Görev kategorisi | Dağıtma |