Adicionando relatório de status personalizado aos scripts de instalação
As macros predefinidas recomendadas no arquivo sem supervisão reportam o status de implantação do sistema operacional final e o status ao baixar e executar scripts pós-instalação. Você pode incluir relatórios de status adicionais nos scripts pós-instalação.
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
Em que <status_ID> pode ser um dos valores a seguir.
44. Implantação de carga de trabalho bem-sucedida
45. Implantação de carga de trabalho em execução com aviso
46. Falha na implantação da carga de trabalho
47. Mensagem de implantação da carga de trabalho
48. Erro de script pós-instalação personalizado
Observe que o comando curl usa macros predefinidas para a URL HTTPS URL que o Lenovo XClarity Administrator usa para relatório de status (predefined.otherSettings.statusSettings.urlStatus) e para a pasta que contém os certificados necessários para acessar o serviço Web urlStatus do SO do host na primeira inicialização (predefined.otherSettings.statusSettings.certLocation). O exemplo a seguir relata um erro no script pós-instalação.
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
No Windows, é possível importar o script LXCA.psm1 e chamar os seguintes comandos para relatar status.
initializeRestClient
Inicializa o cliente REST. Use a seguinte sintaxe para executar este comando. Esse comando é necessário antes de executar os comandos de geração de relatórios.
initializeRestClient
testLXCAConnection
Verifica se o XClarity Administrator pode se conectar ao servidor host. Use a seguinte sintaxe para executar este comando. Esse comando é opcional, mas recomendado no script de instalação antes de executar os comandos de geração de relatórios.
testLXCAConnection –masterIP "#predefined.otherSettings.lxcaIp#"
reportWorkloadDeploymentSucceeded
Relata uma mensagem de conclusão bem-sucedida para ser registrada no log de tarefas doXClarity Administrator. Use a seguinte sintaxe para executar este comando.
Dicase a macro#predefined.unattendSettings.reportWorkloadNotComplete# for incluída em um arquivo sem supervisão personalizado ou em um script pós-instalação, inclua o comando reportWorkloadDeploymentSucceeded no script pós-instalação para indicar a conclusão bem-sucedida. Caso contrário, XClarity Administrator reportará automaticamente um status concluído depois que todos os scripts pós-instalação forem executados. reportWorkloadDeploymentSucceeded -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#"reportWorkloadDeploymentRunningWithWarning
Relata uma mensagem de aviso para ser registrada no log de tarefas doXClarity Administrator. Use a seguinte sintaxe para executar este comando.
reportWorkloadDeploymentRunningWithWarning -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" –WarningMessage "<message_text>"reportWorkloadDeploymentFailed
Relata uma mensagem de falha para ser registrada no log de tarefas doXClarity Administrator. Use a seguinte sintaxe para executar este comando.
reportWorkloadDeploymentFailed -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -ErrorMessage "<message_text>"reportCustomPostInstallScriptError
Relata uma mensagem de scrip pós-instalação para ser registrada no log de tarefas doXClarity Administrator. Use a seguinte sintaxe para executar este comando.
reportCustomPostInstallScriptError -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -Message "<message_text>"reportWorkloadDeploymentMessage
Relata uma mensagem geral para ser registrada no log de tarefas do XClarity Administrator sem afetar o estado da implantação. Use a seguinte sintaxe para executar este comando.
reportWorkloadDeploymentMessage -masterIP "#predefined.otherSettings.lxcaIp#"
-UUID "#predefined.hostPlatforms.uuid#" -Message "<message_text>"
Em que <message_text> é a mensagem para a qual você deseja retornar XClarity Administrator para cada condição de status.
Observe que esses comandos usam macros predefinidas para o endereço IP da instância do XClarity Administrator (#predefined.otherSettings.lxcaIp#) e para o UUID do servidor de host ao qual o sistema operacional deve ser implantado (#predefined.hostPlatforms.uuid#).
O exemplo a seguir é um script de instalação do PowerShell que instala Java e relata um erro se a instalação falhar
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."