Teiid のインストールメモ

作成日:2015.10.22
修正日:2016.05.04

このページでは Teiid のインストール手順を解説する。

Teiid に関する他のページはTeiid Data Virtualization の覚え書きのインデックスからたどれる。

Notice

Teiid 8.13 リリース以降は、Teiid Server の動作基盤が JBoss EAP ではなく、JBoss EAP の OSS 版の WildFly に変更された。 同梱版も WildFly になっている。 JBoss EAP と WildFly で差はほとんどない。 一部の説明を JBoss EAP → WildFly に読み替えて欲しい。

また一部の画像が古いバージョンになっているが適時読み替えて欲しい。


更新履歴
(2015.10.22) 作成。
(2016.05.04) Teiid 8.12.4 & Teii Designer 10.0 にアップデート


目次

1. インストール環境の前提

Teiid の一般的な使い方では Teiid ServerTeiid Designer の二種類のソフトが必要である。 このインストールメモでは Teiid Server を x86-64 の Linux (CentOS 6.7) で走らせる。 Teiid Designer は Teiid Server が動くのと同じサーバーで動かしてもよい。 このインストールメモでは同サーバーで動かすパターン(以下、「同一サーバー運用」と呼称)と別サーバーで動かすパターン(以下、同一「別サーバー運用」と呼称)の2つを説明する。 別サーバー運用の場合、Teiid Designer は別の x86-64 の Windows 7 で動かす前提で説明する。 両方のサーバーに事前に JDK 1.7 以上の Java をインストールしておくものとする。

インストールは同一サーバー運用の方が簡単である。 ただ Linux 上で動く Teiid Designer は X Window System 上に描画するので、インストールする Linux サーバーが遠隔地にある場合、X の画面を飛ばせる必要がある。

インストールサーバ(同一サーバー運用)
 IP アドレスOS
Teiid Server と Teiid Designer を インストールするサーバー10.20.230.16CentOS 6.7
インストールサーバ(別サーバー運用)
 IP アドレスOS
Teiid Server を インストールするサーバー10.20.230.16CentOS 6.7
Teiid Designer を インストールするサーバー10.20.230.6Windows 7

同一サーバー運用でも別サーバー運用でも、2. ファイルのダウンロード3. Teiid Server のインストール4. Teiid Designer のインストール までは同じである。 その後、5. デフォルト・サーバーの登録・設定を行うが、同一サーバー運用の場合と別サーバー運用の場合では手順が異なる点に注意が必要。

2. ファイルのダウンロード

最初に、インストールする Teiid Designer と Teiid Server のバージョンを決定する必要がある。 この 2 つのソフトは別々に開発されており、Teiid Designer は最新の Teiid Server をサポートしていないことがある。 この記事を書いている時点で Teiid Designer は 10.0 がリリースされ、一方 Teiid Server は 8.13.4 がリリースされている。 しかし Teiid Designer 10.1 がサポートしてるのは Teiid Server 8.12 までとなる。 そこでこのインストールメモでは 8.12 系最新の 8.12.4 を使う。

 バージョン
Teiid Designer10.0
Teiid Server8.12.4

2.1 Teiid Server ファイルのダウンロード

Teiid Server のダウンロードページは Downloads である。 古いバージョンが必要な場合は、All prior releases から探す。

ダウンロードするファイルは複数存在する。

