Você está na página 1de 34

PENTAHO BUSINESS INTELLIGENCE SUITE 4.5 UNA GUIA PARA COMENZAR CON POSTGRESQL 9.1 Y GNU/LINUX

OMAR CABRERA ROSERO

COMENZAR CON POSTGRESQL 9.1 Y GNU/LINUX OMAR CABRERA ROSERO ˜ UNIVERSIDAD DE NARI NO ´ FACULTAD

˜

UNIVERSIDAD DE NARI NO

´

FACULTAD DE INGENIER IA

´

PROGRAMA DE INGENIER IA DE SISTEMAS

SAN JUAN DE PASTO

2012

You are free: to Share – to copy, distribute and transmit this work to Remix

You are free:

to Share – to copy, distribute and transmit this workto Share –

to Remix – to adapt this work to adapt this work

Under the following conditions:

Attribution – You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work) Attribution – Share Alike – If you alter, transform, or build upon this work, you may Share Alike – If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.the author or licensor (but not in any way that suggests that they endorse you or

Subject to conditions outlined in the license.

This work is licensed under the Creative Commons Attribution-ShareAlike 3.0

Unported License. To view a copy of this license, visit

or send a letter to Creative Commons, 171 Second Street, Suite 300, San Fran-

cisco, California, 94105, USA.

CONTENIDO

1.

Comenzando Instalaci´on

7

1.1. Instalaci´on Java de Oracle

7

1.2. Instalaci´on y configuraci´on de PostgreSQL 9.1 Server

8

2.

Implementaci´on de la plataforma

11

2.1. PostgreSQL Java Conector

11

2.2. SQL Script Pack

12

3.

Configurando la Base de Datos

13

3.1. Extraer el paquete de scripts para postgreSQL

13

3.2. Cargando los scritps SQL

13

4.

Configurando Seguridad JDBC

16

4.1. applicationContext-spring-security-jdbc.xml

16

4.2. applicationContext-spring-security-hibernate.properties

17

4.3. hibernate-settings.xml

17

5.

Configurar Hibernate y Quartz

19

5.1. context.xml y pentaho.xml

19

5.2. quartz.properties

20

6.

Configurar servidor Apache-Tomcat

21

6.1. solution-path

21

6.2. fully-qualified-server-url

22

6.3. Deshabilitar base de datos HSQL al inicio

22

6.4. TrustedIpAddrs

23

6.5. Otros parametros

24

7. Configurando SMTP (servidor de correo)

25

8. Configurando publicaci´on

27

9. Configuraci´on de la consola de administraci´on

28

10.Cuenta de Usuario

29

11.Iniciar la Plataforma Pentaho BI

30

12.Iniciar la Plataforma Pentaho BI Autom´aticamente

32

13.Iniciar la consola de Administraci´on

34

INTRODUCCION

Pentaho BI Platform Community Edition (CE), proporciona la arquitectura y la infra- estructura necesarios para crear soluciones para problemas de inteligencia de negocios (BI). El framework proporciona servicios b´asicos como la autenticaci´on, registro, audi- tor´ıa, servicios web y motores de reglas. La plataforma tambi´en incluye un motor de soluci´on que integra la presentaci´on de informes, an´alisis, cuadros de mando y los com- ponentes de miner´ıa de datos. El dise˜no modular y basado en arquitectura de plugin permite que toda o parte de la plataforma sea embebida en aplicaciones de terceros por los usuarios finales, as´ı como OEMs.

La aplicaci´on m´as conocida de la Plataforma de BI es el Pentaho BI server que fun- ciona como sistema manejador de reportes basado en la web el informe, el servidor de integraci´on de aplicaciones y el motor de flujo de trabajo ligero (secuencias de acci´on.) Est´a dise˜nado para facil integraci´on en cualquier proceso de negocio.

Community Edition es un software libre de c´odigo abierto soportado. La Enterprise Edition (EE) de la Pentaho BI plataform est´a disponible como parte de la Pentaho BI Suite EE que incluye soporte t´ecnico, manejador de actualizaciones y caracter´ısticas de la empresa. Para obtener m´as informaci´on acerca de la EE o para demos y hojas de datos, podemos visitar Pentaho BI Suite EE en el sitio corporativo de Pentaho 1 .

Para usar esta guia se considera que el lector tiene conociemintos intermedios y avan- zados en su configuraci´on de elecci´on y conocimientos b´asicos de Pentaho (aunque no es necesario). Los siguientes sistemas operativos y base de datos son soportados:

Windows• MySQL • PostgreSQL • Oracle GNU/Linux • MySQL • PostgreSQL • Oracle Esta guia

MySQL

PostgreSQL

Oracle

GNU/LinuxWindows • MySQL • PostgreSQL • Oracle • MySQL • PostgreSQL • Oracle Esta guia es

MySQL

PostgreSQL

Oracle

Esta guia es para configurar Pentaho BI Server 4.5.0 en GNU/Linux y PostgreSQL 9.1, parte de esta guia esta basada en la guia realizada por Prashant Raju 2 y el libro de Roland Boumen y Jos van Dongen 3

2 http://www.prashantraju.com/projects/pentaho/ 3 Pentaho Solutions: Business Intelligence and Data Warehousing with Pentaho and MySQL

1 Comenzando Instalaci´on

1.1. Instalaci´on Java de Oracle

Pentaho BI requiere de una JVM (Java Virtual Machine) instalada en su PC o servidor. Para comprobar si Java esta instalado se ejecuta el siguiente comando en la terminal:

$ java −version ‘ Java HotSpot (TM) 64− Bi t S e r v e
$
java −version
Java
HotSpot (TM)
64− Bi t
S e r v e r
VM
( b uil d
23.3 − b01 ,
mixed
mode )

java

version

‘ 1 . 7 . 0

07 ’ ’

Java (TM)

SE Runtime

Environment

( b uil d

1 . 7 . 0

07b10 )

Si muestra una salida similar a la anterior Java ya esta instalado. Si no, instale Java en GNU/Linux siguiendo los pasos siguientes:

Lo primero que se tiene que hacer es descargar el JDK, el cual se lo puede encontrar en: http://www.oracle.com se acepta la licencia y dependiendo de la arquitectura del sistema se descarga el archivo jdk-7u7-linux-i586.tar.gz para plataforma x86 o jdk-7u7- linux-x64.tar.gz para plataforma x64.

Luego el archivo descargado se lo copia a la carpeta opt y se lo descomprime de la siguiente forma en la terminal:

$ su

# jdk 7u7l i n u x

# x v f

cp

t a r

x64 . t a r .

jdk 7u7l i n u x x64 .

g z

t a r . g z

/ o p t

Se cambia el nombre a la carpeta que se descomprimi´o

z t a r . g z / o p t Se cambia el nombre a

# mv

j d k 1 . 7 . 0

07

jvm

7

Luego se ejecutan los siguientes comandos

# updatealternatives −−i n s t a l l ‘ ‘/ usr/bin/java ’ ’ ‘ ‘ java ’ ’ ‘ ‘/ opt/

jvm/ jre / bin /java ’ ’

1

# updatealternatives −−i n s t a l l ‘ ‘/ usr/bin/java ’ ’ ‘ ‘ java ’ ’ ‘ ‘/ opt/

jvm/ bin /java ’ ’

1

# updatealternatives −−i n s t a l l ‘ ‘/ usr/bin/javac ’ ’ ‘ ‘ javac ’ ’ ‘ ‘/ opt

1

# updatealternatives

/jvm/ bin /javac ’ ’

−−i n s t a l l

‘ ‘/ usr/bin/javaws ’ ’

‘ ‘ javaws ’ ’

‘ ‘/

opt /jvm/ bin /javaws ’ ’

1

# updatealternatives −−config

java

El siguiente paso es configurar la variable de entorno JAVA HOME, para eso se agregan las siguientes lineas en el archivo /etc/environment:

JAVA HOME=“/opt/jvm” JRE HOME=“/opt/jvm/jre”

Ahora para comprobar si la variable de entorno quedo bien configurada, se ejecuta el siguiente comando en la terminal:

$ echo $JAVA HOME $JRE HOME

/ opt /jvm

/ opt /jvm/ j r e

Si muestra una salida similar a la anterior, la variable de entorno JAVA HOME esta configurada correctamente.

1.2. Instalaci´on y configuraci´on de PostgreSQL 9.1 Server

Para la instalaci´on de PostgreSQL 9.1 (Para Debian/Linux), en una terminal se ejecuta los siguiente:

$ su

# i n s t a l l

aptget

pgadmin3

postgresql

postgresql c l i e n t

postgresql contrib

Ahora se borra la contrase˜na para la cuenta de adminitrador de “postgres” para ello se ejecuta lo siguiente en la linea de comandos.

8

# su

postgres c

psql

template1

templ a te 1=# ALTER USER templ a te 1=#\q

p o s t g r e s WITH PASSWORD

‘ p o s t g r e s 1 ’ ;

Eso altera la contrase˜na dentro de la base de datos, ahora se tiene que hacer lo mismo para el usuario ’postgres’ y colocar la misma contrase˜na que utiliz´o anteriormente.

# passwd d

postgres

#su

p o s t g r e s

c

passwd

Para configurar el paquete de administraci´on de PostgreSQL que permite un mejor re- gistro y supervisi´on dentro de pgAdmin se ejecuta lo siguiente en la terminal.

# su

postgres c

psql < /usr/share/ postgresql /9.1/ extension /

adminpack −−1.0. s q l

Para poder acceder y utilizar el servidor de forma remota se debe editar el archivo postgresql.conf

nano

/ etc / p o s t g r e s q l /9.1/ main/ p o s t g r e s q l . conf

Al final del archivo agregamos las siguientes lineas:

listen addresses = ’*’

password encryption = on

Ahora se debe definir qui´en puede acceder al servidor, para ello se modifica el archivo pg hba.conf.

nano

/ etc / p o s t g r e s q l /9.1/ main/pg hba . conf

9

Debe quedar algo similar a lo siguiente:

#

DO NOT DISABLE !

#

I f you change t h i s f i r s t entry you

w i l l

need

to

make

sure

#

that the # database

#

super user can access

the

database

using

some

other

method .

#

Noninteractive

#

access to a l l

databases

is

required

during

automatic

 

#

maintenance # (autovacuum , daily cronjob , replication ,

#

and similar tasks ) .

