Service Management Automation runbook'ları yazma

Önemli

Service Management Automation'ın (SMA) bu sürümü desteğin sonuna ulaştı. SMA 2022'ye yükseltmenizi öneririz.

Service Management Automation ve Microsoft Azure Otomasyonu'daki runbook'lar iş akışları veya PowerShell betikleri Windows PowerShell. Bulut sunucularını ve Windows PowerShell betiğinin gerçekleştirebileceği diğer işlevleri yönetmek ve dağıtmak için yönetim görevlerini otomatik hale getirme yeteneği sağlar.

İki sistem arasındaki runbook'larda fark yoktur ve aynı runbook aynı işlevlere sahip ikisinde de çalıştırılabilir. Bu makalede Otomasyon terimi kullanıldığında, hem Service Management Automation hem de Microsoft Azure Otomasyonu anlamına gelir.

Otomasyon tarafından Windows PowerShell İş Akışlarıyla çalışmak üzere sağlanan ek hizmetler şunlardır:

  • Merkezileştirilmiş depolama ve runbook yönetimi.

  • Runbook'ları planlamak ve çalıştırmak için ölçeklenebilir mimari.

  • Merkezi olarak yönetilen ve tüm runbook'lar açık olan genel kaynaklar.

  • Runbook'ları yazmak ve sınamak için kullanıcı arabirimleri.

  • Runbook'ları yönetmek ve başlatmak için cmdlet kümeleri.

Runbook oluşturma veya içeri aktarma

Service Management Automation'a bir runbook'u yönetim portalında oluşturarak veya bir dosyadan içeri aktararak ekleyebilirsiniz.

Yönetim Portalı'nda runbook oluşturma

  1. Yönetim Portalı'nda Yeni, Uygulama Hizmetleri, Otomasyon, Runbook, Hızlı Oluştur'u seçin.

  2. Gerekli bilgileri girin ve Oluştur'u seçin. Runbook adı bir harfle başlamalıdır ve harfler, rakamlar, alt çizgiler ve kısa çizgiler içerebilir.

  3. Runbook'u şimdi düzenlemek istiyorsanız Runbook'u Düzenle'yi seçin. Aksi takdirde Tamam'ı seçin.

  4. Yeni runbook'unuz Runbook'lar sekmesinde görünür.

Bir dosyadan runbook içeri aktarma

  1. Yönetim Portalı'nda Otomasyon 'u seçin ve ardından bir Otomasyon Hesabı seçin.

  2. İçeri aktar'ı seçin.

  3. Dosyaya Gözat'ı seçin ve içeri aktarılacağınız betik dosyasını bulun.

  4. Runbook'u şimdi düzenlemek istiyorsanız Runbook'u Düzenle'yi seçin. Aksi takdirde Tamam'ı seçin.

  5. Yeni runbook'unuz Otomasyon Hesabı için Runbook'lar sekmesinde görünür.

Windows PowerShell içeren bir betik dosyasından runbook içeri aktarma

Bir iş akışı içeren bir betik dosyasından yeni bir runbook oluşturmak için Import-SmaRunbook cmdlet'ini kullanabilirsiniz.

Aşağıdaki örnek komutlarda bir betik dosyasının mevcut bir runbook'a nasıl aktarılacağı ve ardından yayımlanacağı gösterilmektedir.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

Import-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Path $scriptPath
Publish-SMARunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName

Runbook'u düzenleme

Service Management Automation'daki her runbook'un iki sürümü vardır: Taslak ve Yayımlandı. İş akışının Taslak sürümünü düzenler ve yürütülebilmesi için yayımlarsınız. Yayımlanan sürüm düzenlenemez.

Yönetim Portalı ile runbook'u düzenleme

