Páginas filhas
  • Instalação do Servidor - Server (JBoss versão 4.2.3)

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

O Intellector é uma solução para a gestão de processos decisórios, fornecendo uma interação fácil através de uma linguagem simples e prática. Este manual descreve passa-a-passo o processo de instalação do servidor Intellector para o JBoss Application Server. Acesse o manual aqui.

 

Introdução

O Intellector é uma solução para a gestão de processos decisórios, fornecendo uma interação fácil através de uma linguagem simples e prática. Este manual descreve passa-a-passo o processo de instalação do servidor Intellector para o JBoss Application Server. 

  • Para o manual de instalação do JBoss 7, clique aqui.
Para quem se destina o manual

O público alvo para este manual são administradores de sistemas e application servers, e que tenha bom conhecimento de JBoss e JVM.

O que é necessário para entender esse manual

Este manual assume que os administradores tem familiaridade com os conceitos de administração e deployment do JBoss, Linux ou Windows e Sun JDK.

Pré-requisitos

Como um primeiro passo, verifique e tenha certeza de qual versão do Intellector você deseja instalar ou atualizar. Baseado na versão, você pode determinar a compatibilidade apropriada das versões de JBoss, Linux ou Windows, e Java JDK.

JDK 6.0

Instale a Sun JDK 6.0 apropriada para sua plataforma. As JDKs estão disponíveis no seguinte site: http://java.sun.com/javase/downloads/index.jsp

...

Não se esqueça de configurar a variável de ambiente JAVA_HOME no seu ambiente, mas, forneceremos um bootstrap pro Intellector, onde essa variável é configurada, mas você pode querer colocá-la em outro lugar; não se esqueça dela! Embora a localização da instalação da JDK seja livre, sugerimos criar uma pasta “<drive>:\opt” no Windows ou usar o “/opt” no Linux; ajuda para propósitos de suporte. Instalando em sistemas Linux, tenha bastante cuidado com as permissões de escrita para owner/group para o diretório do JBoss, pois o Intellector vai precisar escrever nesse diretório.

 

 JBoss

 

O Intellector foi testado nas versões JBoss 4.2.3 e JBoss 7 (7.1.1). Você pode fazer o download do JBoss, para qualquer plataforma do seguinte site: http://www.jboss.org/jbossas/downloads/

...

Este é um bom lugar para tirar dúvidas e procurar dicas sobre o JBoss… http://wiki.jboss.org/

 

Instalando…

 

Após instalar a Java JDK e o JBoss nos locais apropriados, faça um pequeno teste de verificação da instalação, subindo o JBoss (JBOSS_HOME/bin/run.sh ou run.bat no Windows); para verificar se tudo foi bem, você estará apto a abrir a url http://localhost:8080/web-console de administração do application server.

...

Evite instalar JDK e JBoss em diretórios que contenham espaços no nome, como “C:\Arquivo de Programas” do Windows. Conheça mais sobre JBoss Enterprise Application Platform.

 

Bootstrap para JBoss/Intellector

 

Os scripts de bootstrap para o Intellector são simples, precisando apenas de pequenas modificações no que concerne a memória e variáveis de ambientes. Sugiro usar o nome “run-intellector.sh” no Linux/Unix e “run-intellector.bat” no Windows e, deve ficar emJBOSS_HOME/bin com permissão explícita de execução (básico para os linuxers!)

...

Sem a linha JBOSS_CLASSPATH=$JBOSS_HOME/server/default/lib/log4j.jar no bootstrap, o Intellector não compilará as políticas!

 

Área de dados para o Intellector

 

O Intellector tem uma característica de persistir alguns dados no File System da plataforma, seja persistência em XML (JAXB), seja dos plugins de acessos, políticas e layouts de políticas. Esse local de persistência, é um diretório ou uma árvore de diretórios. Você pode verificar, que no arquivo de bootstrap, existe uma variável intellector.datadir que deve apontar para um diretório válido, onde ocorrerá a persistência e o site criará o restante dos diretórios; veja uma árvore de diretórios criada pelo Intellector abaixo:

