※前回記事(1)はこちら。
第2回目となる本記事では,Apache Atlasのビルドとインストールの手順,そしてApache Atlasのこれからについてご説明します。
1. Atlasのビルドとインストール
※以降,Apache AtlasのことをAtlasと略記することがあります。
1.1 前提環境
ここでは,ビルド・インストールともにLinuxなどUNIXライクなシステム上で行なうことを前提とします。また,ビルド中にライブラリやツールをダウンロードするためにインターネット接続が必要となります。
1.2 用意するもの
Apache AtlasのビルドにはJava Development Kit (JDK)とApache Mavenが必要です。Atlasバージョン2.1.0の時点では,JDKはバージョン1.8.0-151以上(ただしJDK 9は未テスト),Apache Mavenはバージョン3.5.0以上が指定されています。
それ以外に必要なライブラリやツールは,Apache Maven経由でビルド中に自動でダウンロードされます。
2. Atlasのビルド
2.1 ソースコードの取得
Apache Atlasのソースコードを取得します。方法は大きく二つあります。
2.1.1 Gitで取得する
AtlasのソースコードはGitで管理されています。下記URLのいずれかより git clone
でリポジトリを取得し,任意のコミットIDまたはタグをチェックアウトします。
https://git.apache.org/repos/asf/atlas.git
https://github.com/apache/atlas.git
なおAtlasのGitの運用として,Release Candidate (RC)版が正式リリースと認可された後で改めてリリースポイントのタグを作成することはないので,リリース版が必要なときはrelease-X.Y.Z-rc#
という名前のタグのうち末尾の数が最も大きいものをチェックアウトしましょう。バージョン2.1.0であれば,release-2.1.0-rc3
です。
2.1.2 ソースアーカイブファイルを取得する
公式サイトのダウンロードページから,ソースアーカイブファイルのtarballを取得し展開します。
$ tar -xf apache-atlas-X.Y.Z-sources.tar.gz
$ cd apache-atlas-sources-X.Y.Z/
2.2 プロファイルの選択
Atlasはメタデータを格納するバックエンドデータベースとしてApache HBase,Apache CassandraとOracle Berkeley DBをサポートしています。また,全文検索エンジンとしてApache SolrとElasticsearchをサポートしています。これらのバックエンドデータベースと全文検索エンジンの組み合わせは,下表に示すプロファイルをビルド時に指定することで選択します。
プロファイル | 構成 | 備考 |
---|---|---|
external-hbase-solr (デフォルト) |
HBase+Solr | 別途HBaseとSolrのセットアップが必要 |
embedded-hbase-solr |
HBase+Solr | |
embedded-cassandra-solr |
Cassandra+Solr | |
berkeley-elasticsearch |
Berkeley DB+Elasticsearch | 別途Berkeley DBのjarファイルの手動ダウンロードが必要 |
プロファイルexternal-hbase-solr
でビルドしたAtlasを動作させる場合は,Atlasとは別にHBaseとSolrをセットアップし起動しておく必要があります。それ以外のプロファイルでは,バックエンドデータベースと全文検索エンジンを含んだ形でビルドされ,Atlasと共に起動するように設定ファイルが構成されます。
2.3 ビルド
ここではプロファイルとしてembedded-hbase-solr
とdist
を指定してビルドします。プロファイルdist
は,バイナリとソースのアーカイブファイルを生成する指示です。
$ mvn clean -DskipTests package -Pdist,embedded-hbase-solr
3. Atlasのインストール
ビルドが成功すると,distro/target
ディレクトリの配下にバイナリアーカイブファイルのtarballが生成されるので,これをインストール先となる任意のディレクトリに展開します。ここではバージョン2.1.0を/opt/apache-atlas
にインストールします。
$ sudo mkdir /opt/apache-atlas
$ sudo chown $(id -u):$(id -g) /opt/apache-atlas
$ tar -xf distro/target/apache-atlas-2.1.0-bin.tar.gz -C /opt/apache-atlas
設定ファイルconf/atlas-env.sh
を編集し,環境変数JAVA_HOME
にJDK1のパスを設定します。
$ cd /opt/apache-atlas/apache-atlas-2.1.0
$ vi conf/atlas-env.sh
JDKのパスはシステムによって異なります。下記はUbuntuでの設定例です。
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
4. Atlasの起動
Atlasはatlas_start.py
コマンドで起動します2。Atlas本体に加えて,バックエンドのHBaseとSolrも併せて起動されます。
$ cd /opt/apache-atlas/apache-atlas-2.1.0
$ bin/atlas_start.py
Web UIにはhttp://<ホスト名>:21000/
でアクセスできます。初期登録されているユーザ名とパスワードはadmin/adminです3。インストール後初回の起動ではモデルの登録など初期設定が行なわれるため,Web UIにアクセス可能になるまで若干時間がかかることがあります。
デフォルトの設定ではWeb UI兼RESTful API用としてポート21000/tcpを使用しますが,このポートを変更する場合は-port
オプションを指定して起動します。
$ bin/atlas_start.py -port 8080
5. サンプルエンティティの登録
Atlasをインストールした直後の状態では,エンティティは何も登録されていません。ここではquick_start.py
コマンドを用いてサンプルのエンティティを登録してみます。
$ bin/quick_start.py
Web UIにアクセスし,左ペインの"SEARCH"→"Search By Type"の入力欄で"_ALL_ENTITY_TYPES"または"Asset"型を選択,"Search"ボタンを押下すると,右ペインにサンプルのエンティティがリストされます。
6. Atlasの終了
Atlasはatlas_stop.py
コマンドで終了します。
$ bin/atlas_stop.py
7. Atlasのこれから
データカタログという分野は,国内のベンダからも製品がリリースされるなど,その重要性について認識が広まりつつあります。その中にあって,Apache Atlasは既にHadoopエコシステムを支えるデータカタログとして一定の地位を築いています。近年はパブリッククラウドのストレージサービスやデータベースサービスが普及し,データプラットフォームの姿も多様性を増してきていますが,AtlasはHadoopエコシステムに限定されず,多様なデータ資源をサポートするデータカタログとなるポテンシャルを持っています。
Atlasは誰でも自由に活用できるオープンソースのデータカタログとして,これからも注目すべき存在と言えるでしょう。
他社商品名称について
- Linuxは,Linus Torvalds氏の米国およびその他の国における登録商標もしくは商標です。
- UNIXは,The Open Groupの米国およびその他の国における登録商標です。
- Oracle,JavaおよびすべてのJava関連の商標およびロゴは,Oracle Corporationおよびその子会社,関連会社の米国およびその他の国における登録商標もしくは商標です。
- Gitは,Software Freedom Conservancy, Inc. の米国およびその他の国における登録商標もしくは商標です。
- Apache,Apache Cassandra,Apache HBase,Apache Maven,Apache Solr,Cassandra,HBaseは,Apache Software Foundationの米国およびその他の国における登録商標もしくは商標です。
- Elasticsearchは,Elasticsearch B.V.の米国およびその他の国における登録商標もしくは商標です。
- Ubuntuは,Canonical Ltd.の米国およびその他の国における登録商標もしくは商標です。
- Active Directoryは,米国Microsoft Corporationの米国およびその他の国における登録商標もしくは商標です。
- その他記載の会社名,製品名,サービス名,その他固有名詞は,それぞれの会社の登録商標もしくは商標です。
- 本文中では™,®マークは表記しておりません。