Teiid のモジュールの説明
モジュール説明
Teiid Runtime Teiid Server の本体。
x.y.z with EAP (ファイル名は teiid-x.y.z-server.zip) と x.y.z (ファイル名は teiid-x.y.z-jboss-dist.zip)の 2 種類がある。 Teiid は JBoss Enterprise Application Server (EAP) のモジュールとして動作するが、前者は JBoss EAP に Teiid Runtime その他が同梱されており、後者は JBoss EAP をインストールした後に展開するパッチになっている。
どちらかをダウンロードすること。
ただし前者を用いる場合には、JBoss EAP もダウンロードすること。 JBoss EAP は このサイト にレジストリした JBoss EAP 6.4 をダウンロードする。 この手順では ZIP 形式のファイル jboss-eap-6.4.0.zip を入手した前提で進める。
Teiid Embedded Teiid を JBoss EAP 上で動かすのではなく、自作の Java プログラムの中から呼び出せるようにしたライブラリ。 ファイルは teiid-x.y.z-embedded-dist.zip という名前。
このインストールメモでは使用しない。
Teiid AdminShell Teiid Server へ接続して操作するためのコマンドラインツール。
ファイルは teiid-x.y.z-adminshell-dist.zip という名前。
Teiid Designer なしでデータソースの登録などをするために必要なので、ダウンロードすること。
JDBC Driver Teiid Server に JDBC 経由でアクセスするためのドライバー。 ファイルは teiid-x.y.z.Final-jdbc.jar という名前。
Teiid Server のインストールとセットアップが完了後に、クライアントからクエリーを発行するために必要なので、ダウンロードすること。
同様に 1.5 Client Driver と 1.4 Client Driver は JDK 1.5 と JDK 1.4 からアクセスするためのドライバーだが、このインストールメモでは使用しない。
Teiid Source ソースコード。 このインストールメモでは使用しない。
Release Notes / Change Log Release Notes と Change Log。 このインストールメモでは使用しない。
Teiid Web Console JBoss EAP 上で動作し、Web 経由で Teiid Server の設定をするための Web-UI 機能。 Teiid のバージョンとは独立しており、この記事を書いた時点で最新は 2.6.1。 ただし Teii Server 8.12.4 は 2.5.1 を必要とする。 ファイルは teiid-console-dist-2.5.1-jboss-as7.zip という名前。
このインストールメモで使用するのでダウンロードすること。
ただし Teiid Runtime で x.y.z with EAP の同梱版をダウンロードした場合には、その中に含まれているので個別にダウンロード & インストールする必要はない。
Teiid RHQ Plugin なんだろう? このインストールメモでは使用しない。

2.2 Teiid Designer ファイルのダウンロード

Teiid Designer は JBoss Developer Studio のプラグインとして開発されているので、JBoss Developer Studio のサイトから JBoss Developer Studio 9.0.0 をダウンロードする。 ここではダウンロードできたファイルは jboss-devstudio-9.0.0.GA-installer-standalone.jar として話を進める。

3. Teiid Server のインストール

このインストールメモでは Teiid Server 自体は CentOS 6.7 for x86-64 上で動かすものとする。 JDK 1.7 以上の Java がインストールされ、java コマンドにもパスが通っているものとする。

3.1 ファイルの展開

Teiid Runtime のダウンロードしたバージョンに合わせて JBoss EAP 同梱版か別立て版のいずれかのファイル展開を行う。 このインストールメモでは ~/teiid ディレクトリの下に展開する。 なお JBoss EAP 同梱版は ~/teiid/teiid-8.12.4/、JBoss EAP 別立て版は ~/teiid/jboss-eap-6.4/ というディレクトリに展開されるが、今後の説明は ~/teiid/jboss-eap-6.4/ の下に展開された前提で進める。

Problem

別サーバー運用の場合、JBoss EAP 同梱版だと 5.2 節 のデフォルト・サーバーの起動でエラーが出て動作しない。 とりあえず別立て版を使った方がよさそう。

同一サーバー運用の場合、同梱版の方がよいであろう。

JBoss EAP 同梱版の場合

JBoss EAP の Teiid 同梱版は JBoss EAP + Teiid Runtime + Teiid Web Console が入っている。 これを ~/teiid の下に展開すると ~/teiid/teiid-8.12.4/ というディレクトリが作成される。

$ cd ~/teiid
$ unzip -x (ファイルを置いているディレクトリ)/teiid-8.12.4-server.zip 

以降の説明に合わせるためにディレクトリはリネームしておく。