#

#

Database

a d m i n i s t r a t i v e

l o g i n

by UNIX

s o c k e t s

l o c a l

a l l

 

p o s t g r e s

 

md5

# TYPE

DATABASE

USER

CIDRADDRESS

 

METHOD

# ”

l o c a l ”

l o c a l

i s

for

Unix domain

socket

connections

only

a l l

 

a l l

md5

#

IPv4 local

connections :

 

h o s t

a l l

 

a l l

1 2 7 . 0 . 0 . 1 / 3 2

 

md5

#

IPv6

connections :

 

h o s t

local a l l

 

a l l

: : 1 / 1 2 8

md5

#

Connec tions

f o r

a l l

PCs on

t h e

s u b n e t

#

#

TYPE DATABASE USER IP ADDRESS IPMASK METHOD

 

h o s t

a l l

 

a l l

[ i p

a d d r e s s ]

[ subne t

mask ]

md5

En la ultima´ l´ınea, agrega su m´ascara de subred (por ejemplo, 255.255.255.0) y la direcci´on IP de la m´aquina que usted desea tener acceso a su servidor (por ejemplo, 192.168.1.104). Sin embargo, si usted desea permitir el acceso a un rango de direcciones IP, Se sustituye el ultimo´ n´umero por un cero y todas las m´aquinas dentro de ese rango se permitir´a el acceso (por ejemplo, 192.168.1.0 permitir´ıa a todos los equipos con una direcci´on IP 192.168.1.X para usar el servidor de base de datos).