Yönetim Portalı, runbook'ları görüntülemek ve düzenlemek için kullanabileceğiniz bir düzenleyici içerir. Düzenleyici, temel metin düzenleme özellikleri sağlamanın yanı sıra runbook'lar, genel varlıklar ve etkinlikler için otomatik olarak kod ekleme olanağı sağlar.

  1. Yönetim Portalı'nda Otomasyon'u seçin.

  2. Runbook'lar sekmesini seçin.

  3. Düzenlemek istediğiniz runbook'un adını seçin.

  4. Yazar sekmesini seçin.

  5. Ekranın üst kısmındaki Taslak'ı veya ekranın en altındaki Düzenle düğmesini seçin.

  6. Gerekli düzenlemeleri yapın.

  7. Düzenlemeleriniz tamamlandığında Kaydet'i seçin.

  8. Runbook'un en son taslak sürümünün yayımlanmasını istiyorsanız Yayımla'yı seçin.

Runbook'lar, genel varlıklar ve etkinlikler için kod ekleme adımları için gerekli sekmeyi seçin:

Runbook'a kod eklemek için şu adımları izleyin:

  1. Runbook'u Yönetim Portalı düzenleyicisinde açın.

  2. Ekranın alt kısmında Ekle'yi ve ardından Runbook'u seçin.

  3. Orta sütundan eklenecek runbook'u seçin ve sağ oku seçin.

  4. Runbook parametrelere sahipse, bunlar bilgilendirme olarak listelenir.

  5. Onay düğmesini seçin.

  6. Seçili runbook'u çalıştırma kodu geçerli runbook'a eklenir.

  7. Runbook parametreler gerektiriyorsa, küme ayraçları <>ile çevrelenmiş veri türü yerine uygun bir değer sağlayın.

Otomasyon runbook'larını PowerShell ile düzenleme

Windows PowerShell ile bir runbook'u düzenlemek için, istediğiniz düzenleyiciyi kullanarak iş akışını düzenleyin ve bir .ps1 dosyasına kaydedin. Runbook'un içeriğini almak için Get-SMARunbookDefinition cmdlet'ini ve ardından mevcut taslak iş akışını düzenlenmiş iş akışıyla değiştirmek için Edit-SMARunbook cmdlet'ini kullanabilirsiniz.

Windows PowerShell kullanarak runbook'un içeriğini almak için

Aşağıdaki örnek komutlarda bir runbook için betiğin nasıl alınacağı ve bir betik dosyasına kaydedileceği gösterilmektedir. Bu örnekte Taslak sürümü alınmaktadır. Bu sürüm değiştirilemese de runbook'un Yayımlanan sürümünü almak da mümkündür.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

$runbookDefinition = Get-SMARunbookDefinition -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Type Draft
$runbookContent = $runbookDefinition.Content

Out-File -InputObject $runbookContent -FilePath $scriptPath

Windows PowerShell kullanarak runbook'un içeriğini değiştirmek için

Aşağıdaki örnek komutlarda bir runbook'un mevcut içeriğinin bir iş akışı içeren bir betik dosyasının içeriğiyle nasıl değiştirileceği gösterilmektedir.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

Edit-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Path $scriptPath -Overwrite
Publish-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Path $scriptPath

PowerShell ISE ile Otomasyon runbook'larını düzenleme

Windows PowerShell Tümleşik Betik Ortamı (ISE), komut çalıştırmanızı ve betikleri yazmanızı, test etmenizi ve hatalarını ayıklamanızı sağlayan bir uygulamadır. SMA PowerShell ISE Eklentisi, Otomasyon runbook'larını yazmak ve test etmek için bu aracı kullanmanıza olanak tanır.

  1. Windows PowerShell ISE ortamını açın.

  2. SMA ISE eklentisi ISE'nin sağ tarafında görüntülenmiyorsa, Eklentiler menüsünü açın ve SMA ISE eklentisini etkinleştirin.

  3. Yapılandırma sekmesinde SMA'da oturum açın.

  4. Runbook sekmesini seçin. SMA runbook'larının listesini görmeniz gerekir.

  5. Düzenlemek istediğiniz runbook'u ve ardından İndir'i seçin. Bu, SMA'dan runbook'un yerel bir kopyasını indirir.

  6. ’ı seçin. Bu, runbook ile yeni bir sekme oluşturur.

  7. Runbook'ta gerekli değişiklikleri yapın.

  8. Runbook'u SMA'ya göndermek için Taslağı Karşıya Yükle'yi seçin. Bu, runbook'un mevcut taslak sürümünün üzerine yazar.

  9. Runbook'un en son taslak sürümünü yayımlamak istiyorsanız Taslağı Yayımla'yı seçin.