$ mv ~/teiid/teiid-8.12.4/ ~/teiid/jboss-eap-6.4/

JBoss EAP 別立て版の場合

JBoss EAP、Teiid Runtime 、Teiid Web Console を展開する。 JBoss EAP を ~/teiid の下に展開すると ~/teiid/jboss-eap-6.4/ というディレクトリが作成される。

$ cd ~/teiid
$ unzip -x (ファイルを置いているディレクトリ)/jboss-eap-6.4.0.zip
$ cd ~/teiid/jboss-eap-6.4/
$ unzip -x (ファイルを置いているディレクトリ)/teiid-8.12.4-jboss-dist.zip
$ unzip -x (ファイルを置いているディレクトリ)/teiid-console-dist-2.5.1.Final-jboss-as7.zip

teiid-8.12.4-jboss-dist.zip と teiid-console-dist-2.5.1.Final-jboss-as7.zip を展開する時にファイルを上書きするか聞かれるが、全て Yes と答える。

3.2 アカウントの作成

Teiid を動作させるためには管理ユーザーとアプリケーションユーザーを一つづつ設ける必要がある。 管理ユーザーは Teiid Server の管理コンソールへのログインや、Teiid Designer から Teiid Server の動いている JBoss EAP へアクセスするために使用する。 デフォルトでは管理ユーザーはユーザー名 admin を要求する。 アプリケーションユーザーは Teiid Designer が Teiid Server へ VDB をデプロイする場合などに利用する。 デフォルトではアプリケーションユーザーはユーザー名が user でパスワードも user となる。

このインストールメモでは管理ユーザーとしてユーザー名 admin を作成する。 パスワードはアルファベット・数字・記号の混ざったものでないと受け付けないので、ここでは fSD+-GtdF9 とする。

~/teiid/jboss-eap-6.4/bin/ の下にある add-user.sh を実行し、ユーザータイプを「a) 管理ユーザー」としユーザー名とパスワードを入力する。 所属グループは空白でよい。

$ cd ~/teiid/jboss-eap-6.4/bin/
$ ./add-user.sh

どのようなユーザータイプを追加しますか?
 a) 管理ユーザー (mgmt-users.properties)
 b) アプリケーションユーザー (application-users.properties)
(a): a

追加する新規ユーザーの詳細を入力します。
レルム 'ManagementRealm' を既存のプロパティーファイルで見つかったとおりに使用しています。
ユーザ名 : admin
ユーザー名 'admin' は簡単に推測できます。
'admin' を本当に追加しますか?yes/no? yes
パスワード : fSD+-GtdF9
パスワードを再度入力してください。 : fSD+-GtdF9
このユーザーが所属するグループはどれですか? (カンマ区切りリストを入力してください。所属グループがない場合は空白のままにしてください。)[  ]:空白
レルム 'ManagementRealm' にユーザー 'admin' を追加します。
正しいですか yes/no? yes

このインストールメモではアプリケーションユーザーはユーザー名 user を作成する。 パスワードを user としたいが強度が不足すると弾かれるので、ここでは fSD+-GtdF9 とする。

~/teiid/jboss-eap-6.4/bin/ の下にある add-user.sh を実行し、ユーザータイプを「b) アプリケーションユーザー」としユーザー名とパスワードを入力する。 所属グループは空白でよい。

$ ./add-user.sh

どのようなユーザータイプを追加しますか?
 a) 管理ユーザー (mgmt-users.properties)
 b) アプリケーションユーザー (application-users.properties)
(a): b

追加する新規ユーザーの詳細を入力します。
レルム 'ApplicationRealm' を既存のプロパティーファイルで見つかったとおりに使用しています。
ユーザ名 : user
パスワード : fSD+-GtdF9
パスワードを再度入力してください。 : fSD+-GtdF9
このユーザーが所属するグループはどれですか? (カンマ区切りリストを入力してください。所属グループがない場合は空白のままにしてください。)[  ]:空白
レルム 'ApplicationRealm' にユーザー 'user' を追加します。
正しいですか yes/no? yes

