Linux)JDKPostgreSQLPentahoはJavaで書かれているため、JDKをインストールしておく。データベースサーバについては、MySQL、PostgreSQL、MS-SQLサーバ、Oracleなど主要なものに対応しているが、ここではマニュアルでお勧めされているPostgreSQLでインストールする。データベースサーバがなくても内臓のHSQLDBで作動するため、データベースサーバの設定は必須ではないようである。ユーザとして試用する程度ならば、これで十分だろう。PostgreSQLについてはパッケージでインストールし、必要に応じてネットワークからアクセスできるように適当に設定をしておく。Linuxサーバ上に、「pentaho」ユーザを作成しておく。以降は、このユーザで作業を進める。Editionをダウンロードする。Platform」からBAサーバをダウンロードする。ダウンロードはSourceforgeから行われる。バージョンによってインストール方法などが変更になっていたり、機能が増減していたりする一方で、マニュアルに反映されていない部分もあったりと、試行錯誤が必要。zipファイルでダウンロードしたら、アーカイブを解凍する。解凍すると「pentaho-server」フォルダができるので、以降はこのフォルダを起点に記述していく。pentahoにはTomcatが同梱されており、今回はこれを利用する。アプリケーションサーバやTomcatが利用できる場合は、sourceforgeからpemtaho-manualというファイルを落とせばよいようである。以下のドキュメントを参考に設定していく。一部、落とし穴がある。以下、パスはすべてpentaho-serverを起点にする。【ドキュメント】マニュアルインストールの方法ディスプレイが接続されていない、ないしはGUIが設定されていない環境向けにJAVAの起動オプションを設定する。Editionの同梱のTomcatはstart-pentaho.shで起動するため、このファイルを編集する。ファイル内の「CATALINA_OPTS」に「-Djava.awt.headless=true」というパラメータを追加しておく。実際に利用してみてオプションの効果はよくわからない。以下のスクリプトを利用して、PostgreSQLに必要なデータベースを作成する。Editionには3つしかない。data/postgresqlcreate_jcr_postgresql.sqlcreate_quartz_postgresql.sqlcreate_repository_postgresql.sqlこれらのファイル内に、作成されるデータベースユーザとパスワードが記載されているため、必要に応じて編集する。以降、各所のDB設定では、ここで修正した内容に置き換える。ファイルはすべてSQLであるため、どのような形でもPostgreSQLで実行すればよいが、コマンドラインツール「psql」を利用する場合は、以下。data/postgresql/{ターゲットファイル}ここでマニュアルにない落とし穴。Quartzデータベースに不具合があり、そのままではpentahoの起動に失敗する。後の設定でテーブルのPrefixを設定するが、起動時の確認の際にはこの設定がうまく効いていないようで、テーブルの確認が失敗するようだ。ダミーのテーブルを作成してやる必要がある。バグなのか?ソースを共有しているはずであるが、有償版では問題ないのだろうか?先ほど作成したquartzデータベースに、以下のSQLでダミーのテーブルを作成する。以下のファイルを修正。PostgreSQL向けに設定されているので、確認のみで良い。pentaho-solutions/system/quartz/quartz.properties以下のようになっているか確認。以下のファイルを修正。pentaho-solutions/system/hibernate/hibernate-settings.xml<config-file>system/hibernate/postgresql.hibernate.cfg.xml</config-file>上記修正後、そこで設定したファイル内のPostgreSQLの接続先、ユーザ名、パスワードなど接続情報を確認する。以下のファイルを編集し、PostgreSQLを利用するようにする。各セクションの既存の設定はコメントアウトか削除しておく。ファイル内に各種データベース用の設定がコメントアウトされているので、PostgreSQLの部分を有効にする。必要に応じて接続情報を修正する。Editionでは必要ないようである。マニュアルに記載されている設定を記載しても、該当するデータベースが作成されていないので動作しない。「di_jackrabbit」データベースを作成する手順とスクリプトも見当たらない。次に、データベースに必要なJDBCドライバをインストールする。tomcat/lib上記のパスにドライバのjarファイルを置く。以下のファイルに接続情報を記載する。注意しなければならないのは、マニュアルをそのままコピーしてしまうと、一部で大文字と小文字が間違っていて、動かない。一見すると問題ないように見えるので厄介である。ファイル内にある既存の接続設定をよく参照して、大文字・小文字の区別まで含めてきっちり設定を作成する。Editionでは必要ないか、利用できないため記述しなくてもよい(と思う)。Fileの置換マニュアルのPostgreSQLの部分に記載はないが、MySQLでは記載がある。MySQLをPostgreSQLに読み替えて作業をする。LogのためのSQLの設定らしい。pentaho-solutions/system/同梱のTomcatの起動と終了pentaho-server以下のstart-pentaho.shでTomcatを起動する。JavaVMのメモリ割り当てなどもこのファイルに設定する。初回起動時はバージョン確認のプロンプトが出るので、一読してenterキーを押せばしばらくしてTomcatが起動する。うまく起動しない場合は、Tomcatのログやデータベースサーバのログを確認して、うまく接続できているかなどを確認していく。Tomcatのcontext.xmlの大文字・小文字の違いに気づかず、データベースに接続できなくてハマった。pentaho-serverの終了は「stop-pentaho.sh」を使う。Tomcatの再起動に時間がかかる場合があるので、Tomcatに以下の設定をしておく。Tomcatは「WEB-INF/libのアノテーションをVMがスキャンするので」再起動が遅いらしい。これを回避するには、web.xmlに以下を記述する。pentaho-server内にはいくつかweb.xmlがあるが、とりあえず全部に記載しておく。....BAサーバが起動したら、そのホストの8080ポートにアクセスし、ユーザ名「admin」、パスワード「password」でログインする。http://{インストール先のホスト名}:8080/サーバ起動中のログは以下のファイルに出力される。うまく動作しない場合などに確認する。以下の基本設定ファイルを確認し、適宜編集する。「fully-qualified-server-url」にPentahoのルートURLを設定するPentahoのWebインターフェイスではJavaScriptが多用されている。fully-qualified-server-urlはそのスクリプトなどを呼び出すためのURLを構築するための基礎になる。Tomcatをフロントエンドに使っている場合は問題にならないが、Apacheと連携する場合には、表面的なURLと内部でのURLがずれるため、ベースURLを設定しないとうまく動作しない。バージョン7.0まではうまく動作したが、7.1からは設定しないと動かないようである。アップグレードの際には注意が必要である。</listener>-->サンプルデータではないが、本番システムでは不要なメッセージを出すので、以下もコメントアウト。<url-pattern>/*</url-pattern></filter-mapping>-->Apacheとの連携ApacheとTomcatを連携させる。Tomcatはアプリケーションサーバに専念させ、フロントエンドはApacheとする。SSL通信などもApacheで設定するほうが慣れているため。連携にはmod_proxy_ajpを利用する。LinuxではUSEフラグで「proxy_ajp」を設定してコンパイルする。mod_proxy_ajpを利用可能にしたうえで、ProxyPassでTomcatの接続設定を行う。ajp://localhost:8009/pentaho-styleTomcat側TomcatのローカルなWebサーバを停止して、ajp用のポートを開ける。pentahoの内蔵Tomcatでは、標準でajpポートは空いているようである。ローカルのWebサーバを無効にするtomcat/conf/server.xmlの以下の個所をコメントアウトする。-->以下のajpコネクタの設定が有効になっていることを確認する。ポート番号が上記ProxyPassと一致していることを確認する。Pentaho9.1から「secretRequired=“false”」を追加しないとApacheから接続できない。Tomcatのバージョンアップによるものか。/>最後に、ApacheとPentahoを再起動する。Editorページ用ツール以前のリビジョンバックリンク文書の先頭へ。