...

  • considerando intellector.datadir=/home/intellector como diretório raiz…
    1. /home/intellector/acessos – diretório de instalação dos plugins de acesso; o Intellector cria uma pasta para cada acesso;
    2. /home/intellector/key – diretório para as licenças do Intellector;
    3. /home/intellector/dados – diretório raiz para persistência de cadastros (usuários, perfis, plugins, auditorias, etc.)
    4. /home/intellector/dados/person – persistência de usuários cadastrados
    5. /home/intellector/dados/audit – persistência de auditoria de execução de políticas (intellector.auditpolicy=true/false)
    6. /home/intellector/dados/plugin – persistências dos dados dos plugins instalados
    7. /home/intellector/dados/layouts – persistências de todos os layouts das políticas
    8. /home/intellector/dados/policy – persistências de todos as políticas enviadas do servidor
    9. /home/intellector/politicas – onde serão mantidas as classes das políticas compiladas
    10. /home/intellector/politicas/classes
    11. /home/intellector/politicas/classes/br
    12. /home/intellector/politicas/classes/br/com
    13. /home/intellector/politicas/classes/br/com/tools
    14. /home/intellector/politicas/classes/br/com/tools/politicas
    15. /home/intellector/tarifacao – pasta para os arquivos de Tarifação
  • Se houver necessidade de fazer uma “purga” nesse datadir, baixe a instância ou instâncias se o datadir for compartilhado, deixe apenas a pasta key com a licença e, suba novamente a(s) instância(s); pronto, o Intellector reconstruirá o datadir com as configurações básicas.

 

Instalando uma Licença para o Intellector

 

O Intellector trabalha com 3 (três) modelos de licenciamento, enterprise, limited e trial; essas licenças estarão contidas em um único arquivo nomeado intellector.key (outro nome não será reconhecido) que deverá ser colocado no diretório ${intellector.datadir}/key; ela poderá ser copiada para esse local a qualquer momento, não necessitando de qualquer intervenção no servidor.

...

  • Tipos de licenças:
    1. enterprise – totalmente livre para execução de qualquer política sem data de expiração
    2. limited – determinada por um Tipo específico e uma data de expiração ou não
    3. trial – Tipos de políticas livres e com uma data de expiração

 

Deployment do Intellector no JBoss

 

Considerando que o item instalando o JBoss foi seguido, o próximo passo será o deployment (instalação) do pacote intellector.war em uma instância do JBoss.

...

Saiba mais sobre estruturas de diretórios do JBoss.

 

Iniciando o JBoss

 

Se tudo foi bem, e os passos foram seguidos, iniciar o JBoss é a parte trivial; no diretórioJBOSS_HOME/bin, inicie o batch, simplesmente digitando ./run-intellector.sh (linux/unix) ou run.bat no Windows; abaixo o início e fim do bootstrap do JBoss:

...

1
2
3
4
5
17:26:05,961 INFO  [intellector] -----------------------------------------------------------
17:26:05,962 INFO  [intellector] --------- Intellector configurado com sucesso... ----------
17:26:05,962 INFO  [intellector] -----------------------------------------------------------
17:26:06,146 INFO  [TomcatDeployer] deploy, ctxPath=/jmx-console, warUrl=.../deploy/jmx-console.war/
17:26:07,318 INFO  [Server] JBoss (MX MicroKernel) [4.2.3.GA (build: SVNTag=JBoss_4_2_3_GA date=200807181417)] Started in 21s:602ms

 

 

Configurações adicionais

 

Normalmente, ajustes adicionais, ou tuning, dependem de plataforma, número de requisições, escalabilidade, multi-ip, dentre outras; a mais comum é alterar a porta onde o container irá atender, default é a 8080. Outros casos, como HTTPS ou load balancer, envolvendo o Apache, devem ser analisadas e não fazem parte do escopo desse manual.

 