Tips: パスワードの強度チェックを外す

~/teiid/jboss-eap-6.4/bin/ の下に add-user.properties というファイルがある。 このファイル内に password.restriction=REJECT という行があるが、これを password.restriction=RELAX に変更すると、パスワード時の強度チェックが行われなくなる。

3.3 standalone-teiid.xml の編集

~/teiid/jboss-eap-6.4/standalone/configuration/standalone-teiid.xml が Teiid Server を含めた JBoss EAP の起動設定ファイルになる。 この設定ファイルの中で 127.0.0.1 になっている箇所を、Teiid Server を動かすサーバーの外向きの IP アドレス(このインストールメモでは 10.20.230.16) へ変更する。

3.4 JavaVM オプションの指定

JBoss EAP は Java VM 上で動作するが、この Java VM のメモリ量の指定等は ~/teiid/jboss-eap-6.4/bin/ の下にある standalone.conf で行う。 Java VM のメモリ量を増やしたい場合には standalone.conf を編集する。

JAVA_OPTS="-Xms1303m -Xmx1303m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true"

3.5 Teiid Server の起動

以上で Teiid Server のインストールは終わり。 ~/teiid/jboss-eap-6.4/standalone/configuration/ をホームディレクトリにして、~/teiid/jboss-eap-6.4/bin/standalone.sh を起動する。

$ cd ~/teiid/jboss-eap-6.4/standalone/configuration/
$ ../../bin/standalone.sh -c standalone-teiid.xml

正常に起動すれば Teiid Web Console が使えるようになっている。 Teiid Server 動作しているサーバー(このインストールメモでは 10.20.230.16) のポート 9990 番にアクセスするとユーザー名とパスワードを要求されるが、3.2 節 で登録した管理ユーザーのアカウントを入力する。 ログインが成功すると http://10.20.230.16:9990/console/App.html へ転送され、同梱版の場合は WildFly + Teiid 8.11 と表示される。 Teiid が 8.11 とバージョンが古いのは気にする必要がない。

Teiid Web Console

4. Teiid Designer のインストール

Teiid Designer は Java が動作すれば Windows にでも Linux にでもインストールすることは可能である。 手順はほとんど変わらないので、適時読み替えて欲しい。

4.1 JBoss Developer Studio のインストール

Teiid Designer をインストールするサーバーで、JBoss Developer Studio(以下、jdevstudio) のインストーラーを実行し、適当なディレクトリにインストールする。

C:\Users\nminoru> "C:\Program Files\Java\jre1.8.0_60\bin\java.exec" -jar jboss-devstudio-9.0.0.GA-installer-standalone.jar

4.2 Teiid Designer プラグインのインストール

jdevstudio を起動し、Help の下にある Install New Software を選択。 Install ダイアログが表示されたら、Add ボタンから下の 2 つのソフトウェアサイトをリポジトリとして登録する。

ソフトウェアサイトに付ける Name は適当なものでよいが、Location は正確である必要がある。

NameLocation
JBoss Tool Luna compatible update sitehttps://devstudio.redhat.com/9.0/development/updates/integration-stack/earlyaccess
Teiid Designer 10.0http://download.jboss.org/jbosstools/updates/release/mars/integration-stack/teiiddesigner/10.0.0.Final/

(このイメージは旧バージョンのもの)

2 つのソフトウェアサイトの登録が終わった後に、Work with: を "Teiid Designer 10.0" を指定する。 "Data Virtualization" をチェックボックスをチェックし、配下に出てくるソフトウェアを全てインストールする。

インストールが完了すると、jdevstudio の再起動が促されるので再起動する。

4.3 ソフトウェア・アップデート