Runbook'unuzu yayımlama

Runbook'unuzu oluşturduktan sonra runbook çalışanının yürütebilmesi için yayımlamanız gerekir. Service Management Automation'daki her runbook'un bir Taslak ve Yayımlanmış sürümü vardır. Yalnızca Yayımlanan sürüm çalıştırılabilir ve yalnızca Taslak sürüm düzenlenebilir. Yayımlanan sürüm Taslak sürümdeki herhangi bir değişiklikten etkilenmez. Taslak sürümünü kullanılabilir hale getirmek için hazır olduğunuzda, Yayımlanan sürümü Taslak sürümüyle üzerine yazan yayımlarsınız.

Yönetim portalını kullanarak runbook yayımlama

  1. Otomasyon çalışma alanını seçin.

  2. Ekranın üst tarafında, Runbooklar'ı seçin.

  3. Düzenlemek istediğiniz runbook'u bulun ve adına tıklayın.

  4. Ekranın üst kısmında Yazar'ı seçin.

  5. Taslak'ı seçin.

  6. Ekranın alt kısmında Yayımla'yı seçin.

  7. Doğrulama iletisinde Evet'i seçin.

PowerShell kullanarak runbook yayımlama

Windows PowerShell ile runbook yayımlamak için Publish-SmaRunbook kullanabilirsiniz. Aşağıdaki örnek komutlarda bir runbook'un nasıl yayımlanacağı gösterilmektedir.

$webServer = 'https://MyServer'
$port = 9090
$runbookPath = 'c:\runbooks\Sample-TestRunbook.ps1'
$runbookName = 'Test-Runbook'

Publish-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName

PowerShell ISE kullanarak runbook yayımlama

Windows PowerShell Tümleşik Betik Ortamı (ISE), komut çalıştırmanızı ve betikleri yazmanızı, test etmenizi ve hatalarını ayıklamanızı sağlayan bir uygulamadır. SMA PowerShell ISE Eklentisi, Otomasyon runbook'larını yazmak ve test etmek için bu aracı kullanmanıza olanak tanır.

  1. Windows PowerShell ISE ortamını açın.

  2. SMA ISE eklentisi ISE'nin sağ tarafında görüntülenmiyorsa, Eklentiler menüsünü açın ve SMA ISE eklentisini etkinleştirin.

  3. Yapılandırma sekmesinde SMA'da oturum açın.

  4. Runbook sekmesini seçin. SMA runbook'larının listesini görmeniz gerekir.

  5. Runbook'u seçin ve runbook'un en son taslak sürümünü yayımlamak için Taslağı Yayımla'yı seçin.

Runbook'unuzu test etme

Runbook'un yayımlanmış sürümünü değiştirmeden bırakırken Service Management Automation'da bir runbook'un Taslak sürümünü test edebilirsiniz. Bu, yayımlanan sürümü değiştirmeden önce runbook'un doğru çalıştığını doğrulamanızı sağlar.

Bir runbook'u test ettiğinizde, Taslak runbook yürütülür ve gerçekleştirdiği tüm işlemler tamamlanır. İş geçmişi oluşturulmaz, ancak Çıkış ve Uyarı ve Hata akışları Test Çıktısı Bölmesi'nde görüntülenir. Ayrıntılı Stream iletileri, yalnızca $VerbosePreference değişkeniDevam olarak ayarlandığında Çıkış Bölmesi'nde görüntülenir.