Ya por ultimo´

se reinicia el servidor:

# / etc / i n i t . d/ postgresql

restart

10

2 Implementaci´on de la plataforma

Hay muchas maneras de implementar la plataforma, con Apache-Tomcat que viene con el archivo de instalaci´on del servidor Pentaho BI o con un servidor existente Apache- Tomcat.

En esta gu´ıa se impletentar´a con el servidor Apache-Tomcat que viene con el servidor de Pentaho BI, para ello primero se descarga el archivo “biserver-ce-4.5.0-stable.tar.gz” desde http://sourceforge.net/projects/pentaho/

Se crea el directorio /opt/pentaho, en esta carpeta se mueve el archivo descargado y se lo extrae de la siguiente manera en la terminal:

$

su

#

mkdir /opt/pentaho

 

#

mv

b i s e r v e r ce 4.5.0 s t a b l e . t a r . g z

/ o p t / pen taho

#

cd /opt/pentaho

#

tar

xvzf

biserver ce 4.5.0s t a b l e . tar . gz

Los siguientes directorios pueden ser visibles luego de extraer el arcivo tar.gz

pueden ser visibles luego de extraer el arcivo tar.gz opt/ • pentaho/ ◦ administration-console ◦

opt/

pentaho/

administration-console

biserver-ce

2.1. PostgreSQL Java Conector

Para colocar el conector JDBC se procede a descargar el archivo “postgresql-9.2-1002.jdbc4.jar” en el directorio “/opt/pentaho/biserver-ce/tomcat/lib” para ello se ejecuta lo siguiente en la terminal:

11

# cd /opt/pentaho/ biserver ce/tomcat/ l i b

# wget

http :// jdbc . postgresql . org/download/ postgresql 9.21002.

jdbc4 . jar

2.2. SQL Script Pack

Un paquete de scripts SQL es un conjunto de secuencias de comandos SQL para confi- gurar todas las bases de datos necesarias. El paquete de scripts SQL para PostgreSQL se lo puede descargar aqu´ı.

12

3 Configurando la Base de Datos

3.1. Extraer el paquete de scripts para postgreSQL

Despu´es de descargar el paquete los scripts SQL para PostgreSQL se tienen que extraer los archivos en una ubicaci´on temporal. Estas son los cinco scripts SQL que deben ser visibles despu´es de que el paquete ha sido extra´ıdos:

1 create repository postgresql.sql: Crea la base de datos Hibernate.

2 create quartz postgresql.sql: Crea la base de datos de cuarzo.

3 create sample datasource postgresql.sql: Carga los datos de ejemplo de fuente de datos en la base de datos Hibernate.

4 load sample users postgresql.sql: Crea todos los usuarios de ejemplo y roles en la base de datos Hibernate.

5 sample data postgresql.sql: Crea la base de datos de datos de ejemplo.

Los scripts anteriores se deben cargar en el orden en que se enumeran. Cargue estos scripts SQL utilizando la consola de PostgreSQL.

3.2. Cargando los scritps SQL

Antes de empezar, aseg´urese de que coloca todos los scripts SQL en el directorio que iniciar´a la sesi´on en la consola de PostgreSQL, en este caso /home/pentaho/tmp/.

Luego para ejecutar los scritps en una terminal ejecutamos:

13

# cd /home/ pentaho /tmp

# p s q l −−username=p o s t g r e s f

p o s t g r e s q l . s q l

Password

for

user

postgres :

.

output

Password

for

user

hibuser :

[ enter

‘ password ’ ’ ]

#

p s q l −−username=p o s t g r e s f

2

c r e a t e

q u a r t z

p o s t g r e s q l . s q l

Password

for

user

postgres :

.

output

Password

for

user

pentaho user :

[ enter c r e a t e

‘ ‘ password ’ ’ ]

 

#

p s q l −−username=p o s t g r e s f . sql

3

s a m p l e

d a t a s o u r c e

p o s t g r e s q l

create sample datasource postgresql . sql

Password

for

user

postgres :

Password

for

user

hibuser :

[ enter

‘ ‘ password ’ ’ ]

. output

# p s q l −−username=p o s t g r e s f

p o s t g r e s q l . s q l

Password

for

user

postgres :

Password

for

user

hibuser :

[ enter

‘ ‘ password ’ ’ ]

. output

# p s q l −−username=p o s t g r e s f

Password

for

. output

user

postgres :

p o s t g r e s q l . s q l

1

c r e a t e

r e p o s i t o r y

4

l o a d

s a m p l e

u s e r s

5

s a m p l e

d a t a

Ejecutando los anteriores scripts se crean tres base de datos hibernate, quartz y sam- pledata con las siguientes tablas:

hibernate, quartz y sam- pledata con las siguientes tablas: hibernate 1 Schema   List of r

hibernate 1

Schema

 

List

of

r e l a t i o n s

|

Name

|

Type

|

Owner

−−−−−−−−+−−−−−−−−−−−−−−−−−−−−−+−−−−−−−+−−−−−−−−−

public

|

a u t h o r i t i e s

|

table

|

hibuser

public

|

datasource

|

table

|

hibuser

public

|

granted authorities

|

table

|

hibuser

public

|

users

|

table

|

hibuser

1 Hibernate crea nuevas tablas en la base de datos hibernate despu´es de que la plataforma Pentaho BI inicia por primera vez.

14

quartz  List of r e l a t i o n s Schema | Name

 

List

of

r e l a t i o n s

Schema

|

Name

|

Type

|

Owner