jdevstudio の再起動後は JBoss Central のパースペクティブの "Software/Update" のタグを押し、タブ内に "JBoss Data Virtualization Development" を探す。 バージョンによっては "JBoss Data Virtualization Development" が出現しないこともある。 "JBoss Data Virtualization Development" がある場合はチェックボックスをチェックし、その後に "Install/Update" のボタンを押してアップデートを行う。

アップデートが完了すると、jdevstudio はまた再起動が促されるので再起動する。

5. デフォルト・サーバーの登録・設定

Teiid を利用するためには Teiid Designer で作成した VDB を Teiid Server にデプロイ(deploy)するが、そのためには Teiid Designer に少なくとも一つの Teiid Server の登録する必要がある。 この Teiid Server を デフォルト・サーバー(Default Server) となる。

Teiid Designer から見てデフォルト・サーバーの運用方法は2つある。

  1. デフォルト・サーバーは普段は止めていて、Teiid Designer を立ち上げた後にユーザー操作で Teiid Server を立ち上げる方法である。 実際には Teiid Server を含んだ JBoss EAP を立ち上げることになる。 Teiid Designer が終了する時は、Teiid Server (JBoss EAP) も終了させる。 Teiid Designer と Teiid Server は同一サーバーで動いていれば、Teiid Designer は直接 JBoss EAP のシェルスクリプトを起動するが、異なるサーバーで動いている場合には SSH などでログインして操作する。
  2. デフォルト・サーバーは Teiid Designer とは関係なく起動しており、Teiid Designer が起動後に Teiid Server に接続に行く方法である。 こちらの方が運用のイメージに近い。

この 2 種類の設定は、後で出てくる "Server lifecycle is externally managed." をチェックするかしないかで決まる。

同一サーバー運用の場合は 1. を、別サーバー運用の場合は 2. を使う。 1. の場合は Teiid Server を止めた状態から開始すること。 2. の場合は Teiid Server を動かした状態から開始すること。

5.1 デフォルト・サーバーの登録

メニューバーの "Window" → "Perspective" をクリックし、"Teiid Designer" を選択すると Teiid Designer のパーセクティブが表示される。 この時、"Model Explorer" の下の方に "Default Server" が表示されているが、これが No default server defined になっているので、このリンクをクリックすると、デフォルト・サーバーの登録へ進む。

No default server defined

続くデフォルト・サーバーの設定は同一サーバー運用の場合は 5.1.1 を、別サーバー運用の場合は 5.1.2 を実行すること。

5.1.1 同一サーバー運用の場合

"New Server" というダイアログが登場し、JBoss のサーバータイプと "Server's host name" と "Server name" を求められる。 3章でインストールした Teiid Server は JBoss EAP 6.4 なので、一番近い "JBoss Enterprise Application Platform 6.1+" を選択する。 "Server's host name" は localhost を指定する。 "Server name" はデフォルト・サーバーの名前になる。 Teiid 内の識別子なので任意の名前を付けてよい。 名前を決めたら "Next" をクリックして次に進む。

Define a New Server

次に「新規JBossサーバーを作成します」と出る。 これに以下のように設定する。

"Next" をクリックして次に進む。

新規JBossサーバーを作成します

次に「JBoss Runtime」と出る。 これに以下のように設定する。

JBoss Runtime

最後に "Finish" を押す。 ここまでで "Default Server" の登録が完了する。

5.1.2 別サーバー運用の場合

"New Server" というダイアログが登場し、JBoss のサーバータイプと "Server's host name" と "Server name" を求められる。 3章でインストールした Teiid Server は JBoss EAP 6.4 なので、一番近い "JBoss Enterprise Application Platform 6.1+" を選択する。 "Server's host name" は Teiid Server の IP アドレス(このインストールメモでは 10.20.230.16) を指定する。 "Server name" はデフォルト・サーバーの名前になる。 Teiid 内の識別子なので任意の名前を付けてよい。 名前を決めたら "Next" をクリックして次に進む。

Define a New Server

次に「新規JBossサーバーを作成します」と出る。 これに以下のように設定する。

