Empacotando recursos do Liberty
Os recursos do Liberty podem ser empacotados em um ou mais arquivos compactados (.zip) para implementação pelo gerenciador de tarefa do WebSphere Application Server, Network Deployment Versão 9.0. O agrupamento dos recursos em arquivos compactados afeta o escopo e o compartilhamento dos recursos. Para que os recursos nos arquivos compactados sejam implementados corretamente, os nomes dos caminhos dos recursos devem atender as regras do gerenciador de tarefa.
Antes de Iniciar
"O empacotamento de um servidor Liberty a partir do prompt de comandos" descreve como executar o comando package para criar um arquivo compactado que contém um tempo de execução do Liberty, arquivos no diretório de recursos compartilhados um servidor integrado e os aplicativos integrados no servidor. Se desejar implementar uma instalação do Liberty desse tipo e não precisar colocar a instalação em um diretório do projeto, leve em consideração usar o comando package para criar o arquivo compactado. Para outros tipos de instalações do Liberty, você deve criar manualmente um ou mais arquivos compactados.
Sobre Esta Tarefa
Os tipos de recursos suportados do Liberty incluem projeto, tempo de execução, servidor Liberty, binário de aplicativo e software development kit (SDK). Para obter mais informações, leia "Recursos do Liberty."
O gerenciador de tarefa distingue entre os diferentes tipos de recursos do Liberty em um arquivo compactado usando as seguintes regras:
Procedimento
Determine o tipo de instalação do Liberty que você precisa, e então crie um ou mais arquivos compactados (.zip) que contenham recursos do Liberty.
Exemplo
- Este exemplo ilustra primeiro como empacotar uma instalação autocontida do Liberty para a implementação em um ou mais
hosts do servidor. Ele ilustra, então, como empacotar uma nova versão
de um servidor e do aplicativo que o suporta.A estrutura básica dos recursos do Liberty é a seguinte:
- Host do servidor
- Recursos de trabalho
- Projeto
- Tempo de execução do Liberty
- Servidor 1 do Liberty
- Binário do aplicativo 1
- Servidor 2 do Liberty
- Binário do aplicativo 2
- Servidor 1 do Liberty
- Tempo de execução do Liberty
- Projeto
- Recursos de trabalho
As seguintes suposições se aplicam a esta instalação de exemplo:- Estrutura quando implementada
- Esta instalação de exemplo do Liberty
contém a seguinte estrutura de diretório nos hosts do servidor:
[-] liberty [-] working [-] samples [-] wlp-08.05.00.00 [+] bin [ ] clients [+] dev [ ] lafiles [+] lib [+] templates [-] usr [-] servers [-] SecuritySample-01.00-01 o bootstrap.properties o server.env o server.xml [ ] apps o SecuritySample-01.00.war [-] ServletSample-01.00-01 o bootstrap.properties o server.env o server.xml [ ] apps o ServletSample-01.00.war
- Estrutura do pacote para a implementação inicial
- Os seguintes diretórios estão incluídos no arquivo compactado
(.zip) para a implementação inicial da instalação do Liberty.
O diretório do projeto,
samples, está localizado na raiz do
arquivo compactado.
[-] samples [-] wlp-08.05.00.00 [+] bin [ ] clients [+] dev [ ] lafiles [+] lib [+] templates [-] usr [-] servers [-] SecuritySample-01.00-01 o bootstrap.properties o server.env o server.xml [ ] apps o SecuritySample-01.00.war [-] ServletSample-01.00-01 o bootstrap.properties o server.env o server.xml [ ] apps o ServletSample-01.00.war
Se um servidor precisar usar um SDK (JRE) que não seja o padrão, o JRE do nível do sistema operacional, você deverá especificar o local do JRE apropriado em um arquivo server.env no nível do tempo de execução ou do servidor, como, por exemplo:JAVA_HOME=/opt/jre-06.00.31
- Estrutura do pacote que contém a nova versão do servidor e do aplicativo
- Os seguintes diretórios e arquivos estão incluídos em um arquivo compactado
(.zip) para uma nova versão de um servidor e do aplicativo
que o suporta. O diretório do projeto,
samples, está localizado na raiz do
arquivo compactado.
[-] samples [-] wlp-08.05.00.00 [-] usr [-] servers [-] SecuritySample-01.01-01 o bootstrap.properties o server.env o server.xml [ ] apps o SecuritySample-01.01.war
- Host do servidor
- Este exemplo ilustra primeiro como empacotar os recursos do Liberty para um ambiente
em que cada host do servidor contém uma instância compartilhada de
um SDK (JRE), uma instância compartilhada única do tempo de execução do Liberty e dois servidores de
trabalho isolados que se apoiam no SDK compartilhado e no tempo de execução compartilhado do Liberty. Ele ilustra, então, como empacotar uma nova versão
de um servidor e do aplicativo que o suporta. O uso do gerenciador de tarefa é obrigatório para ambientes
que incluem servidores isolados do Liberty;
não é possível usar o script do servidor do Liberty para gerenciar os servidores.
Para obter informações sobre como compartilhar definições de configuração do servidor nos níveis do host e da rede, consulte a documentação do Liberty sobre como utilizar inclusões na configuração.
A estrutura básica dos recursos do Liberty é a seguinte. Usar essa abordagem ajuda a simplificar a manutenção e a conservar o espaço em disco, à medida que servidores adicionais forem implementados no futuro.- Hosts do servidor
- Recursos compartilhados
- SDK (JRE)
- Tempo de execução do Liberty
- Recursos de trabalho
- Projeto
- Servidor 1 do Liberty
- Binário do aplicativo 1
- Servidor 2 do Liberty
- Binário do aplicativo 2
- Servidor 1 do Liberty
- Projeto
- Recursos compartilhados
As seguintes suposições se aplicam a esta instalação de exemplo:- Estrutura quando implementada
- Este ambiente de exemplo do Liberty
tem a seguinte estrutura de diretório em cada host do servidor:
[-] liberty [-] shared [-] jre-06.00.31 [+] bin [+] lib [-] wlp-08.05.00.00 [+] bin [ ] clients [+] dev [ ] lafiles [+] lib [+] templates [-] working [-] samples [-] servers [-] SecuritySample-01.00-01 o bootstrap.properties o server.env o server.xml [ ] apps o SecuritySample-01.00.war [-] ServletSample-01.00-01 o bootstrap.properties o server.env o server.xml [ ] apps o ServletSample-01.00.war
Cada servidor isolado é configurado para usar o SDK (JRE) compartilhado e o tempo de execução compartilhado do Liberty. Os locais dos recursos compartilhados são armazenados em cada arquivo server.env; por exemplo:
Os caminhos incluem a variável WLP_SHARED_DIR do WebSphere em vez de um caminho codificado permanentemente. Quando os servidores isolados são implementados nos hosts do servidor, o gerenciador de tarefa substitui ${WLP_SHARED_DIR} pelo caminho do diretório compartilhado real; neste caso /liberty/shared.JAVA_HOME=${WLP_SHARED_DIR}/jre-06.00.31 WLP_RUNTIME_DIR=${WLP_SHARED_DIR}/wlp-08.05.00.00
- Estrutura de pacotes para a implementação inicial
- Os seguintes diretórios e arquivos estão incluídos no arquivo compactado
(.zip) para a implementação inicial do SDK
(JRE) e do tempo de execução do Liberty
no diretório de recursos compartilhados definido pela variável WLP_SHARED_DIR
do WebSphere. Como é provável que o SDK e o tempo de execução do Liberty serão usados
em projetos, esses recursos não são incluídos em um diretório
do projeto. Neste exemplo, o SDK e o tempo de execução do Liberty são empacotados
em um arquivo compactado único.
Entretanto, você pode empacotá-los em dois
arquivos compactados separados e enviar duas tarefas de instalação
separadas.
[-] jre-06.00.31 [+] bin [+] lib [-] wlp-08.05.00.00 [+] bin [ ] clients [+] dev [ ] lafiles [+] lib [+] templates
Os seguintes diretórios e arquivos estão incluídos no arquivo compactado (.zip) para a implementação inicial dos servidores do Liberty e de seus aplicativos no diretório ativo de recursos definido pela variável WLP_WORKING_DIR do WebSphere. O diretório do projeto, samples, está localizado na raiz do arquivo compactado.
[-] samples [-] servers [-] SecuritySample-01.00-01 o bootstrap.properties o server.env o server.xml [ ] apps o SecuritySample-01.00.war [-] ServletSample-01.00-01 o bootstrap.properties o server.env o server.xml [ ] apps o ServletSample-01.00.war
- Estrutura do pacote para atualizar o servidor e o aplicativo
- Os seguintes diretórios e arquivos estão incluídos em um arquivo compactado
(.zip) para a implementação posterior de uma nova versão
de um servidor e de seu aplicativo no diretório ativo de recursos definido pela
variável WLP_WORKING_DIR do WebSphere. O diretório do projeto,
samples, está localizado na raiz do
arquivo compactado.
[-] samples [-] servers [-] SecuritySample-01.01-01 o bootstrap.properties o server.env o server.xml [ ] apps o SecuritySample-01.01.war
- Hosts do servidor
- Restrição: O Exemplo 3 não funciona no sistema operacional Windows.
Este exemplo ilustra primeiro como empacotar os recursos do Liberty para um ambiente em que o SDK (JRE), o tempo de execução do Liberty e diversos aplicativos são armazenados em um disco compartilhado e dois servidores isolados (ativos) são armazenados em cada host do servidor. Ele ilustra, então, como empacotar uma nova versão de um servidor e do aplicativo que o suporta. O uso do gerenciador de tarefa é obrigatório para ambientes que incluem servidores isolados do Liberty. Não é possível usar o script de servidor do Liberty para gerenciar os servidores. Para obter informações sobre como compartilhar definições de configuração do servidor nos níveis do host e da rede, consulte a documentação do Liberty sobre como utilizar inclusões na configuração.
A estrutura básica dos recursos do Liberty é a seguinte. Usar essa abordagem ajudará a simplificar a manutenção e a conservar o espaço em disco, quando forem implementados servidores adicionais no futuro.- Disco compartilhado
- Recursos compartilhados
- SDK (JRE)
- Tempo de execução do Liberty
- Binário do aplicativo 1
- Binário do aplicativo 2
- Recursos compartilhados
- Hosts do servidor
- Recursos de trabalho
- Projeto
- Servidor 1 do Liberty
- Servidor 2 do Liberty
- Projeto
- Recursos de trabalho
As seguintes suposições se aplicam a esta instalação de exemplo:- Estrutura quando implementada
- Este exemplo do ambiente do Liberty
contém as seguintes estruturas de diretório no disco compartilhado e nos hosts do
servidor:
Disco compartilhado [-] liberty [-] shared [-] jre-06.00.31 [+] bin [+] lib [-] wlp-08.05.00.00 [+] bin [ ] clients [+] dev [ ] lafiles [+] lib [+] templates [-] samples [ ] apps o SecuritySample-01.00.war o ServletSample-01.00-01.war
Hosts do servidor [-] liberty [-] working [-] samples [-] servers [-] SecuritySample-01.00-01 o bootstrap.properties o server.env o server.xml [-] ServletSample-01.00-01 o bootstrap.properties o server.env o server.xml
Cada servidor isolado é configurado para usar o SDK (JRE) compartilhado e o tempo de execução compartilhado do Liberty. Os locais dos recursos compartilhados são armazenados em cada arquivo server.env; por exemplo:
Os caminhos incluem a variável WLP_SHARED_DIR do WebSphere em vez de um caminho codificado permanentemente. Quando os servidores isolados são implementados nos hosts do servidor, o gerenciador de tarefa substitui ${WLP_SHARED_DIR} pelo caminho do diretório compartilhado real; neste caso /liberty/shared. Em cada host do servidor, o diretório de recursos compartilhados remoto é montado em /liberty/shared.JAVA_HOME=${WLP_SHARED_DIR}/jre-06.00.31 WLP_RUNTIME_DIR=${WLP_SHARED_DIR}/wlp-08.05.00.00
Como os aplicativos estão no armazenamento compartilhado separado dos servidores, o elemento do aplicativo em cada arquivo server.xml deve incluir o caminho completo para o arquivo WAR correspondente; por exemplo:<application id="SecuritySample" location="/liberty/shared/apps/SecuritySample-01.00.war" name="SecuritySample" type="war"/>
Para minimizar as mudanças no arquivo server.xml, o diretório do aplicativo e as informações de versão podem ser armazenado em duas propriedades em cada arquivo bootstrap.properties do servidor; por exemplo:apps.dir=${WLP_SHARED_DIR}/${CURRENT_PROJECT}/apps security.sample.version=1.00
Será possível, então, incluir a variável WLP_SHARED_DIR do WebSphere e a variável CURRENT_PROJECT do gerenciador de tarefa integrado no elemento do aplicativo em cada arquivo server.xml; por exemplo:<application id="SecuritySample" location="${apps.dir}/SecuritySample-${security.sample.version}.war" name="SecuritySample" type="war"/>
- Estrutura de pacotes para a implementação inicial
- Os seguintes diretórios e arquivos estão incluídos no arquivo compactado
(.zip) para a implementação inicial do SDK
(JRE), do tempo de execução do Liberty e
dos aplicativos no local do disco compartilhado definido pela variável
WLP_SHARED_DIR do WebSphere. Como é provável que SDK e o tempo de execução do Liberty sejam compartilhadas em projetos, esses recursos não são incluídos em um diretório do projeto. Os aplicativos
são incluídos no diretório de projeto samples. Neste exemplo,
você empacota todos os recursos compartilhados em um arquivo compactado
único. Entretanto, você deve empacotá-los em três arquivos compactados separados
e enviar três tarefas de instalação separadas.
[-] jre-06.00.31 [+] bin [+] lib [-] wlp-08.05.00.00 [+] bin [ ] clients [+] dev [ ] lafiles [+] lib [+] templates [-] samples [ ] apps o SecuritySample-01.00.war o ServletSample-01.00.war
Os seguintes diretórios e arquivos estão incluídos no arquivo compactado (.zip) para a implementação inicial dos servidores do Liberty no diretório ativo de recursos definido pela variável WLP_WORKING_DIR do WebSphere:
[-] samples [-] servers [-] SecuritySample-01.01-01 o bootstrap.properties o server.env o server.xml [ ] ServletSample-01.00-01 o bootstrap.properties o server.env o server.xml
- Estrutura dos pacotes para a atualização do aplicativo e do servidor
- Os seguintes diretórios e arquivos estão incluídos em um arquivo compactado
(.zip) para a implementação posterior de uma nova versão
de um aplicativo no local do disco compartilhado definido pela variável
WLP_SHARED_DIR do WebSphere. O diretório do projeto, samples,
está localizado na raiz do arquivo:
[-] samples [ ] apps o SecuritySample-01.01.war
Os seguintes diretórios e arquivos estão incluídos em um arquivo compactado (.zip) para a implementação posterior de uma nova versão de um servidor no diretório ativo de recursos definido pela variável WLP_WORKING_DIR do WebSphere. O diretório do projeto, samples, está localizado na raiz do arquivo compactado.
[-] samples [-] servers [-] SecuritySample-01.01-01 o bootstrap.properties o server.env o server.xml
Você deve alterar o elemento do aplicativo no arquivo server.xml para incluir a Versão 1.01 do arquivo WAR; por exemplo:
<application id="SecuritySample" location="/liberty/shared/apps/SecuritySample-01.01.war" name="SecuritySample" type="war"/>
Como alternativa, se o arquivo bootstrap.properties contiver as informações da versão do aplicativo, você deverá alterar o arquivo de forma apropriada; por exemplo:
security.sample.version=1.01
Em seguida, você usa as informações da versão atualizada no elemento do aplicativo no arquivo server.xml; por exemplo:
<application id="SecuritySample" location="${apps.dir}/SecuritySample-${security.sample.version}.war" name="SecuritySample" type="war"/>
- Disco compartilhado
O que Fazer Depois
Configure as variáveis que ativam o gerenciador de tarefa para instalar e procurar recursos do Liberty.