بدء تشغيل دليل تشغيل في Azure Automation
يساعدك الجدول التالي في تحديد الأسلوب لبدء تشغيل دليل تشغيل في Azure Automation الأكثر ملاءمة لسيناريو معين. تتضمن هذه المقالة تفاصيل حول بدء تشغيل دليل تشغيل عبر مدخل Microsoft Azure ومع Windows PowerShell. يتم توفير تفاصيل عن الطرق الأخرى في وثائق أخرى يمكنك الوصول إليها من الروابط أدناه.
الطريقة | الخصائص |
---|---|
مدخل Microsoft Azure | |
Windows PowerShell | |
واجهة برمجة التطبيقات لـ Azure Automation | |
خطافات الويب | |
الاستجابة لتنبيه Azure | |
الجدول | |
من دليل تشغيل آخر |
توضح الصورة التالية عملية تفصيلية خطوة بخطوة في دورة حياة دليل التشغيل. يتضمن طرقًا مختلفة يبدأ بها دليل التشغيل في Azure Automation، والمكونات المطلوبة لـ Hybrid Runbook Worker لتنفيذ دلائل تشغيل Azure Automation، والتفاعلات بين المكونات المختلفة. للتعرف على كيفية تنفيذ دلائل تشغيل Automation في مركز البيانات، راجع العاملون في دليل التشغيل المختلط
العمل مع معلمات دليل التشغيل
عند بدء تشغيل دليل تشغيل من مدخل Azure أو Windows PowerShell، يتم إرسال التعليمات من خلال خدمة الويب Azure Automation. لا تدعم هذه الخدمة المعلمات بأنواع البيانات المعقدة. إذا كنت بحاجة إلى توفير قيمة لمعلمة معقدة، يجب عليك تسميتها مضمنة من دليل تشغيل آخر كما هو موضح في دلائل التشغيل التابعة في Azure Automation.
توفر خدمة الويب لـ Azure Automation وظائف خاصة للمعلمات باستخدام أنواع معينة من البيانات كما هو موضح في الأقسام التالية.
القيم المسماة
إذا كانت المعلمة هي نوع البيانات [كائن]، يمكنك استخدام تنسيق JSON التالي لإرسال قائمة بالقيم المسماة: {Name1:'Value1', Name2:'Value2', Name3:'Value3'}. يجب أن تكون هذه القيم أنواعًا بسيطة. يتلقى دليل التشغيل المعلمة كـ PSCustomObject بخصائص تتوافق مع كل قيمة مسماة.
ضع في اعتبارك دليل التشغيل التجريبي التالي الذي يقبل معلمة تسمى user.
Workflow Test-Parameters
{
param (
[Parameter(Mandatory=$true)][object]$user
)
$userObject = $user | ConvertFrom-JSON
if ($userObject.Show) {
foreach ($i in 1..$userObject.RepeatCount) {
$userObject.FirstName
$userObject.LastName
}
}
}
يمكن استخدام النص التالي لمعلمة المستخدم.
{FirstName:'Joe',LastName:'Smith',RepeatCount:'2',Show:'True'}
ينتج عن هذا الأمر الإخراج التالي:
Joe
Smith
Joe
Smith
الصفائف
إذا كانت المعلمة صفيفًا مثل [صفيف] أو [سلسلة []]، فحينها يمكنك استخدام تنسيق JSON التالية لإرسال قائمة القيم: [Value1، Value2، Value3]. يجب أن تكون هذه القيم أنواعًا بسيطة.
ضع في اعتبارك دليل التشغيل التجريبي التالي الذي يقبل معلمة تسمى user.
Workflow Test-Parameters
{
param (
[Parameter(Mandatory=$true)][array]$user
)
if ($user[3]) {
foreach ($i in 1..$user[2]) {
$ user[0]
$ user[1]
}
}
}
يمكن استخدام النص التالي لمعلمة المستخدم.
["Joe","Smith",2,true]
ينتج عن هذا الأمر الإخراج التالي:
Joe
Smith
Joe
Smith
بيانات الاعتماد
إذا كانت المعلمة نوع بيانات PSCredential
، يمكنك توفير اسم أصل بيانات اعتمادAzure Automation . قم باسترداد دليل التشغيل لبيانات الاعتماد بالاسم الذي تحدده. ضع في اعتبارك دليل التشغيل التجريبي التالي الذي يقبل معلمة تسمى credential
.
Workflow Test-Parameters
{
param (
[Parameter(Mandatory=$true)][PSCredential]$credential
)
$credential.UserName
}
يمكن استخدام النص التالي لمعلمة المستخدم بافتراض وجود أصل بيانات اعتماد يسمى My Credential
.
My Credential
بافتراض أن اسم المستخدم في بيانات الاعتماد هو jsmith
، يتم عرض الإخراج التالي.
jsmith
بدء تشغيل دليل تشغيل مع مدخل Microsoft Azure
- في مدخل Microsoft Azure، حدد Automation ثم حدد اسم حساب Automation.
- من الجزء الأيسر، حدد Runbooks.
- في صفحة Runbooks، حدد دليل تشغيل، ثم انقر فوق Start.
- إذا كان دليل التشغيل يحتوي على معلمات، تتم مطالبتك بتوفير قيم مع مربع نص لكل معلمة. لمزيد من المعلومات حول المعلمات، راجع معلمات دليل التشغيل.
- في جزء Job، يمكنك عرض حالة مهمة دليل التشغيل.
بدء تشغيل دليل تشغيل باستخدام PowerShell
يمكنك استخدام بدء AzAutomationRunbook لبدء تشغيل دليل مع Windows PowerShell. نموذج التعليمات البرمجية التالي يبدأ تشغيل دليل تشغيل يسمى Test-Runbook.
Start-AzAutomationRunbook -AutomationAccountName "MyAutomationAccount" -Name "Test-Runbook" -ResourceGroupName "ResourceGroup01"
Start-AzAutomationRunbook
يرجع كائن مهمة يمكنك استخدامه لتعقب الحالة بمجرد بدء تشغيل دليل التشغيل. يمكنك بعد ذلك استخدام كائن المهمة هذا مع Get-AzAutomationJob لتحديد حالة المهمة والحصول على AzAutomationJobOutput لاسترداد الإخراج الخاص به. يبدأ المثال التالي تشغيل دليل تشغيل يسمى Test-Runbook، وينتظر حتى يكتمل، ثم يعرض الإخراج الخاص به.
$runbookName = "Test-Runbook"
$ResourceGroup = "ResourceGroup01"
$AutomationAcct = "MyAutomationAccount"
$job = Start-AzAutomationRunbook -AutomationAccountName $AutomationAcct -Name $runbookName -ResourceGroupName $ResourceGroup
$doLoop = $true
While ($doLoop) {
$job = Get-AzAutomationJob -AutomationAccountName $AutomationAcct -Id $job.JobId -ResourceGroupName $ResourceGroup
$status = $job.Status
$doLoop = (($status -ne "Completed") -and ($status -ne "Failed") -and ($status -ne "Suspended") -and ($status -ne "Stopped"))
}
Get-AzAutomationJobOutput -AutomationAccountName $AutomationAcct -Id $job.JobId -ResourceGroupName $ResourceGroup -Stream Output
إذا كان دليل التشغيل يتطلب معلمات، يجب توفيرها على أنها قابلة للتجزئة. يجب أن يطابق مفتاح قابلية التجزئة اسم المعلمة والقيمة هي قيمة المعلمة. يوضح المثال التالي كيفية بدء تشغيل دليل تشغيل بمعلمتي سلسلة تسمى FirstName وLastName، عدد صحيح يسمى RepeatCount، ومعلمة منطقية تسمى Show. لمزيد من المعلومات حول المعلمات، راجع معلمات دليل التشغيل.
$params = @{"FirstName"="Joe";"LastName"="Smith";"RepeatCount"=2;"Show"=$true}
Start-AzAutomationRunbook -AutomationAccountName "MyAutomationAccount" -Name "Test-Runbook" -ResourceGroupName "ResourceGroup01" -Parameters $params
الخطوات التالية
- لمعرفة تفاصيل إدارة دليل التشغيل، انظرإدارة أدلة التشغيل في Azure Automation.
- لتفاصيل عن PowerShell، راجع مستندات PowerShell.
- استكشاف الأخطاء والمشاكل المتعلقة بتنفيذ دليل التشغيل وإصلاحها، انظراستكشاف الأخطاء والمشاكل المتعلقة بتنفيذ دليل التشغيل وإصلاحها.