"Next" をクリックして次に進む。

新規JBossサーバーを作成します

次に "Remote System Integration" と出る。 最初は "Local" が選択されているが、"New Host..." をクリックする。

Remote System Integration

"New Connection" というダイアログが出現し、"Select Remote System Type" と聞かれる。 Teiid Server が動いているのは CentOS 6 マシンだが SSH でアクセスするので "SSH Only" を選択し、"Next" をクリックして次に進む。

Select Remote System Type

次に "Remote SSH Only System Connection" と出る。 ここで "Host name:" に Teiid Server を動かしているサーバーのホスト名か IP アドレスを入力する。 "Connection name:" は何を埋めていいのかよく分からないが、とりあえず "Host name:" を入れている。 "Parent profile:" に出ているホスト名は、Teiid Designer を動かしているマシン名が自動的に入るが特に意味はない。 この後、"Next" を押すと SSH に関する幾つかの詳細設定を指定可能だが、特殊な環境でなければ "Finish" を押して次に進む。

Remote SSH Only System Connection

"Remote System Integration" に戻ってくるが、"Host:" は今登録した SSH Only サーバーが登録されている。 次に Teiid Server 側のディレクトリ・設定ファイルを登録する。

Remote System Integration

ただし初めて "Browse..." を押すと、SSH のパスワードが要求される。 自動的にログインが可能なようにここで登録する。

Enter Password

最後に "Finish" を押す。 ここまでで "Default Server" の登録が完了する。

Tips

Teiid はいったん SSH のパスワードを登録すると、パスワードが間違っていてログインできない場合でも再入力を求めてこない。 この場合、記憶されたパスワードをいったん削除する必要がある。 メニューバーから "Window" → "Preferences" をクリックし、Generals → Security → Security Storage を選択する。 org.eclipse.rse.core.security の下にある org.eclipse.rse.systemtype.ssh の下にパスワードを登録したユーザー名が並んでいるのでこれを削除する。

またいったん登録したサーバーを削除する場合、jdevstudio の perspective の Remote System Explorer を操作することで可能になる。

5.2 デフォルト・サーバーの設定

デフォルト・サーバーを登録すると "Servers" のタブに centos6 [Stopped, Synchronized] と表示され、この行をクリックすると登録サーバーの画面が出現する。 これは "Overview"、"Deployment"、"Teiid Instance" と 3 つのタブを持っている。

Teiid Designer

"Overview" の中ではまず「ログイン証明書」にある「ユーザー名」と「パスワード」を 3.2 節 で登録した管理ユーザーのアカウントを入力する。 デフォルトでは admin、admin が入っている。

Overview

5.3 デフォルト・サーバーの開始あるいは接続

ここまで確認できたら "Servers" タブの中のデフォルト・サーバーの行にカーソルを合わせて右クリックし、メニューの中から "Start" を選択する。 ここで Teiid Designer は Teiid Server と接続を確立し、表示が [Started] になる。

Teiid Designer

Note

このサーバーの [Stopped][Started] というのは、Teiid Designerが Teiid Server を起動・終了させるパターンの表示で、"Server lifecycle is externally managed." を選択した場合は意味的には disconnect、connected である。

最後にデフォルトサーバーの "Teiid Instance" タブを選択する。

Teiid Instance

以上で Teiid のインストールが完了である。 "Servers" からデフォルト・サーバーを [Started] から [Stopped] へ変更し、Teiid Designer を終わってよい。 Teiid Designer の次回起動時にはで登録されたデフォルト・サーバーの設定が残っている。

別サーバー運用の場合、Teiid Designer 側が終了できれば Teiid Server もシャットダウンして OK である。

インストールが終わった後は、Teiid とデータソースへの接続へ進む。

コメント

コメントを書き込む

TOP    掲示板    戻る
Written by NAKAMURA Minoru, Email: nminoru atmark nminoru dot jp, Twitter:@nminoru_jp