wiki:Contribuicoes/pSync/Instalacao

Version 2 (modified by viani, 3 years ago) (diff)

--

Manual de instalação do Funambol Server v6

A instalação do Funambol é feita a partir do binário de instalação, que pode ser encontrado  neste link. Ao executar este arquivo, será iniciado o processo de instalação do serviço Funambol e será requisitado um local para instalá-lo. Por padrão ele instalará em "/opt". Entre com um novo local se desejar, ou apenas pressione <Enter> para confirmar. Caso o seu usuário não possua permissão de escrita no diretório, utilize sudo para instalar ou entre como usuário root.

*Nesta documentação será utilizado o endereço padrão ("/opt") como caminho da instalação do Funambol.

Ainda será requisitado se deseja recriar as tabelas no banco de dados, caso seja a primeira vez que está sendo instalado o Funambol, faça isso. Porém se estiver refazendo a instalação no mesmo banco de dados, deve-se tomar muito cuidado porque as tabelas serão removidas e em seguida recriadas, apagando todos os seus dados. As tabelas são criadas tanto pelos módulos quanto pelo Funambol, por isso deve-se ter muito cuidado para não permitir que tabelas úteis sejam deletadas e nem que as tabelas que ainda não foram criadas, não sejam por falta de permissão ou outro motivo qualquer...

Ao final da instalação você poderá optar por iniciar o serviço ou não, caso queira fazer modificações nas configurações de instalação do Funambol, mantenha o serviço parado.

*A instalação do Funambol ocupa aproximadamente 200MB em disco, podendo variar de acordo com os módulos e drivers que serão instalados.

Na instalação básica do Funambol, ele irá usar o banco de dados Hypersonic para armazenar suas configurações. O Funambol suporta vários bancos, entre eles MySQL e PostgreSQL, então é tranquilo utilizar outros bancos.

Instalando o funambol em outro banco de dados

Para instalar o Funambol em um banco de dados novo, será necessário o driver do banco de dados desejado, como o  postgresql.jar para o Postgres. É de extrema importância que o Funambol utilize o mesmo banco de dados do Expresso, pois o pSync necessita ler/escrever informações nas tabelas dos módulos ContactCenter e Calendar. No caso do Postgres é recomendado utilizar  schemas para organizar melhor as tabelas, permitindo ainda criar ACLs para os usuários, das duas aplicações, que farão a conexão com o banco de dados.

É muito importante ressaltar ainda que o Expresso utiliza a codificação LATIN1 (ISO-8859-1) em sua base de dados e o Funambol utiliza UTF-8. Para resolver possíveis problemas de codificação nos agendamentos e contatos, foi criado um banco de dados em LATIN1 e o usuário utilizado pelo Funambol para fazer a conexão com banco possui um atributo especial  client-encoding=utf8 que converte os dados de UTF-8 para LATIN1 e vice-versa.

Na pasta "/opt/Funambol/ds-server/" encontra-se o arquivo install.properties, onde estão as configurações de instalação do Funambol, onde devem ser alteradas as seguintes linhas:

#Essa linha indica qual o banco de dados que será utilizado
dbms=postgresql

#Essa linha indica o caminho onde encontra-se o driver do banco que será utilizado
# Não esqueça de fazer o download do driver, conforme mencionado acima.
jdbc.classpath=/opt/Funambol/tools/tomcat/common/lib/postgresql.jar
jdbc.driver=org.postgresql.Driver

#URL do banco de dados
#Especificamente netsNeste amb
jdbc.url=jdbc:postgresql://<localhost ou IP do Banco de Dados>/Nome do Banco de Dados

#O banco de dados e o usuário já deverão estar criados e o usuário 
#deve ter permissão de escrita neste banco
jdbc.user=funambol
jdbc.password=<senha do usuário funambol>

#Os módulos devem estar todos na mesma linha e separados por vírgula
#Se deseja não instalar algum ou nenhum módulo, remova os módulos indesejados dessa linha
modules-to-install=prognus-psync-1.0.0,funambol-foundation-6.0.3,funambol-phones-support-6.0.3

Nesse arquivo existem algumas pré-configurações para os bancos de dados. Você pode utilizá-las para a sua configuração apenas removendo os "#" da linha e alterando o que for necessário. Não esqueça de comentar as linhas que não serão mais utilizadas colocando o "#" na frente da linha.

Feita a configuração do banco de dados, copie o driver (Ex. postgresql.jar) para as seguintes pastas:

cp postgresql.jar /opt/Funambol/ds-server/lib/
cp postgresql.jar /opt/Funambol/tools/tomcat/common/lib/

Instalando módulo pSync

Após a configuração do banco de dados e dos módulos, é necessário instalar o módulo do pSync. Para isso, basta executar:

cp pSync/output/prognus-psync-1.0.0.jar /opt/Funambol/ds-server/modules/prognus-psync-1.0.0.s4j

Note que a extensão do arquivo foi alterada de ".jar" para ".s4j". Este detalhe é muito importante e não pode ser ignorado.

Carregando novas configurações e módulos

Por fim, após fazer todas as configurações é necessário aplicá-las. Para isso, basta executar o seguinte comando:

cd /opt/Funambol/ds-server
./bin/install.sh tomcat

Caso seja a primeira vez que esteja executando este script, responda sim a todas as perguntas. Nas próximas vezes, fique atento para não remover os dados dos módulos já instalados.

Arquivos importantes

Caminho Arquivo Parâmetro Função
/opt/Funambol/tools/bin/ funambol.sh start Inicia o serviço do Funambol
/opt/Funambol/tools/bin/ funambol.sh stop Encerra o serviço do Funambol
/opt/Funambol/ds-server/ install.properties Arquivo de configuração da instalação do Funambol
/opt/Funambol/ds-server/bin/ install.sh Executa a instalação do Funambol, porém esse arquivo deve ser invocado a partir da pasta /opt/Funambol/ds-server

Backup

Após o servidor do Funambol ter sido instalado e devidamente configurado, é recomendado realizar o Backup dos seguintes itens:

  • Diretório do Funambol (Ex. /opt/Funambol/), para que caso haja algum problema com o servidor, não seja necessário refazer a instalação do mesmo.
  • Banco de dados, todas as informações referentes às sincronizações do Funambol, estão armazenadas no mesmo Banco de Dados do Expresso Livre, as tabelas do Servidor Funambol estão armazenadas em um Schema chamado funambol. Este Backup deve ser feito regularmente.