====== 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{ [..]