Bir runbook'u test ettiğinizde iş akışı normal şekilde yürütülür ve ortamdaki kaynaklara karşı tüm eylemler çalıştırılabilir. Bu nedenle, runbook'ları yalnızca üretime yönelik olmayan kaynaklarla test etmelisiniz.

Service Management Automation'da runbook'u test etme

Bir runbook'u test etmek için, Yönetim Portalı'nda runbook'un Taslak sürümünü açın. Testi başlatmak için ekranın alt kısmındaki Test düğmesini seçin.

Çıkış Bölmesi'nin altındaki düğmelerle test edilirken runbook'u durdurabilir veya askıya alabilirsiniz. Bir runbook'u askıya aldığınızda, askıya alınmadan önce geçerli etkinliği tamamlar. Runbook askıya alındığında, durdurabilir veya yeniden başlatabilirsiniz.

PowerShell ISE kullanarak runbook'u test etme

PowerShell ISE eklentisi, Get-SMACredential ve Set-SMAVariable gibi standart etkinlikleri öykünen cmdlet'ler sağlar, böylece runbook'u diğer betiklerde olduğu gibi yerel bilgisayarda test edebilirsiniz.

Genel varlıklar ve değerleri, yerel test için kullanılacak otomasyon grubundan indirilir. Varlıklar sekmesinde bu değerleri inceleyebilir veya değiştirebilirsiniz. Şifrelenmiş değerler turuncu renkte görüntülenir ve değerleri indirilmiyor. Bu varlıkları yerel testlerde kullanmak istiyorsanız, değerlerini yerel olarak ayarlamanız gerekir.

Runbook'u SMA'da test etmek için SMA'da Test Taslağı'nı seçin. Yeni bir pencere açılır. Testi başlatmak için Yeni İşi Başlat'ı seçin. Çıkış pencerede görüntülenir.

Otomasyon runbook örnekleri

Aşağıdaki runbook'lar, teknikleri ve en iyi yöntemleri göstermek için örnek runbook'lar olarak Service Management Automation ile birlikte gönderilir. Bunlar, Windows Server için Microsoft Azure Paketi'ndeki Otomasyon uzantısında kullanılabilir.

