การเพิ่มการรายงานสถานะแบบกำหนดเองในสคริปต์การติดตั้ง
มาโครแบบกำหนดไว้ล่วงหน้าที่แนะนำในไฟล์แบบอัตโนมัติจะรายงานสถานะการปรับใช้ระบบปฏิบัติการขั้นสุดท้าย และรายงานสถานะเมื่อมีการดาวน์โหลดและรันสคริปต์หลังการติดตั้ง คุณสามารถรวมการรายงานสถานะเพิ่มเติมในสคริปต์หลังการติดตั้งได้
Linux
curl -X PUT -globoff #predefined.otherSettings.statusSettings.urlStatus#
-H "Content-Type: application/json" -d '{"deployStatus":{"id":"<status_ID>"}}'
-cert #predefined.otherSettings.statusSettings.certLocation#/cert.pem
-key #predefined.otherSettings.statusSettings.certLocation#/key.pem
-cacert #predefined.otherSettings.statusSettings.certLocation#/ca-bundle.crt
โดยที่ <status_ID> อาจเป็นค่าใดค่าหนึ่งต่อไปนี้
44. การปรับใช้ตามปริมาณงานสำเร็จ
45. การปรับใช้ตามปริมาณงานกำลังดำเนินการอยู่โดยมีคำเตือน
46. การปรับใช้ตามปริมาณงานล้มเหลว
47. ข้อความการปรับใช้ตามปริมาณงาน
48. ข้อผิดพลาดของสคริปต์หลังการติดตั้งแบบกำหนดเอง
โปรดทราบว่าคำสั่ง curl จะใช้มาโครแบบกำหนดไว้ล่วงหน้าสำหรับ HTTPS URL ที่ Lenovo XClarity Administrator ใช้ในการรายงานสถานะ (predefined.otherSettings.statusSettings.urlStatus) และใช้สำหรับโฟลเดอร์ที่มีใบรับรองซึ่งจำเป็นต้องมีเพื่อเข้าถึงบริการเว็บ urlStatus จาก OS ของโฮสต์ในการบูตครั้งแรก (predefined.otherSettings.statusSettings.certLocation) ตัวอย่างต่อไปนี้รายงานว่าข้อผิดพลาดเกิดขึ้นในสคริปต์หลังการติดตั้ง
curl -X PUT -globoff #predefined.otherSettings.statusSettings.urlStatus#
-H "Content-Type: application/json" -d '{"deployStatus":{"id":"48"}}'
-cert #predefined.otherSettings.statusSettings.certLocation#/cert.pem
-key #predefined.otherSettings.statusSettings.certLocation#/key.pem
-cacert #predefined.otherSettings.statusSettings.certLocation#/ca-bundle.crt
Windows
สำหรับ Wiindows คุณสามารถนำเข้าสคริปต์ LXCA.psm1 แล้วเรียกใช้คำสั่งต่อไปนี้เพื่อรายงานสถานะ
initializeRestClient
เริ่มการทำงานของไคลเอ็นต์ REST ใช้รูปแบบคำสั่งต่อไปนี้ในการรันคำสั่งนี้ ต้องรันคำสั่งนี้ก่อนที่จะรันคำสั่งการรายงาน
initializeRestClient
testLXCAConnection
ตรวจสอบว่าXClarity Administrator สามารถเชื่อมต่อกับเซิร์ฟเวอร์โฮสต์ได้ ใช้รูปแบบคำสั่งต่อไปนี้ในการรันคำสั่งนี้ คำสั่งนี้เป็นตัวเลือกเสริม แต่แนะนำให้ใช้ในสคริปต์การติดตั้งก่อนที่จะรันคำสั่งการรายงาน
testLXCAConnection –masterIP "#predefined.otherSettings.lxcaIp#"
reportWorkloadDeploymentSucceeded
รายงานข้อความสำเร็จ-เสร็จสมบูรณ์ซึ่งจะได้รับการบันทึกไว้ในบันทึกงานของXClarity Administrator ใช้รูปแบบคำสั่งต่อไปนี้ในการรันคำสั่งนี้
คำแนะนำหากมาโคร#predefined.unattendSettings.reportWorkloadNotComplete# รวมอยู่ในไฟล์แบบอัตโนมัติหรือสคริปต์หลังการติดตั้งแบบกำหนดเอง ให้รวมคำสั่ง reportWorkloadDeploymentSucceeded ไว้ในสคริปต์หลังการติดตั้งเพื่อแสดงสถานะสำเร็จ-เสร็จสมบูรณ์ ไม่อย่างนั้น XClarity Administrator จะรายงานสถานะเสร็จสมบูรณ์โดยอัตโนมัติหลังจากรันสคริปต์หลังการติดตั้งครบหมดแล้ว reportWorkloadDeploymentSucceeded -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#"reportWorkloadDeploymentRunningWithWarning
รายงานข้อความคำเตือนซึ่งจะได้รับการบันทึกไว้ในบันทึกงานของ XClarity Administrator ใช้รูปแบบคำสั่งต่อไปนี้ในการรันคำสั่งนี้
reportWorkloadDeploymentRunningWithWarning -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" –WarningMessage "<message_text>"reportWorkloadDeploymentFailed
รายงานข้อความล้มเหลวซึ่งจะได้รับการบันทึกไว้ในบันทึกงานของ XClarity Administrator ใช้รูปแบบคำสั่งต่อไปนี้ในการรันคำสั่งนี้
reportWorkloadDeploymentFailed -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -ErrorMessage "<message_text>"reportCustomPostInstallScriptError
รายงานข้อความข้อผิดพลาดของสคริปต์หลังการติดตั้งซึ่งจะได้รับการบันทึกไว้ในบันทึกงานของ XClarity Administrator ใช้รูปแบบคำสั่งต่อไปนี้ในการรันคำสั่งนี้
reportCustomPostInstallScriptError -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -Message "<message_text>"reportWorkloadDeploymentMessage
รายงานข้อความทั่วไปซึ่งจะได้รับการบันทึกไว้ในบันทึกงานของ XClarity Administrator โดยไม่ส่งผลต่อสถานะการปรับใช้ ใช้รูปแบบคำสั่งต่อไปนี้ในการรันคำสั่งนี้
reportWorkloadDeploymentMessage -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -Message "<message_text>"
โดยที่ <message_text> คือข้อความที่คุณต้องการให้แสดงต่อ XClarity Administrator สำหรับแต่ละเงื่อนไขสถานะ
โปรดทราบว่าคำสั่งเหล่านี้ใช้มาโครแบบกำหนดไว้ล่วงหน้าสำหรับที่อยู่ IP ของอินสแตนซ์ XClarity Administrator (#predefined.otherSettings.lxcaIp#) และสำหรับ UUID ของเซิร์ฟเวอร์โฮสต์ที่จะปรับใช้ระบบปฏิบัติการ (#predefined.hostPlatforms.uuid#)
ตัวอย่างต่อไปนี้เป็นสคริปต์การติดตั้ง PowerShell ซึ่งจะติดตั้ง Java และรายงานข้อผิดพลาดหากติดตั้งไม่สำเร็จ
import-module C:\windows\system32\WindowsPowerShell\v1.0\Modules\LXCA\LXCA.psm1
initializeRestClient
testLXCAConnection –masterIP "#predefined.otherSettings.lxcaIp#"
Write-Output "Reporting status to Lenovo XClarity Administator..."
reportWorkloadDeploymentMessage -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -Message "Installing Java"
Write-Output "Install Java...."
Invoke-Command -ScriptBlock {#predefined.otherSettings.deployDataAndSoftwareLocation#\jre-8u151-windows-x64.exe
[INSTALLCFG=#predefined.otherSettings.deployDataAndSoftwareLocation#\java_configfile.cfg] /s}
if ($LastExitCode -ne 0) {
reportWorkloadDeploymentFailed -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -ErrorMessage "Java could not be installed"
}
Write-Output "Completed install of Java for Administrator user."