−−−−−−−−+−−−−−−−−−−−−−−−−−−−−−−−−−−+−−−−−−−+−−−−−−−−−−−−−−

public

|

q r t z

b l o b

t r i g g e r s

|

table

|

pentaho

user

public

|

qrtz calendars

 

|

table

|

pentaho user

public

|

q r t z q r t z q r t z q r t z q r t z qrtz q r t z q r t z q r t z q r t z

c r o n

t r i g g e r s t r i g g e r s

d e t a i l s

|

table

|

pentaho

user

public

|

f i r e d j o b

|

table

|

pentaho

user

public

|

|

table

|

pentaho

user

public

|

j o b

l i s t e n e r s

|

table

|

pentaho

user

public

|

l o c k s

|

table

|

pentaho user

public

|

paused

trigger

grps

|

table

|

pentaho user

public

|

s c h e d u l e r

s t a t e

|

table

|

pentaho

user

public

|

s i m p l e

t r i g g e r s

|

table

|

pentaho

user

public

|

t r i g g e r

l i s t e n e r s

|

table

|

pentaho

user

public

|

t r i g g e r s

 

|

table

|

pentaho

user

sampledatat r i g g e r s   | table | pentaho user   List

 

List

of

r e l a t i o n s

Type

Schema

|

Name

|

|

Owner

−−−−−−−−+−−−−−−−−−−−−−−−−−−−−−+−−−−−−−+−−−−−−−−−−

public

|

customer w ter

|

table

|

postgres

public

|

customers department managers employees o f f i c e s o r d e r d e t a i l s orderfact orders payments products quadrant actuals time

|

table

|

postgres

public

|

|

table

|

postgres

public

|

|

table

|

postgres

public

|

|

table

|

postgres

public

|

|

table

|

postgres

public

|

|

table

|

postgres

public

|

|

table

|

postgres

public

|

|

table

|

postgres

public

|

|

table

|

postgres

public

|

|

table

|

postgres

public

|

|

table

|

postgres

public

|

t r i a l

b a l a n c e

|

table

|

postgres

15

4 Configurando Seguridad JDBC

En esta secci´on se describe c´omo configurar la seguridad de la plataforma Pentaho BI JDBC que se utiliza en el servido PostgreSQL, esto significa que la plataforma de Pentaho BI ahora apuntar´a a la base de datos hibernate en el servidor PostgreSQL en lugar del paquete de la base de datos HSQL.

4.1.

applicationContext-spring-security-jdbc.xml

Este archivo esta esta localizado en el directorio pentaho-solutions/system/.

Una vez abierto el archivo se localiza este fragmento de c´odigo:

<!−− This is only for Hypersonic . Please update this section for any other database
<!−− This
is
only
for
Hypersonic .
Please
update
this
section
for
any
other
database
you
are
using −−>
<bean id =‘‘ dataSource ’ ’
c l a s s =‘‘ org . springframework . jdbc . datasource
. DriverManagerDataSource ’ ’>
<p r o p e r t y
/>
<p r o p e r t y
name= ‘ ‘ driverClassName ”
v al u e = ‘ ‘ org . hsqldb . jdbcDriver ’ ’
name= ‘ ‘ u rl ’ ’
v al u e = ‘ ‘ j d b c : h s q l d b : h s q l : // l o c a l h o s t : 9 0 0 1 /
hibernate ’ ’
/>
<p r o p e r t y
<p r o p e r t y
</bean>
name=
name= ‘ ‘ password ’ ’
username
v al u e
=
hi b u s e r ’
/>
v al u e = ‘ ‘ password ’ ’
/>

Se realizan algunos cambios en la secci´on y el c´odigo debe ser similar al siguiente:

16

<!−− This is only for Hypersonic . Please update this section for any other database
<!−− This
is
only
for
Hypersonic .
Please
update
this
section
for
any other
database
you
are
using −−>
<bean id =‘‘ dataSource ’ ’ c l a s s =‘‘ org . springframework . jdbc . datasource
. DriverManagerDataSource ’ ’>
<p r o p e r t y
name= ‘ ‘ driverClassName ’
v al u e = ‘
‘ org
.
p o s t g r e s q l . D ri v e r ’
/>
<p r o p e r t y
name= ‘ ‘ u r l ’ ’
v al u e = ‘ ‘ j d b c : p o s t g r e s q l :
// l o c a l h o s t : 5 4 3 2 /
hibernate ’ ’
/>
<p r o p e r t y
<p r o p e r t y
</bean>
name=
‘ username
v al u e
=
‘ hi b u s e r ’
/>
name= ‘ ‘ password ’ ’
v al u e = ‘ ‘ password ’ ’
/>

4.2. applicationContext-spring-security-hibernate.properties

Este archivo esta esta localizado en el directorio pentaho-solutions/system/

Una vez abierto el archivo se localiza este fragmento de c´odigo:

jdbc .

. jdbc . username=hi b u s e r jdbc . password=password hi b e r n a t e . d i a l e c t=org .

jdbc

d r i v e r=org . hsqldb . j d b cD ri v e r

u r l=jdbc : hsqldb : h s ql : / / l o c a l h o s t

:9001/ hi b e r n a t e

hi b e r n a t e . d i a l e c t . HSQLDialect

Se realizan algunos cambios en la secci´on y el c´odigo debe ser similar al siguiente:

jdbc

. jdbc . username=hi b u s e r jdbc . password=password hi b e r n a t e . d i a l e c t=org .

jdbc

.

d r i v e r=org . p o s t g r e s q l . D ri v e r

u r l=jdbc : p o s t g r e s q l

: / / l o c a l h o s t

:5432/ hi b e r n a t e

hi b e r n a t e . d i a l e c t . PostgreSQLDialect

4.3. hibernate-settings.xml

Este archivo esta esta localizado en el directorio pentaho-solutions/system/hibernate/

