AkbarAhmed.com

Engineering Leadership

Introduction

Pentaho Design Studio (PDS) is a BI plugin for Eclipse. I’m going to download the complete package as Pentaho was nice enough to integrate the plugin with Eclipse for us.

Download

To download the Pentaho Design Studio (PDS) either run the following command, or follow the bulleted steps below.

wget http://downloads.sourceforge.net/project/pentaho/Design%20Studio/4.0.0-stable/pds-ce-linux-64-4.0.0-stable.tar.gz

Or follow the steps below if you don’t want to use the wget command shown above.

Installation

Note:
I am going to assume that you have downloaded the file listed above into the Downloads directory in your Home directory.

Open a terminal and enter the following commands:

cd
mkdir bin
cd ~/Downloads
tar -xzf pds-ce-linux-64-4.0.0-stable.tar.gz
mv design-studio/ ~/bin/pds-ce-linux-64-4.0.0
cd ~/bin
ln -s pds-ce-linux-64-4.0.0 design-studio
vi ~/.profile

Near the bottom of the file you should see the PATH variable. Append :$HOME/bin/design-studio to end of the PATH.

For example, my PATH was:
PATH="$HOME/bin:$PATH"

…which I updated to:
PATH="$HOME/bin:$PATH:$HOME/bin/design-studio"

It’s better to append :$HOME/bin/design-studio to end of the PATH than the beginning so that we don’t accidentally step on another installation of Eclipse. Also, as we created a symlink named pds we are less likely to have PDS inaccessible due to another Eclipse installation that is earlier in the PATH.

Next, we’ll create a symlink named pds so that we can type a shorter command to open Pentaho Design Studio.

cd ~/bin/design-studio
ln -s eclipse pds

Finally, source your profile to update your environment.

source ~/.profile

Now just type pds and press the Enter key:

pds

Overview: What is Pentaho?