Configurando Pool de Conexões – JNDI

 

  • Os datasources são configurados em arquivos xxx-ds.xml (onde xxx pode ser qualquer nome) que deverão ser inseridos no diretório deploy do servidor da aplicação. No exemplo usando JBoss estão em: C:\java\jboss-4.2.3.GA\server\default\deploy).

...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2010-08-04 11:32:01,665 ERROR  [org.jboss.resource.connectionmanager.CachedConnectionManager] Closing a connection for you.  Please close them yourself: org.jboss.resource.adapter.jdbc.jdk5.WrappedConnectionJDK5@13b3c2c
java.lang.Throwable: STACKTRACE
    at org.jboss.resource.connectionmanager.CachedConnectionManager.registerConnection(CachedConnectionManager.java:290)
    at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:423)
    at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:849)
    at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:89)
    at org.hibernate.connection.DatasourceConnectionProvider.getConnection(DatasourceConnectionProvider.java:92)
    at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:446)
    at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:167)
    at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:142)
    at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:85)
    at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1463)
    at br.com.totvs.persistence.factory.ConnectionFactory.beginTransaction(ConnectionFactory.java:194)
    at br.com.totvs.persistence.factory.ConnectionFactory.getSession(ConnectionFactory.java:165)
    at br.com.tools.intellector.api.persistence.PersistenceUtil.expungeDatabase(PersistenceUtil.java:87)
    ...
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
    at java.lang.Thread.run(Thread.java:619)

 

 

Para persistir filas JMS podemos escolher o BD padrão ou configurar outro

 

O Banco de Dados padrão para o JBoss persistir dados da fila JMS (Queue) é o Hypersonic, tendo limitações para grandes volumes; para trocar a persistência para outro Banco de Dados, siga os passos abaixo:

...

Pronto, agora a persistência  dos dados da fila JMS serão persistidas na tabela jms_message, como área temporária. Uma vez consumidas as mensagens, elas serão deletadas.

 

Intellector-EAR

 

Intellector-EAR é a produto de persistência do Intellector Server, monitorando um fila (queue) no Servidor de Aplicação onde os dados das execuções de políticas e plugins de acessos é enviada para serem persistidas no banco de dados.

...

No JBoss: Basta colocar na pasta deploy (ex : C:\java\jboss-4.2.3.GA\server\default\deploy\) do Servidor de Aplicação.
Baixe o Intellector-EAR aqui.

 

Configurando a “fila” do Intellector

 

No Servidor de aplicação na pasta “(ex : C:\java\jboss-4.2.3.GA\server\default\deploy\jms\jbossmq-destinations-service.xml)”, neste arquivo contém as configurações das filas que o servidor disponibiliza para as aplicações conversarem entre si.

...

para que o Intellector possa monitorar uma fila própria. Para configurar a Fila que o Intellector irá monitorar o Intellector possui um arquivo de configuração para as persistências de dados explicado mais adiante.

 

Arquivo persistence.properties

 

Para utilização da persistência de acessos no Intellector na primeira execução antes da utilização do cache, deverá ser copiado o arquivo de configuração persistence.properties para o diretório $JBOSS_HOME/bin, como descrito abaixo.

...

Se referem ao banco de dados onde serão armazenadas as informações de cache e auditoria. Os bancos homologados para essas funcionalidades foram Oracle 10g e 11g, SQL Server 2008 e PostgreSQL 9.x

 

Bibliotecas de infraestrutura para o Intellector

 

O intellector tem sua infraestrutura baseadas numa série de bibliotecas e frameworksdisponíveis no mercado, além das próprias. Essas bibliotecas devem ser colocadas no CLASSPATH do Servidor de Aplicação. Normalmente criamos um diretório dentro da instância nomeado intellector-lib, distribuído e disponível para download. No JBoss, para que elas fiquem disponíveis, consideramos que a pasta com as bibliotecas estejam em$JBOSS_HOME/server/[instance]/conf/jboss-service.xml, como abaixo

...