Una vez abierto el archivo se localiza este fragmento de c´odigo:

17

<config f i l e>system/ hibernate / hsql . hibernate . cfg . xml</ config f i l e>

Se realizan algunos cambios en la secci´on y el c´odigo debe ser similar al siguiente:

<config f i l e>system/ hibernate / p o s t g r e s q l . hibernate . cfg . xml</ config f i l e>

4.4. postgresql.hibernate.cfg.xml (opcional)

Este archivo esta esta localizado en el directorio pentaho-solutions/system/hibernate/

No se tiene que realizar ning´un cambio en este archivo si desea utilizar el usuario hibuser por defecto (que fue creado con el archivo 4 load sample users postgresql.sql). Sin embargo, si usted desea especificar su propio usuario buscar y cambiar las siguientes dos l´ıneas de c´odigo:

<p r o p e r t y <p r o p e r t y

name= ‘ ‘ c o n n e c ti o n name= ‘ ‘ c o n n e c ti o n

. username

. password ’ ’>password</ p r o p e r t y>

>hi b u s e r</ p r o p e r t y>

Realice los cambios con un nombre de usuario y la contrase˜na de su elecci´on.

18

5 Configurar Hibernate y Quartz

Hibernate y Quartz necesitan especificame usar las bases de datos hibernate y quartz que se crean en el servidor PostgreSQL.

5.1. context.xml y pentaho.xml

Estos archivos se encuentra en el directorio /tomcat/webapps/pentaho/META-INF/ y /conf/Catalina/localhost/ respectivamente y tienen el mismo contenido.

Una vez abiertos los archivos se localiza este fragmento de c´odigo:

<?xml

<Context

version = ‘ ‘ 1. 0 ’ ’

enc odin g = ‘ ‘UTF8 ’ ’ ?>

path = ‘ ‘/ pentaho ’ ’

docbase =‘‘webapps/pentaho/ ’ ’>

<Resource

name= ‘ ‘ jdbc / Hibernate ’ ’

auth = ‘ ‘ Container ’ ’

type = ‘ ‘ javax

. sql . DataSource ’ ’

f a c t o r y = ‘ ‘ org . apache . commons . dbcp . BasicDataSourceFactory ’ ’

maxActive= ‘ ‘20 ’ ’ maxWait= ‘ ‘10000 ’ ’

driverClassName =‘‘ org . hsqldb . jdbcDriver ’ ’

maxIdle = ‘ ‘5 ’ ’

username = ‘ ‘

hi b u s e r ’ ’

password = ‘ ‘ password ’ ’

url =‘‘

j d b c : h s q l d b : h s q l : // localhost / hibernate ’ ’

v ali d a ti o nQ u e r y = ‘ ‘ s e l e c t count ( ) from INFORMATION SCHEMA.

SYSTEM SEQUENCES ’ ’

/>

<Resource

name= ‘ ‘ jdbc /Quartz ’ ’

sql . DataSource ’ ’

auth = ‘ ‘ Container ’ ’

type = ‘ ‘ javax .

f a c t o r y = ‘ ‘ org . apache . commons . dbcp . BasicDataSourceFactory ’ ’

maxActive= ‘ ‘20 ’ ’ maxWait= ‘ ‘10000 ’ ’ ’

driverClassName =‘‘ org . hsqldb . jdbcDriver ’ ’

maxIdle = ‘ ‘5 ’ ’

password = ‘ ‘ password

url =‘‘

j d b c : h s q l d b : h s q l :

// localhost / quartz ’ ’

v ali d a ti o nQ u e r y = ‘ ‘ s

SYSTEM SEQUENCES ’ ’ /> </Context>

e l e c t

count ( )

from INFORMATION SCHEMA.

username = ‘ ‘

p e n t a h o

u s e r ’ ’

Se realizan algunos cambios en la secci´on y el c´odigo debe ser similar al siguiente:

19

<?xml

<Context

version = ‘ ‘ 1. 0 ’ ’

enc odin g = ‘ ‘UTF8 ’ ’ ?>

path = ‘ ‘/ pentaho ’ ’

docbase =‘‘webapps/pentaho/ ’ ’>

<Resource

name= ‘ ‘ jdbc / Hibernate ’ ’

auth = ‘ ‘ Container ’ ’

type = ‘ ‘ javax

. sql . DataSource ’ ’

f a c t o r y = ‘ ‘ org . apache . commons . dbcp . BasicDataSourceFactory ’ ’

maxActive= ‘ ‘20 ’ ’

maxIdle = ‘ ‘5 ’ ’

maxWait= ‘ ‘10000 ’ ’ username = ‘ ‘ hi b u s e r ’ ’ password = ‘ ‘ password ’ ’

driverClassName =‘‘ org . postgresql . Driver ’ ’

url =‘‘

j d b c : p o s t g r e s q l : // localhost:5432 / hibernate ’ ’

validationQuery =‘‘ s e l e c t

1 ’

<Resource

name= ‘ ‘ jdbc /Quartz ’ ’

sql . DataSource ’ ’

/>

auth = ‘ ‘ Container ’ ’

type = ‘ ‘ javax .

f a c t o r y = ‘ ‘ org . apache . commons . dbcp . BasicDataSourceFactory ’ ’

maxActive= ‘ ‘20 ’ ’ maxWait= ‘ ‘10000 ’ ’ ’

’ driverClassName =‘‘ org . postgresql . Driver ’ ’

maxIdle = ‘ ‘5 ’ ’ username = ‘ ‘ p e n t a h o

u s e r ’ ’

password = ‘ ‘ password

url =‘‘

j d b c : p o s t g r e s q l : // localhost:5432 / quartz ’ ’

validationQuery =‘‘ s e l e c t </Context>

1 ’ ’/>

5.2.

quartz.properties