Runbook adı Description
Örnek, Silme, VMCloud, Abonelik Kullanıcı VM Bulutları aboneliğini sildiğinde runbook'u tetiklemek için kullanışlı bir senaryo gösterir.
Örnek, Yönetme, Azure Microsoft Azure PowerShell modülünü kullanarak bir Microsoft Azure aboneliğine bağlanmayı ve temel işlemleri gerçekleştirmeyi gösterir.
Örnek, Yönetme, ConfigurationManager Service Management Automation'ın Configuration Manager bağlanma özelliğini gösterir.
Örnek, Yönetme, DataProtectionManager Data Protection Manager (DPM) sunucusuna bağlanmayı ve DPM sunucusunda bulunan diskler hakkında bilgileri görüntülemeyi gösterir.
Örnek, Yönetme, MySQLServers Ana bilgisayar sunucusu listesini daha sonra almak için kullanılacak olan güvenlik belirtecini almayı gösterir.
Örnek, Yönetme, OperationsManager Service Management Automation'ın System Center Operations Manager'a bağlanma özelliğini gösterir.
Örnek, Yönetme, Orchestrator Mevcut altyapınızı kullanmak için System Center Orchestrator'a bağlanmayı ve bir Orchestrator runbook'u başlatmayı gösterir.
Örnek, Yönetme, Planlar Yeni plan oluşturmayı ve SQL Server hizmetini tanımlanmış kota ile yeni plana eklemeyi gösterir.
Örnek, Yönetme, ServiceBusClouds Hizmet Veri Yolu Bulutu sunucusuna bağlanmayı ve oluşturulan ad alanları hakkında bilgileri görüntülemeyi gösterir.
Örnek, Yönetme, SQLServers Yeni sunucu grubu oluşturmayı ve SQL barındırma sunucusu eklemeyi gösterir.
Örnek, Yönetme, UserAccounts Microsoft Azure Paketi'nde oluşturulacak ve yöneticiler için yönetim portalında görüntülenen Windows Server için Microsoft Azure Paketi'nde Kullanıcı oluşturmayı gösterir Kullanıcılar uzantısı. Ancak, bu kullanıcının kiracılar için yönetim portalına erişmek için kimlik doğrulama sağlayıcısıyla (örneğin, AuthSite) tümleştirilmesi gerekir ve bu örnekte yoktur.
Örnek, Yönetme, VirtualMachineManager Virtual Machine Manager (VMM) sunucusuna bağlanmayı ve VMM sunucu lisansı hakkında bilgileri görüntülemeyi gösterir.
Örnek, Yönetme, VMClouds Service Provider Foundation sunucusunun veritabanı bağlantısı hakkında bilgilere ve Service Provider Foundation tarafından yönetilen VMM sunucu nesneleriyle ilgili bilgilere erişmeyi gösterir.
Örnek, Yönetme, WebSiteCloud Web Sitesi Bulutları denetleyici sunucusuna bağlanmayı ve Web Sitesi Bulutları tarafından dağıtılan sunucular hakkında bilgileri görüntülemeyi gösterir.
Örnek, Değiştirme, VMCloud, Abonelik Kiracı veya yönetici VM Bulutları aboneliğini askıya aldığında veya etkinleştirdiğinde, runbook'u tetiklemek için kullanışlı bir senaryo gösterir.
Örnek, Kullanma, Etkinlikler Service Management Automation'ın etkinlikleri kullanma yeteneğini gösterir
Örnek, Kullanma, Kontrol Noktaları Service Management Automation'da denetim noktalarını kullanma özelliğini gösterir.
Örnek, Kullanma, Bağlantılar Service Management Automation'ın uzak sistemlere bağlanmak için bağlantıları kullanma özelliğini gösterir.
Örnek, Kullanma, Kimlik Bilgileri Service Management Automation'ın kimlik bilgilerini kullanma yeteneğini gösterir ve Service Management Automation runbook'unun çalıştığı kullanıcının çıkışını oluşturur. Daha sonra, 'ServerName' sunucusuna bağlanır ve 'SampleCredential' tarafından sunucuya eriştiği belirtilen kullanıcıyı çıkartır.
Örnek, Kullanma, Modüller Runbook'lardaki modülleri içe aktarmayı gösterir ve 'ServerName' sunucusunda zaten içe aktarılmış modüllerin sayısını çıkartır. Ardından, 'ModulePath' tarafından belirtilen modülü içe aktarır ve yeni modül sayısını ve yeni içe aktarılan modülle ilgili bilgileri çıkartır.
Örnek, Kullanma, RunbookParameters Runbook'lar için giriş parametrelerini kullanmayı ve ayrıca parametrelerin gerekli olup olmadığını belirtmeyi, varsayılan parametre değerlerini sağlamayı ve parametre değerlerini daha sonra iş akışında kullanmayı gösterir.
Örnek, Kullanma, Runbook'lar Başka bir runbook'taki runbook'u çağırmayı gösterir.
Örnek, Kullanma, SuspendWorkflow Bir runbook'u askıya almak için zorlamayı gösterir. Belirli bir kişiden oturum kapatma onayı alma gibi bir runbook devam etmeden önce el ile bir adım gerekiyorsa bu yararlı olabilir. El ile uygulanan adım tamamlandıktan sonra, runbook'u devam ettirmek için askıya alınmış runbook el ile sürdürülür.
Örnek, Kullanma, Değişkenler Service Management Automation'ın değişkenleri kullanma yeteneğini gösterir.
Örnek, Kullanma, VMCloud, Otomasyon Service Provider Foundation olayının başlangıcında runbook'u tetiklemek için kullanışlı bir senaryo gösterir.

Sonraki adımlar