====== Instalação Pentaho Server ======
===== Servidor=====
Utilizar o winscp para conectar ao servidor FREYA
===== Ambiente =====
* Versão: 6.1.0
* Java JDK 8
* MySQL Server 5.5
* CentOS 6.5
===== Diretórios =====
* /opt/pentaho/ : diretório onde está armazenado o biserver e o data integration.
* /pentaho/repositorios : diretório onde estão armazenados os jobs e as transformações para o ETL.
* /pentaho/scripts: diretório onde estão armazenados os scripts que disparam o ETL da pasta /repositorios.
===== Plugins =====
- Saiku Analytics 3.8.8 (PENTAHO6)
- Tapa Oncase 0.3.1
===== Instalação =====
==== Configurações Básicas ====
* Permitir login pela passagem de usuário e senha pela URL
Alterar o arquivo //pentaho-solutions/system/security.properties// mudando o valor de //requestParameterAuthenticationEnabled// para //true//.
requestParameterAuthenticationEnabled=true
Dessa forma possível abrir um dasboard via POST ou GET passando dados da conexão, por exemplo, http://?userid=&password= .
* Omitir usuários default do Pentaho
Editar o arquivo //pentaho-solutions/system/pentaho.xml// colocando //false nos seguintes atributos:
false
false
==== Saiku Analytics ====
Instalar a partir do Marketplace o plugin Saiku Analytics.
- Item de lista ordenadaCriar licença em http://licensing.meteorite.bi/
- Criar licença, baixar e renomear para license.lic
- Copiar para pentaho-solutions/system/saiku/
- Reiniciar servidor
==== Tapa Oncase ====
=== Customização Interface ===
- biserver-ce/tomcat/webapps/pentaho/mantle/
- MantleStyle.css
- pentaho-solutions/system/tapa/resources/templates/tapa-default/assets/css/
- mantle-context.css
- oxygen.css
- styles.css
- pentaho-solutions/system/common-ui/resources/themes/crystal/
- globalCrystal.css
===== Integração LDAP =====
=== Arquivos Necessários ===
Arquivos biserver-ce/pentaho-solutions/system/
* security.properties
* applicationContext-security-ldap.properties
* applicationContext-spring-security.xml
* repository.spring.properties
* data-access/settings.xml
=== security.properties ===
Mudar o provider para LDAP
provider=ldap
=== applicationContext-security-ldap.properties ===
Deixar o conteúdo do arquivo da seguinte forma:
##CONFIGURAÇÃO ACESSO LDAP
### CONEXAO COM SERVIDOR #####
contextSource.providerUrl=ldap\://adserver.tce.go.gov.br\:389
### USUARIO COM ACESSO DE LEITURA NA BASE LDAP - FAZ ACESSO AO SERVIDOR PARA O BIND ####
contextSource.userDn=cn\=<>,OU\=usuarios,OU\=tce,DC\=tce,DC\=go,DC\=gov,DC\=br
contextSource.password=<>
### BASE DE USUARIOS - NO CASO DO TCE, O LOGIN E ARMAZENADO NO ATRIBUTO sAMAccountName ####
userSearch.searchBase=ou\=usuarios,ou\=tce,dc\=tce,dc\=go,dc\=gov,dc\=br
userSearch.searchFilter=(&(objectClass\=person)(sAMAccountName\={0}))
### CONSULTA GRUPOS DO USUARIO INFORMADO ###
populator.convertToUpperCase=false
populator.groupRoleAttribute=cn
populator.groupSearchBase=ou\=grupos,ou\=tce,dc\=tce,dc\=go,dc\=gov,dc\=br
populator.groupSearchFilter=(member\={0})
### CONSULTA BASE DE GRUPOS - POPULAR A BASE DE GRUPOS DO PENTAHO COM OS GRUPOS DO LDAP ###
populator.rolePrefix=
populator.searchSubtree=true
allAuthoritiesSearch.roleAttribute=cn
allAuthoritiesSearch.searchBase=ou\=grupos,ou\=tce,dc\=tce,dc\=go,dc\=gov,dc\=br
allAuthoritiesSearch.searchFilter=(objectClass\=group)
### CARREGAR USUARIOS DA BASE LDAP ###
allUsernamesSearch.usernameAttribute=cn
allUsernamesSearch.searchBase=ou\=usuarios,ou\=tce,dc\=tce,dc\=go,dc\=gov,dc\=br
allUsernamesSearch.searchFilter=(objectClass\=person)
###INFORMA O GRUPO LDAP QUE E ADMINISTRADOR DO PENTAHO E O USUARIO ADMINISTADOR
adminRole=CN\=PentahoAdmin,OU\=tce_system,DC\=tce,DC\=go,DC\=gov,DC\=br
adminUser=cn\=pentaho,OU\=tce_system,DC\=tce,DC\=go,DC\=gov,DC\=br
=== applicationContext-spring-security.xml ===
Define quais componentes os grupos podem acessar. Nesse caso, não fiz nenhuma alteração.
=== repository.spring.properties ===
Informar quem é o usuário administrador do Pentaho. É o mesmo que está no campo //adminUser// do arquivo //applicationContext-security-ldap.properties//.
#Tue Mar 26 17:50:44 EDT 2013
singleTenantAdminDefaultUserName=pentaho
singleTenantAdminUserName=pentaho
singleTenantAdminDefaultAuthorityName=Administrator
singleTenantAdminAuthorityName=Administrator
repositoryAdminUsername=pentahoRepoAdmin
singleTenantAuthenticatedAuthorityName=Authenticated
singleTenantAnonymousAuthorityName=Anonymous
superAdminAuthorityName=SysAdmin
superAdminUserName=super
systemTenantAdminUserName=system
systemTenantAdminPassword=cGFzc3dvcmQ=
cache-size=100
cache-ttl=300
# This is the property to enable/disable multi byte encoding in the repository
# This property can only be changed to "true" if you are installing it fresh. For upgrades,
# this must be set to false.
useMultiByteEncoding=false
=== data-access/settings.xml ===
Dar acesso ao usuário administrador do Pentaho. É o mesmo que está no campo //adminUser// do arquivo //applicationContext-security-ldap.properties//.
pentaho
=== Dica para visualizar os Logs ===
Para verificar se algo está dando errado, uma dica é habilitar de debug do pentaho.
Alterar o arquivo //tomcat/webapps/pentaho/WEB-INF/classes/log4j.xml//:
* Procurar por configurações de nome //Threshold// e comentar o código correspondente:
* Alterar o tipo de log que é emitido para //WARN// na diretiva //root//:
* Adicionar o seguinte código logo abaixo da diretiva //root//:
Feito isso, basta reiniciar o servidor.
=== Referências ===
- https://cdom.wordpress.com/2015/01/12/pentaho-5-autenticando-no-ldap-openldap-e-ad/
- https://help.pentaho.com/Documentation/6.1/0P0/150/010/030
- http://diethardsteiner.github.io/biserver/2014/11/08/LDAP.html
- http://wiki.pentaho.com/display/ServerDoc2x/Turning+on+Security+Logging
===== Enviando arquivos para o Servidor =====
Ao enviar transformações ETL para o servidor, lembrar de alterar o arquivo repositories.xml que fica na pasta root/.keetle.
Deve-se adicionar o nome do repositório que foi criado para se acessar os jobs e transformações.
===== CONFIGURAÇÕES NECESSÁRIAS NO PDI =====
Algumas configurações são necessárias para que todas as transformações funcionem, como:
===Instalação do jar do oracle===
basta colar o ojdbc6 na pasta lib.
===Download do step para transformar html para xml===
Baixar o step 'HTML to XML' via marketplace do pdi
===Configuração do PDI para aceitar jars externos===
Criar uma pasta dentro de data integration chamada libext.
Alterar o arquivo launcher/launcher.properties
de:
libraries=../test:../lib:../libswt
classpath=../classes:../:../ui:../ui/images:../lib
para:
libraries=../test:../lib:../libswt::../libext
classpath=../classes:../:../ui:../ui/images:../lib::../libext
===Instalação do jar jSoup===
Fazer o download do jSoup em https://jsoup.org/download
e instalar o jar na pasta libext.
Segue exemplo de transformação utilizando o jSoup : {{ :pres:gerti:infraestrutura_de_ti:pentaho:scraping.zip |}}
=== Hacks e Bugs ==
== Bugs no componente CDE SelectMulti Component ==
- Bug: componente não fecha quando perde o foco.
- Mensagem: Aparece erro no console Javascript "TypeError: jQuery.easing[this.easing] is not a function"
- Solução de contorno: Abrir o arquivo //pentaho-solutions/system/pentaho-cdf/js/cdf-bootstrap-script-includes.js// e comentar o código **this.pos=eased=jQuery.easing[this.easing](percent,this.options.duration*percent,0,1,this.options.duration);**
[..]
if(this.options.duration){ /*this.pos=eased=jQuery.easing[this.easing](percent,this.options.duration*percent,0,1,this.options.duration);*/ }else{
[..]