Un cambio adicional se necesita hacer para conseguir trabajar PostgreSQL con quartz para ello se abre el archivo quartz.properties que se encuentra en el directorio / pentaho- solutions/system/.

Buscar el siguiente fragmento de c´odigo:

#org . q u a r t z . j o b S t o r e . d r i v e r D e l e g a t e C l a s s

=

Se realizan algunos cambios y el c´odigo debe ser similar al siguiente:

org . quartz . jobStore . driverDelegateClass = org . quartz . impl . jdbcjobstore . PostgreSQLDelegate

20

6 Configurar servidor Apache-Tomcat

Para configurar los ajustes del servidor Apache-Tomcat para la plataforma Pentaho BI, la mayor´ıa de los cambios se realizan en el archivo web.xml que se encuentra en el directorio tomcat/webapps/pentaho/WEB INF/.

Usted puede configurar los siguientes elementos (y m´as) para la plataforma Pentaho BI:

pentaho-solutions locationelementos (y m´as) para la plataforma Pentaho BI: URL Deshabilitar base de datos HSQL al inicio

URLpara la plataforma Pentaho BI: pentaho-solutions location Deshabilitar base de datos HSQL al inicio TrustedIpAddrs

Deshabilitar base de datos HSQL al iniciola plataforma Pentaho BI: pentaho-solutions location URL TrustedIpAddrs n(opcional˜ diendo al servidor remoto) -

TrustedIpAddrs n(opcional˜ diendo al servidor remoto)location URL Deshabilitar base de datos HSQL al inicio - para la consola de administraci´on y

- para la consola de administraci´on y si se est´a acce-

Si est´a satisfecho con la siguiente configuraci´on para el servidor Pentaho BI usted no tendr´a que realizar ning´un cambio en el archivo.

6.1.

solution-path

El par´ametro solution-path permite a la Plataforma de Pentaho BI saber d´onde localizar el directorio pentaho-solutions. Por defecto se establece en el directorio /opt/biserver- ce/pentaho/.

Se realizan algunos cambios y el c´odigo debe ser similar al siguiente:

<contextparam> <paramname>s ol u ti o n path</paramname> <paramvalue>/ opt / pentaho /pentahos o l u t i o n s /</paramvalue> </ contextparam>

21

6.2.

fully-qualified-server-url

Si est´a satisfecho cuando visita la URL http://localhost:8080/pentaho para acceder a la plataforma Pentaho BI no necesita cambiar este par´ametro, sin embargo si usted desea que otros accedan al sitio (de forma remota o en una red) usted necesita realizar cambios en este par´ametro.

Buscar el siguiente fragmento de c´odigo:

<paramvalue> h t t p: // l o c a l h o s t : 8 0 8 0 / pentaho / </ paramvalue>

Se realizan algunos cambios y el c´odigo debe ser similar al siguiente:

<paramv al u e> h t t p: //www. p a gin a . com:8080 / pentaho / </ paramv al u e>

o

<paramvalue> h t t p: / / 1 9 2. 1 6 8. 1. 1 0 0 :8080 / pentaho / </ paramvalue>

6.3. Deshabilitar base de datos HSQL al inicio

Por defecto con la base de datos HSQL inicia autom´aticamente, para prevenir esto se localizan estos fragmentos de c´odigo:

< !−− [BEGIN HSQLDB DATABASES] −−> <contextparam>

<paramname>hsqldbd a t a b a s e s</paramname>

<paramvalue>sampledata@

/

/ data / hsqldb / sampledata ,

hibernate@

/

hsqldb/ quartz<$ </contextparam>

/ data/hsqldb/ hibernate , quartz@

< !−− [END HSQLDB DATABASES] −−>

/

/ data/

22

< !−− [BEGIN HSQLDB STARTER] −−> <l i s t e n e r>

<l i s t e n e r c l a s s>StartupListener org . pentaho . platform . web . http . con te xt . H s ql d b S t a r t u pLi s t e n e r</ l i s t e n e r c l a s s> </ l i s t e n e r>

< !−− [END HSQLDB STARTER] −−>

Se realizan algunos cambios y los c´odigos debe ser similares a los siguientes:

< !−− [BEGIN HSQLDB DATABASES] −−> <!−− <contextparam> <paramname>h s ql d b d a t a b a s e s</paramname>

<paramvalue>sampledata@

/

/ data / h s q l d b / sampledata ,

hibernate@

/

/ data/ hsqldb /hibernate , quartz@

/

hsqldb / quartz<$ </contextparam> −−>

< !−− [END HSQLDB DATABASES] −−>

/ data/

< !−− [BEGIN HSQLDB STARTER] −−> <!−− <l i s t e n e r> <l i s t e n e r c l a s s>StartupListener org . pentaho . platform . web . http . context . HsqldbStartupListener</ l i s t e n e r c l a s s> </ l i s t e n e r> −−>

< !−− [END HSQLDB STARTER] −−>

6.4.

TrustedIpAddrs

Si desea acceder a su servidor Apache-Tomcat remotamente por lo que en el paso anterior no ha especificado localhost o 127.0.0.1 para el par´ametro de base-url - usted tendr´a que agregar la direcci´on IP de su servidor Apache-Tomcat a esta lista.

Abra el archivo y localice esta l´ınea de c´odigo:

Buscar el siguiente fragmento de c´odigo:

Se realizan algunos cambios y los c´odigos debe ser similares a los siguientes:

<paramname>TrustedIpAddrs</paramname> <paramvalue>1 2 7 . 0 . 0 . 1 , [ y o u r i p a d d r e s s ]</paramvalue>

Esto permitir´a a la administraci´on de la consola Pentaho hacer ’ping’ al servidor para ver si es hacia arriba o abajo, no es necesario hacer esto si tu hosting es servidor local.

6.5. Otros parametros

Tambi´en puede cambiar el idioma local y pais en el archivo web.xml, los cambios en estos par´ametros se explica por s´ı mismo.