Pentaho is an open source Business Intelligence (BI) Suite that comes in with either commercial support (http://www.pentaho.com/) and or community support (http://community.pentaho.com/).

This post provides instructions for the Pentaho community edition suite.

Create a pentaho user and group

Open a terminal and run the following commands:

sudo addgroup pentaho
sudo adduser --system --ingroup pentaho --disabled-login pentaho

Install Java

Follow the JDK installation instructions that are listed in the following post: Install Java JDK 6.0 update 31 on Ubuntu 12.04 LTS

Install the Pentaho BI Server

Now that we have Java installed we can get on with our main task of installing the Pentaho BI Server.

  1. Download the Pentaho BI Server from http://wiki.pentaho.com/display/COM/Latest+Stable+Builds. I’m using the current stable build for x64 Linux which is biserver-ce-4.5.0-stable.tar.gz.
  2. Open a terminal and enter the following commands:
sudo mkdir /opt/pentaho
cd ~/Downloads
gunzip biserver-ce-4.5.0-stable.tar.gz
tar xf biserver-ce-4.5.0-stable.tar
sudo mv biserver-ce /opt/pentaho/biserver-ce-4.5.0
sudo mv administration-console /opt/pentaho/administration-console-ce-4.5.0
cd /opt/pentaho
sudo ln -s biserver-ce-4.5.0 biserver-ce
sudo ln -s administration-console-ce-4.5.0 administration-console
sudo chown -R pentaho:pentaho /opt/pentaho

Start the Pentaho Server

Open a terminal, then enter the following commands:

Note:
The following command is only required if you downloaded a Windows .zip file by accident. If this is the case, then none of the .sh files will be executable.
sudo find /opt/pentaho/ -type f -name '*.sh' -exec chmod 744 '{}' \+

cd /opt/pentaho/biserver-ce
sudo -u pentaho ./start-pentaho.sh

Login to the Pentaho User Console

  1. Open a web browser to http://localhost:8080.
  2. Click Evaluation Login and select a user type to login as.

Login to the Pentaho Administration Console

Open a terminal, then enter the following commands:

cd /opt/pentaho/administration-console
sudo -u pentaho ./start-pac.sh
  1. Open a web browser to http://localhost:8099.
  2. Enter a User Name of admin.
  3. Enter a Password of password.
  4. Click Log In.

That’s it. The core Pentaho BI server is installed and ready for development. However, a good next step is to change the database that Pentaho uses and install the Pentaho Design Studio (PDS), but we’ll leave that for future posts.

Hadoop also port 8080, so you will either need to use a different port for the Pentaho User Console or change the Hadoop MapReduce ShuffleHandler port.

What is Pentaho

Pentaho is an open source Business Intelligence (BI) Suite that comes in with either commercial support (http://www.pentaho.com/) and or community support (http://community.pentaho.com/).

This post provides instructions for the Pentaho community edition suite.

Install Pentaho BI Server 4.5 on Windows 7 x64

Install Java

Your steps may vary slightly as I had an older version of the JDK installed. However, the gist is “just click Next till your done”.

  1. Download the Java JDK from http://www.oracle.com/technetwork/java/javase/downloads/index.html.
  2. After downloading, double-click the installer, which will be named something like: (the name of your file may vary depending on which version you have downloaded)
  3. Click Next.
  4. Click Next. Wait for the installation to finish.
  5. Click Next. Wait for the JRE installation to finish.
  6. Click Continue.
  7. Click Next to start the JavaFX SDK Setup.
  8. Click Next.
  9. Click Close.

Add Java to your PATH

You should now have the Java SDK installed into something like (your exact path may vary based on the version):

C:\Program Files\Java\jdk1.7.0_04\bin

  1. Click Start.
  2. Right-click on Computer, click Properties.
  3. In the left pane, click Advanced system settings.
  4. Select the Advanced tab, then click Environment Variables…
  5. In System Variables, scroll till you find Path.
  6. Select Path, click Edit…
  7. Add the Java bin folder to  your path by appending ;C:\Program Files\Java\jdk1.7.0_04\bin to the end of the Path Variable Value.
  8. Click OK.
  9. Click New…
  10. In Variable name, enter: PENTAHO_JAVA_HOME
  11. In Variable value, enter: C:\Program Files\Java\jdk1.7.0_04
  12. Click OK.
  13. Click OK.
  14. Click OK.

As last step check that your path is set correctly.

  1. Open Powershell.
  2. Type java -version.
  3. Then type javac -version.
  4. For each command above, you should see the correct Java version  (for me its 1.7.0_04)
  5. Open a command prompt.
  6. Type echo %PENTAHO_JAVA_HOME%
  7. You should see the following as output: C:\Program Files\Java\jdk1.7.0_04

Note:

If you want to show the value of PENTAHO_JAVA_HOME in PowerShell, then enter:

Get-Childitem env:PENTAHO_JAVA_HOME

Note:

I had to reboot to get this to work.

Install Pentaho BI Server

Now that we have Java installed we can get on with our main task of installing the Pentaho BI Server.

  1. Download the Pentaho BI Server from http://wiki.pentaho.com/display/COM/Latest+Stable+Builds. I’m using the current stable build which is biserver-ce-4.5.0-stable.zip.
  2. Open Windows Explorer and create new folder: C:\Program Files\Pentaho.
  3. Unzip biserver-ce-4.5.0-stable.zip.
  4. Next, copy the biserver-ce and administration-console folder into C:\Program Files\Pentaho.

Update the Permissions to allow the server to be run as a developer’s regular user (i.e. not Administrator)

  1. In Windows Explorer, navigate to C:\Program Files.
  2. Right-click the Pentaho folder, click Properties.
  3. Select the Security tab, click Edit.
  4. Click Add.
  5. Enter the developer’s username, then click OK.
  6. In the Allow column, check Full control.
  7. Click OK.
  8. Click OK.

Start the Pentaho Server

I am not going to cover automatic startup of the Pentaho Server on Windows because my assumption is that some developers choose to run Pentaho on Windows, but that product deployments

  1. Open Windows Explorer to C:\Program Files\Pentaho\biserver-ce.
  2. Double-click start-pentaho.bat.
  3. If the Windows Security Alert dialog box pops up, then click Allow access.

Hint:

I recommend that you resize the command window that displays the Tomcat messages. This will make it easier to read messages that are output by Tomcat.

  • In the top left corner of the Window, click the Java icon.
  • Click Properties.
  • Select the Layout tab.
  • Set the Width = 120
  • Set the Height = 45
  • Click OK.

Login to the Pentaho User Console

  1. Open a web browser to http://localhost:8080.
  2. Click Evaluation Login and select a user type to login as.

Login to the Pentaho Administration Console

  1. Open Windows Explorer to C:\Program Files\Pentaho\administration-console.
  2. Double-click start-pac.bat.
  3. Open a web browser to http://localhost:8099.
  4. Enter a User Name of admin.
  5. Enter a Password of password.
  6. Click Log In.

That’s it. The core Pentaho BI server is installed and ready for development. However, a good next step is to change the database that Pentaho uses, but we’ll leave that for another post.

I have updated an earlier post on how to install MySQL 5.5 on Ubuntu 10.04 LTS.

Importantly, the new instructions include how to add the MySQL 5.5 libs to the loader path. This is very important as it’s highly likely that you’ll build software that depends on these MySQL libraries.

The updated instructions can be viewed at: MySQL 5.5 on Ubuntu 10.04 LTS.

Changing the default port of ssh is not a huge improvement in security, but I’ve found it to be a useful tool in keeping log files free from failed login attempts with username root on port 22 (and I hope you do spend the time to review your log files!). A large number of scripts run scans on the default ssh port of 22 looking for known vulnerabilities. Of course, you should keep ssh fully patched, however rapidly growing log files is a problem all its own.

One of the easiest ways to keep your log files from filling up with failed login attempts is to change the ssh port.

vi /etc/ssh/sshd_config

Update the port to a new value, such as:

Port 876

Once you’ve updated sshd, you may also which to update ssh for convenience:

vi /etc/ssh/ssh_config

Uncomment the line with Port, and set it to the same value that you set in the sshd_config file:

Port 876

Lastly, reload the sshd daemon:

/etc/init.d/ssh reload

Open a 2nd ssh session to the server to ensure everything is working.

Note:
I recommend you keep the original session open in case you get something wrong in your configuration.

The first thing I did was to create a wwwuser that I plan to run pyramid under. As a result, I am intentionally installing Python 2.7.2 under only 1 user account, and am leaving the system wide python installation unchanged.

useradd wwwuser
passwd wwwuser
cd /home
mkdir wwwuser
chown wwwuser:wwwuser wwwuser

Copy all of the hidden files into the /home/wwwuser folder. I did this from my desktop files.

vi /etc/passwd
Update the shell to be:
/bin/bash

su - wwwuser
ln -s .profile .bash_profile
mkdir bin
mv Python-2.7.2.tgz bin
cd bin
tar -xzf Python-2.7.2.tgz
cd Python-2.7.2
./configure --prefix /home/wwwuser/bin/Python-2.7.2
make
make install

vi ~/.profile
Update path to:
PATH="$HOME/bin:/home/wwwuser/bin/Python-2.7.2/bin:$PATH"

source ~/.profile

which python
/home/wwwuser/bin/Python-2.7.2/bin/python

python --version

The output of the python --versioncommand should now be Python 2.7.2.

Update April 23, 2012
I added new instructions for adding the MySQL libs to the loader path. Failure to add the libs to the loader path will cause errors when you try to run/build programs that depend on MySQL, such as installing the MySQL driver for Pyramid (Python).

Update April 18, 2012
Thanks to Lampros for pointing out that WordPress was converting double dashes into single dashes “-“. I have updated the post so that double dashes are displayed correctly.

The following are installation notes for MySQL 5.5 on Ubuntu 10.04 LTS running on the Rackspace cloud.

Download MySQL

Download the MySQL package from http://www.mysql.com in the ~/Downloads directory.

Download the following package from http://www.mysql.com/downloads/mysql/#downloads by selecting Debian Linux from the Select Platform drop-down list:

mysql-5.5.22-debian6.0-x86_64.deb

Installation Prerequisities

After the download is complete, open a terminal and execute the following commands:

Note:
libpthread-stubs0 libpthread-stubs0-dev coreutils are really not required, but I installed them as I was working through another issue.

apt-get install build-essential cmake libncurses5-dev libaio-dev bison libpthread-stubs0 libpthread-stubs0-dev coreutils

Setup the MySQL User and Group

groupadd mysql

useradd -r -g mysql mysql

Install MySQL

cd ~/Downloads

dpkg -i mysql-5.5.22-debian6.0-x86_64.deb

Note:

MySQL is now installed into the following directory:

/opt/mysql/server-5.5

cd /opt
chown root:root mysql
cd mysql
chown root:root server-5.5
cd server-5.5
chown -R mysql:mysql ./*
./scripts/mysql_install_db --user=mysql
chown mysql:mysql ./*
cd lib
chown -h mysql libmysqlclient.so libmysqlclient.so.18 libmysqlclient_r.a libmysqlclient_r.so libmysqlclient_r.so.18 libmysqlclient_r.so.18.0.0
cd ../support-files/

Note:
Decide which of the configuration files meets your needs, then copy it to /etc.

cp my-medium.cnf /etc/my.cnf
cp mysql.server /etc/init.d/mysql

Add MySQL to PATH

vi /etc/environment

Add the following to the end of the path:

/opt/mysql/server-5.5/bin

Example:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/mysql/server-5.5/bin"

source /etc/environment

Start the MySQL Server

/etc/init.d/mysql start

Set the MySQL Server to Start on Boot

update-rc.d mysql defaults

Create a root Password and Secure the Server

The following is the most basic and minimal security, but the steps below are required for a production server.

/opt/mysql/server-5.5/bin/mysql_secure_installation

Check the security settings:

mysql -u root -p
mysql> use mysql;
mysql> SELECT User, Host, Password FROM mysql.user;

Note:
None of the password fields should be blank.

Add the MySQL Libs to the Loader Path

We now need to update our loader path to include the MySQL libs. This is important for any future work we do that depends on the MySQL libraries, such as installing a MySQL driver for Pyramid.

cd /etc/ld.so.conf.d
vi mysql.conf

Paste in the following:

# MySQL 5.5 Libraries
/opt/mysql/server-5.5/lib

ldconfig

Post installation checks

mysqladmin version -u root -p
mysqladmin variables -u root -p

The following are instructions for creating an Ubuntu 10.04 (LTS) server instance in the Rackspace cloud.

  1. Login to your CloudControl Panel account.
  2. In the left pane, click Hosting, then click Cloud Servers.
  3. Click Add Server.
  4. Click Select next to Ubuntu 10.04 LTS (Lucid).
  5. Enter a Server Name.
  6. Select a Server Size.
  7. Click Create Server.
  1. Click the Gear in the top right corner, click Calendar Settings.
  2. Click the Labs tab.
  3. Scroll to the bottom, then select Enable next to World clock.
  4. Click Save.
  5. Once you’re back in Calendar view, click Settings in the World clock to select the time zones you want to display.