Em um ambiente de gerenciamento flexível, é possível usar o gerenciador de tarefa para instalar, atualizar e desinstalar o IBM WebSphere Application Server usando a linha de comandos com um arquivo de resposta.
Antes de Iniciar
Antes de instalar o WebSphere Application Server usando o gerenciador de tarefa, assegure-se de que tenha o WebSphere Application Server Versão 9.0 instalado na máquina primária.
O perfil do usuário deve ter a autorização *JOBCTL para usar o gerenciador de instalação centralizado (CIM) nos destinos IBM i.
Nota: Tarefas CIM para instalar, desinstalar e atualizar o Installation Manager não são suportadas em destinos z/OS. Você deve primeiro instalar o Installation Manager nos destinos z/OS antes de usar as tarefas de ofertas de gerenciamento CIM.
Sobre Esta Tarefa
Para instalar o WebSphere Application Server, use wsadmin para executar o comando manageOfferings.
O comando manageOfferings usa um arquivo de resposta e um conjunto de chaves de segurança. É possível configurar parâmetros no arquivo de resposta para o diretório no qual instalar o produto na máquina de destino, especificar onde armazenar dados do produto na máquina de destino e especificar a URL do repositório de onde fazer o download do produto. Dependendo de sua configuração de segurança, você também poderá especificar credenciais do conjunto de chaves para efetuar login no repositório do produto.
Depois que o gerenciador de instalação centralizado conclui com êxito o processo de instalação em um
nó remoto, ele exclui os arquivos de imagem de instalação localizados
no local temporário especificado durante o processo de instalação. Se a instalação for malsucedida, os arquivos permanecerão no local temporário
para serem utilizados na determinação do que causou o erro de instalação. No entanto, os
arquivos podem ser excluídos com segurança.
Configurações suportadas: O IBM Installation Manager 1.8.5 ou posterior é necessário.sptcfg
Procedimento
- Inicie o gerenciador de tarefas. Para obter instruções detalhadas, consulte sobre a inicialização do gerenciador de tarefa.
- Registre um host com o gerenciador de tarefa. Antes de instalar o produto em uma máquina de destino, você deve registrá-lo com o gerenciador de tarefa. Use a ferramenta wsadmin para executar o comando registerHost.
- É possível registrar o host com uma chave privada como, por exemplo:
- Utilizando Jacl:
$AdminTask registerHost {-host hostname -hostProps
{{privateKeyFile filename} {username root }{saveSecurity true}}}
- Utilizando Jython:
AdminTask.registerHost('[-host hostname -hostProps
[[username user][privateKeyFile filename][saveSecurity true]]]')
- É possível registrar o host com um nome de usuário e uma senha como, por exemplo:
- Utilizando Jacl:
$AdminTask registerHost {-host hostname -hostProps { {password xxxxx} { username root } {saveSecurity true}}}
- Utilizando Jython:
AdminTask.registerHost('[-host hostname -hostProps [[password xxxxx][username user]
[saveSecurity true]]]')
- Opcional: Teste a conexão com os destinos nos quais deseja instalar o produto. Antes de instalar o produto em uma máquina de destino, você poderá testar a conexão.
- Se você testar a conexão sem especificar credenciais, o teste utilizará o padrão para credenciais existentes como, por exemplo:
- É possível enviar a tarefa de conexão de Teste com um nome de usuário e uma senha como, por exemplo:
- Utilizando Jacl:
$AdminTask submitJob {-jobType testConnection -targetList
{hostname} -username username -password password}
- Utilizando Jython:
AdminTask.submitJob('-jobType testConnection -targetList
[hostname] -username username -password password')
- É possível enviar a tarefa de conexão de Teste com um nome de usuário e um arquivo-chave privado como, por exemplo:
- Utilizando Jacl:
$AdminTask submitJob {-jobType testConnection -targetList
{hostname} -username username -privateKeyFile private_key_filename}
- Utilizando Jython:
AdminTask.submitJob('-jobType testConnection -targetList
[hostname] -username username -privateKeyFile C:\temp\private_key_filename')
- Execute opcionalmente uma tarefa de Inventário para ver o que está instalado em sua máquina de destino.
- Envie uma tarefa de Inventário com um nome de usuário e uma senha.
- Utilizando Jacl:
$AdminTask submitJob {-jobType inventory -targetList {hostname}
-username username -password password}
- Utilizando Jython:
AdminTask.submitJob('-jobType inventory -targetList [hostname]
-username username -password password')
- Envie uma tarefa de Inventário sem um nome de usuário e uma senha.
- Opcional: Instale ou atualize o Installation Manager em sua máquina de destino.
Se você já tiver a versão correta de Installation Manager em sua máquina de destino, é possível prosseguir para a próxima etapa. Para obter informações adicionais, consulte sobre o gerenciamento do Installation Manager utilizando o gerenciador de tarefa.
- Se você utilizar a segurança SSH, instale seu arquivo de chave pública.
É possível instalar o arquivo de chave pública utilizando as mesmas credenciais que as do gerenciador de tarefa. Esta etapa não se aplica aos destinos IBM i.
- Execute a tarefa de administração installSSHPublicKey como, por exemplo:
- Utilizando Jacl:
$AdminTask submitJob {-jobType installSSHPublicKey -targetList {target}
-jobParams { {publicKeyFile keyfilepath} } -description "test installSSHPublicKey"}
- Utilizando Jython:
AdminTask.submitJob ('-jobType installSSHPublicKey -targetList [target]
-jobParams [[publicKeyFile keyfilepath]] -description "test installSSHPublicKey"')
- Configure um arquivo de resposta para o comando manageOfferings.
- Crie um arquivo de resposta. É possível criar um arquivo de resposta utilizando o Installation Manager. Para obter informações adicionais, consulte sobre a criação de um arquivo de resposta com Installation Manager.
- É possível editar o arquivo de resposta para incluir informações sobre sua máquina de destino.
- É possível utilizar o arquivo de resposta para instalar qualquer oferta que seja compatível com o Installation Manager. Para obter informações adicionais, consulte o centro de informações do Installation.
![[Windows]](../images/windows.gif)
Crie um arquivo de resposta que especifique o parâmetro do perfil da oferta como
WebSphere Application Server, Network Deployment no Windows; por exemplo:
<?xml version="1.0" encoding="UTF-8"?>
<agent-input acceptLicense='true' clean='true' temporary='true'>
<server>
<repository location='<MY REPOSITORY LOCATION>'/>
</server>
<profile installLocation='<LOCATION TO INSTALL PRODUCT ON TARGET MACHINE>' id='IBM WebSphere Application Server - ND'>
<data key='cic.selector.nl' value='en'/>
<data key='eclipseLocation' value='<LOCATION TO INSTALL PRODUCT DATA ON TARGET MACHINE>'/>
<data key='user.select.64bit.image,com.ibm.websphere.ND.v90' value='false'/>
</profile>
<install modify='false'>
<offering profile='IBM WebSphere Application Server - ND' features='core.feature' id='com.ibm.websphere.ND.v90' />
</install>
<preference value='false' name='PassportAdvantageIsEnabled'/>
<preference value='30' name='com.ibm.cic.common.core.preferences.connectTimeout'/>
<preference value='0' name='com.ibm.cic.common.core.preferences.downloadAutoRetryCount'/>
<preference value='C:\Program Files\IBM\WebSphere\AppServer-Shared' name='com.ibm.cic.common.core.preferences.eclipseCache'/>
<preference value='false' name='com.ibm.cic.common.core.preferences.http.disablePreemptiveAuthentication'/>
<preference value='false' name='com.ibm.cic.common.core.preferences.keepFetchedFiles'/>
<preference value='true' name='com.ibm.cic.common.core.preferences.preserveDownloadedArtifacts'/>
<preference value='30' name='com.ibm.cic.common.core.preferences.readTimeout'/>
<preference value='false' name='com.ibm.cic.common.core.preferences.searchForUpdates'/>
<preference value='false' name='com.ibm.cic.common.core.preferences.ssl.nonsecureMode'/>
<preference value='true' name='http.ntlm.auth.enableIntegrated.win32'/>
<preference value='NTLM' name='http.ntlm.auth.kind'/>
<preference value='true' name='offering.service.repositories.areUsed'/>
</agent-input>
- Salve o arquivo de resposta como filename.txt.
- Execute o comando manageOfferings. Para que a tarefa seja executada com êxito, você deve especificar acceptLicense TRUE.
- Abra o wsadmin a partir do diretório bin perfil do gerenciador de tarefa.
- Insira o comando manageOfferings no wsadmin. Por exemplo:
- Utilizando Jacl:
$AdminTask submitJob {-jobType manageOfferings -targetList hostname -username user -password *******
-jobParams
{{responseFile <RESPONSE FILE LOCATION>} {acceptLicense TRUE} {IMPath <IM install location>}
{keyringFile <key ring file location>} {keyringPassword pwd} }}
- Utilizando Jython:
AdminTask.submitJob ('-jobType manageOfferings -targetList hostname -username user -password *******
-jobParams
[[responseFile <RESPONSE FILE LOCATION>] [acceptLicense TRUE][IMPath <IM install location>]
[keyringFile <key ring file location>] [keyringPassword pwd]]')
O comando manageOfferings faz pull do arquivo de resposta criado nesta tarefa e inicia a instalação do produto.
O parâmetro a seguir para essa tarefa é obrigatório:
- responseFile: (Nome do caminho do arquivo de resposta) Este parâmetro contém o nome do caminho completo para o arquivo de resposta da oferta na máquina do gerenciador de tarefa.
Os parâmetros a seguir para essa tarefa são opcionais:
- IMPath: (Caminho do IBM Installation Manager) Este parâmetro contém o caminho completo
do IBM Installation Manager na máquina remota.
Utilize esse parâmetro se você tiver mais do que uma instância do Installation
Manager em sua máquina remota. Se você tiver somente uma instância do Installation
Manager instalada, é possível deixar esse parâmetro vazio porque a
tarefa pode localizá-lo. Especifique se a máquina de destino tem mais do que
uma instância do Installation Manager instalada.
- keyringFile: (Arquivo do conjunto de chaves do IBM Installation Manager): Se o repositório do pacote exigir um arquivo do conjunto de chaves para autenticação, especifique o nome completo do arquivo do conjunto de chaves na máquina do gerenciador de tarefa.
- keyringPassword: (Senha do conjunto de chaves) Se o arquivo do conjunto de chaves estiver protegido por senha, especifique a senha do conjunto de chaves.
- secureStorageFile: (Arquivo de armazenamento seguro) Se estiver usando um arquivo seguro para armazenar credenciais do usuário, especifique o nome do caminho completo do arquivo de armazenamento seguro.
- masterPasswordFile: (Arquivo de senha principal) Se estiver usando um arquivo de senha principal que contém uma passphrase principal, como "Este texto é a passphrase de um arquivo de senha principal", especifique o nome do caminho completo do arquivo de senha principal.
- Opcional: Execute as tarefas administrativas collectFile e distributeFile.
Como opção, transfira arquivos para ou da máquina de destino e exclua arquivos na máquina de destino. Por exemplo, se a instalação falhar, será possível desejar transferir os arquivos de log da máquina de destino para entender, porque a tarefa falhou. Ao usar essas tarefas administrativas, é possível especificar caracteres curinga no nome do arquivo.
Evitar Problemas: O destino deve ser um diretório, ele não pode ser um arquivo.
gotcha
- Para coletar um arquivo de hosts remotos:
- Utilizando Jacl:
$AdminTask submitJob {-jobType collectFile -targetList hostname -jobParams
{{source D:\\WAS85\\logs\\manageprofiles\\response.log} {destination log}}}
- Utilizando Jython:
AdminTask.submitJob('-jobType collectFile -targetList hostname -jobParams
[[source D:\\WAS85\\logs\\manageprofiles\\response.log] [destination log]')
- Para distribuir um arquivo para hosts remotos:
- Utilizando Jacl:
$AdminTask submitJob{-jobType distributeFile -targetList hostname
-jobParams {{source test.txt}{destination D:\\temp\\test.txt} }}
- Utilizando Jython:
AdminTask.submitJob('-jobType distributeFile -targetList hostname
-jobParams [[source test.txt][destination D:\\temp\\test.txt] ]')
- Para excluir um arquivo em hosts remotos:
- Utilizando Jacl:
$AdminTask submitJob{-jobType removeFile -targetList hostname
-jobParams {{location D:\\temp\\test.txt}}}
- Utilizando Jython:
AdminTask.submitJob('-jobType removeFile -targetList hostname
-jobParams [[location D:\\temp\\test.txt] ]')
- Crie um perfil para o produto recém-instalado na máquina de destino.
Restrição: Esta etapa não se aplica aos destinos z/OS.
Especifique os seguintes parâmetros:
- targetList: A máquina em que você deseja criar um novo perfil
- wasHome: O diretório no qual você instalou o produto na máquina que está executando o gerenciador de tarefa
- responsefile: Insira o diretório no qual você salvou seu arquivo de resposta. Esse arquivo de texto fornece os parâmetros e as informações do perfil a ser criado.
Por exemplo:
- Utilizando Jacl:
$AdminTask submitJob {-jobType manageprofiles -targetList hostname
-jobParams {{wasHome D:\\WAS70GA} {responseFile D:\\temp\\mp1.txt}}}
- Utilizando Jython:
$AdminTask submitJob {-jobType manageprofiles -targetList
hostname
-jobParams {{wasHome D:\\WAS70GA} {responseFile D:\\temp\\mp1.txt}}}
Resultados
Você instalou o produto em uma máquina de destino e criou um perfil usando o gerenciador de tarefa.
O que Fazer Depois
Ao usar o gerenciador de tarefa, é possível executar qualquer comando ou script no computador de destino.
- Utilizando Jacl:
$AdminTask runCommand {-host hostname -jobParams
{{command command_to_run}{workingDir working_directory_on_remote_host}}}
- Utilizando Jython:
$AdminTask.runCommand ('-host hostname -jobParams
[[command command_to_run][workingDir working_directory_on_remote_host]]')