24

7 Configurando SMTP (servidor de correo)

Para configurar la plataforma Pentaho BI para utilizar un servidor SMTP (servidor de correo) que se utilizar´a para enviar informes por correo electr´onico, se necesitan hacer modificaciones al archivo /pentaho-solutions/system/smtp-email/email config.xml.

Estos son los par´ametros disponibles que se pueden configurar para que soporte SMTP:

mail.smtp.host: Esta es la direcci´on de su servidor de correo electr´onico SMTP para el env´ıo de correo electr´onico por ejemplo: smtp.gmail.com.

mail.smtp.port: Este es el puerto de su servidor de correo electr´onico SMTP, para GMail es el 587.

mail.transport.protocol: El transporte para acceder al servidor de correo. Usual- mente es smtp, para GMail es smtps.

mail.smtp.starttls.enable: Si el servidor SMTP utiliza autenticaci´on TTLS coloca- mos ese parametro en ‘true’, para GMail es ‘true’.

mail.smtp.auth: Colocar en ‘true’ si el remitente del servidor de correo requiere au- tentificarse.

mail.smtp.ssl: Se coloca en ‘true’ si el servidor de correo electr´onico requiere una conexi´on SSL, para GMail es ‘true’.

mail.debug: Salida de informaci´on de depuraci´on de la API JavaMail.

mail.pop3:

No se esta utilizando.

mail.from.default:

La direcci´on de los correos electr´onicos de la plataforma Pentaho

BI por ejemplo, ejemplo@gmail.com.

mail.userid:

El ID de usuario que se utiliza para autenticar con el servidor SMTP,

mail.smtp.auth se debe establecer en ‘true’.

25

mail.password:

La contrase˜na que se utiliza para autenticar con el servidor SMTP,

mail.smtp.auth se debe establecer en ‘true’.

El siguiente es un ejemplo del archivo smtp-email.xml configurado para GMail:

<emailsmtp> <properties> <mail . smtp .

h o s t>smtp . gmail . com</ mail . smtp . h o s t>

<mail . smtp . port>587</ mail . smtp . port> <mail . transport . protocol>smtps</mail . transport . protocol> <mail . smtp . s t a r t t l s . enable>true</ mail . smtp . s t a r t t l s . enable> <mail . smtp . auth>true</ mail . smtp . auth> <mail . smtp . s s l>true</ mail . smtp . s s l> <mail . smtp . quitwait>f a l s e</ mail . smtp . quitwait>

</ properties> <mail . pop3></mail . pop3> <mail . from . default>ejemplo@gmail . com</ mail . from . default> <mail . u s e r i d>ejemplo@gmail . com</ mail . u s e r i d> <mail . password>password</mail . password> </ emailsmtp>

26

8 Configurando publicaci´on

Por defecto publicaci´on no est´a habilitada, para habilitarla deber´a especificar una con- trase˜na que deber´a ser utilizada para publicar. Para comenzar se tiene que editar

el archivo publisher config.xml que se encuentra ubicado en el directorio /pentaho-

solutions/system/

Una vez abierto el archivo se localiza este fragmento de c´odigo:

<publisher config> <publisher password></ publisher password> </ publisher config>

Se ingresa un password entre la etiquetas publisher-password (esta contrase˜na sera la misma para todos los usuarios). El c´odigo debe quedar similar al siguiente (en este caso

la contrase˜na es ’password’):

<publisher config> <publisher password>password</ publisher password> </ publisher config>

A partir de ahora, cuando un usuario intenta publicar contenido en la plataforma Pen-

taho BI se tendr´a que especificar la contrase˜na.

27

9 Configuraci´on de la consola de administraci´on

Para configurar la Consola de administraci´on de PostgreSQL se tiene que descargar el driver JDBC para PostgreSQL.

Para colocar el conector JDBC se procede a descargar el archivo “postgresql-9.2-1002.jdbc4.jar” en el directorio “/administration-console/jdbc/”, para ello se ejecuta lo siquiente en la terminal:

# cd /opt/pentaho/administrationconsole / jdbc /

# wget

http :// jdbc . postgresql . org/download/ postgresql 9.21002.

jdbc4 . jar

28

10 Cuenta de Usuario

Por razones de seguridad, se debe considerar la creaci´on de un usuario independiente cuenta para ejecutar las aplicaciones del servidor, como Pentaho. Normalmente, la cuen- ta de usuario puede tambi´en ser due˜no del directorio que contiene el software. Adem´as, esta cuenta de usuario podr´ıa ser bloqueada del resto del sistema. Esto es una cuesti´on de errores: un bug en el software o un servidor simplemente hackeado no puede hacer ning´un da˜no fuera de su propio directorio del software, es decir, la cuenta de usuario reservado para Pentaho no tiene ning´un permiso fuera del ´arbol del directorio Pentaho.

Para configurar un cuenta de usuario, grupo, en una terminal se ejecuta lo siguiente:

# addgroup pentaho Adding group ’ p e n t a h o (GID 1
# addgroup
pentaho
Adding
group
’ p e n t a h o
(GID
1 0 0 1 )
.
.
.
# adduser −−system −−ingroup
pentaho −−disabled −login
pentaho
Adding
u s e r
’ p e n t a h o
(UID
1 1 5 )
1 1 5 )
with
.
.
.
Adding
new
’ p e n t a h o
(UID
group
’ p e n t a h o
.
.
.
C r e a ti n g
d i r e c t o r y

system u s e r home

’/ home/ p e n t a h o

.

.

.

Ahora se cambia de due˜no a la carpeta Pentaho, en una terminal se ejecuta lo siguiente:

# chown

pentaho : pentaho R / opt /pentaho

29

11 Iniciar la Plataforma Pentaho BI

Para iniciar la plataforma Pentaho BI en una terminal se ejecuta el siguiente comando “start-pentaho.sh” que se encuentra en el directorio /opt/pentaho/biserver-ce de la si- guiente manera en la terminal:

# cd /opt/pentaho/ biserver ce

# sudo u pentaho

/opt/pentaho/ biserver ce /opt/pentaho/ biserver ce WARNING: Using j a v a from path

./ start pentaho . sh

DEBUG:

PENTAHO JAVA HOME=

DEBUG:

PENTAHO JAVA=j a v a

Using

CATALINA BASE:

/ opt / pentaho / bi s e r v e r ce / tomcat

u s r

Using

CATALINA HOME:

/ opt / pentaho / bi s e r v e r ce / tomcat

Using

CATALINA TMPDIR:

/ opt / pentaho / bi s e r v e r ce / tomcat /temp

Using

JRE HOME:

/

Using

CLASSPATH:

/ opt / pentaho / bi s e r v e r ce / tomcat / bin /

bootstrap . jar

Nota: 1

Ahora ya se puede visitar la direcci´on http://localhost:8080 y aparecer´a una panta- lla la en la cual se debe ingresar el usuario y la contrase˜na, la cual se encuentra haciendo click en el boton “Evaluation Login” como lo muestra la Figura 11.1.

Para parar la plataforma Pentaho BI en una terminal se ejecuta el siguiente comando “stop-pentaho.sh” que se encuentra en el mismo directorio de la siguiente manera en la terminal:

1 Tenga en cuenta el comando sudo pentaho -u garantiza que el comando ser´a ejecutado con los permisos del usuario pentaho. Si se omite, el servidor se ejecutar´a con permisos de root y eso se quiere evitar como se dijo en el anterior apartado. autom´aticamente cuando se inicia el sistema operativo.

30

Figura 11.1: Pantalla Inicial Plataforma Pentaho BI

Figura 11.1: Pantalla Inicial Plataforma Pentaho BI # sudo − u pentaho ./ stop − pentaho

# sudo u pentaho

./ stoppentaho . sh

/opt/pentaho/ biserver ce

/opt/pentaho/ biserver ce WARNING: Using j a v a from path

DEBUG:

PENTAHO JAVA HOME=

DEBUG:

PENTAHO JAVA=j a v a

Using

CATALINA BASE:

/ opt / pentaho / bi s e r v e r ce / tomcat

u s r

Using

CATALINA HOME:

/ opt / pentaho / bi s e r v e r ce / tomcat

Using

CATALINA TMPDIR:

/ opt / pentaho / bi s e r v e r ce / tomcat /temp

Using

JRE HOME:

/

Using

CLASSPATH:

/ opt / pentaho / bi s e r v e r ce / tomcat / bin /

bootstrap . jar

31

12 Iniciar la Plataforma Pentaho BI Autom´aticamente

Para iniciar la plataforma Pentaho BI cuando se inicia el sistema, se realiza un script llamado “pentaho-init.sh” con el siguiente contenido:

#! / bi n / sh # go to t h e pentaho home cd
#! / bi n / sh
# go
to
t h e
pentaho
home
cd
/ opt / pentaho / bi s e r v e r −ce
# s e
t
up command
f o r
pentaho
user ,
s e t
j a v a
environment
cmd=” sudo −u
pentaho JAVA HOME=/opt /jvm/ JAVA OPTS=−Djava . awt .
h e a dl e s s=true
case ”$1”
in
start )
# run
the
original
pentaho
start
script
$cmd
. / s t a r t −pentaho . sh >> pentaho−demo . l o g &
; ;
stop )
# run
the
original
pentaho
start
script
$cmd
. / stop−pentaho . sh >> pentaho−demo . l o g &
; ;
r e s t a r t )
$0 stop
$0 start
; ;
∗)
echo
”Usage :
$0
{ s t a r t | stop | r e s t a r t }”
exit
1
esac
exit
0

Este script debe ser copiado en el directorio /etc/init.d, se lo copia de la siguiente manera en la terminal:

# cp

pentahoi n i t . sh

/ etc / i n i t . d

32

Para comprobar su funcionamiento, se puede comprobar de la siguiente manera en la terminal:

# cp

# ./ pentahoi n i t . sh

/ etc / i n i t . d/

Usage :

./ pentahoi n i t . sh

{ start | stop | r e s t a r t }

# ./ pentahoi n i t . sh

stop

# ./ pentahoi n i t . sh

start

Para indicar que el script se ejecute durante el arranque del sistema, se ejecuta lo si- guiente en la terminal:

# updaterc . d pentahoi n i t . sh

defaults

Para eliminar un servicio previamente instalado se usa el par´ametro -f de la siguiente manera en la terminal:

# updaterc . d f

pentahoi n i t . sh

remove

33

13 Iniciar la consola de Administraci´on

Para iniciar la consola de Administraci´on en una terminal se ejecuta el siguiente co- mando ’start-pac.sh’ que se encuentra en el directorio “/opt/pentaho/administration- console” de la siguiente manera en la terminal:

# cd /opt/pentaho/administrationconsole

# sudo u pentaho

./ start pac . sh

0 9: 2 6: 2 8 , 7 4 9

INFO

[ J e t t y S e r v e r ]

C ons ole

i s

now

s t a r t e d .

I t

can

be

accessed

using

http :// poldroskylaptop :8099

or

http

://127.0.1.1:8099

Ahora ya se puede visitar la direcci´on http://localhost:8099 Se le pedir´a un nombre de usuario y contrase˜na que por defecto son “admin” y “password”. Si se ha iniciado y conectado a la consola de administraci´on debiera ver la pantalla de bienvenida como lo muestra la Figura 13.1.

Figura 13.1: Pantalla Inicial Consola de Administraci´on

ver la pantalla de bienvenida como lo muestra la Figura 13.1. Figura 13.1: Pantalla Inicial Consola

34