Ropes of Apache NiFi: Tutorial 0 - ijokarumawak/hdf-tutorials-ja GitHub Wiki

チュートリアル 0: NiFi実行環境の設定

はじめに

このチュートリアルでは、Hortonworks SandboxもしくはローカルマシンへのNiFiインストール方法、そしてNiFi起動方法など、NiFi実行環境について学習します。

事前準備

  • Apache NiFiの慣例を学ぶを完了していること
  • Hortonworks Sandboxをダウンロードしインストール(Option 1のStep 2で必要)。
  • Windowsユーザは、チュートリアル中のLinuxターミナルコマンド実行用にGit Bashが必要。
  • MacまたはLinuxの場合、sandbox.hortonworks.com/private/etc/hostsファイルに追記する
  • Windows 7の場合、sandbox.hortonworks.com/c/Windows/System32/Drivers/etc/hostsファイルに追記する

チュートリアルの手順に出てくる以降のターミナルコマンドはVirtualBox SandboxとMacマシンで実行します。Windowsユーザの方は、以下のターミナルコマンドを実行するためにはGit Bashが必要です。

MacまたはLinuxで、sandbox.hortonworks.comをホストのリストに追加するには、ターミナルを開き、以下のコマンドを入力します、{Host-Name}は適切にsandboxのホストで置換してください:

echo '{Host-Name} sandbox.hortonworks.com' | sudo tee -a /private/etc/hosts

Windows 7でsandbox.hortonworks.comをホストリストに追加するには、git bashを開き、以下のコマンドを入力します、{Host-Name}は適切にsandboxのホストで置換してください:

echo '{Host-Name} sandbox.hortonworks.com' | tee -a /c/Windows/System32/Drivers/etc/hosts

概要

  • Step 1: NiFiのインストール前にNiFi実行環境を確認する
    • 1.1 Sandbox上にHDF 2.0のインストールを計画する
    • 1.2 ローカルマシン上にHDF 2.0のインストールを計画する
  • Step 2: NiFiをダウンロードし、Sandbox上にインストールする (Option 1)
  • Step 3: NiFiをダウンロードし、ローカルマシン上にインストールする (Option 2)
  • Step 4: Sandbox上でNiFiを起動する
    • 4.1 VirtualBox GUIからポートをフォワードする
    • 4.2 Azure GUIからポートをフォワードする
  • Step 5: ローカルマシン上でNiFiを起動する
  • まとめ

Step 1: NiFiのインストール前にNiFi実行環境を確認する

単一の仮想マシン、あるいはローカルコンピュータ上でNiFiを起動できます。本バージョンのチュートリアルはHortonworks DataFlow 2.0 GZippedの利用をベースとしています。 HDF 2.0をダウンロードしインストールする方法は2つあります: Option 1 - Hortonworks Sandbox 2.4 Virtual Image上にインストール、あるいは Option 2 - ローカルマシン上にインストール。 HDFはNiFiのみと、NiFi、Kafka、Storm、Zookeeperをセットにした2つのバージョンがあります。 本チュートリアルでは、NiFiのみのHDFをダウンロードしてください。 必要なコンポーネント:

  • HDF 2.0 (NiFi only)
  • Internet Access

1.1 Sandbox上にHDF 2.0のインストールを計画する

Hortonworks Sandbox上にHDFをインストールする場合、次の表を確認し、Step 2へと進みましょう。

**Table 1: Hortonworks Sandbox VM Information **

パラメータ 値(VirtualBox) 値(VMware) 値(MS Azure)
Host Name 127.0.0.1 172.16.110.129 23.99.9.233
Port 2222 2222 22
Terminal Username root root {username-of-azure}
Terminal Password hadoop hadoop {password-of-azure}

注: Host Nameの値はVMware、Azure Sandboxではユニークになります。VMwareとVirtualBoxの場合、Host NameはWelcome screenに表示されます。Azureでは、Host NameはSandbox DashboardのPublic IP Addressに表示されます。Azureユーザは、Azure上にSandboxをデプロイする際に、ターミナルusernamepasswordを作成しているはずです。VMwareとVirtualBoxユーザは、初回ログイン時にターミナルパスワードを変更します。

Sandbox VMを初めて利用する場合、デフォルトの'hadoop'パスワードの変更を求められるでしょう。以下のコマンドを実行し、より安全なパスワードを設定しましょう:

ssh -p 2222 root@localhost
root@localhost's password:
You are required to change your password immediately (root enforced)
Last login: Wed Jun 15 19:47:44 2016 from 10.0.2.2
Changing password for root.
(current) UNIX password:
New password:
Retype new password:
[root@sandbox ~]#

1.2 ローカルマシン上にHDF 2.0のインストールを計画する

ローカルマシン上にNiFiのインストールを行う場合、このセクションを参照してください。 マシンがシステム要件に適合していることを確認したら、Step 3に進みましょう。

お使いのシステムはHDFのインストール要件に適合していますか?

HDFのサポート対象のOS:

  • Linux Red Hat/Cent OS 6 or 7) 64-bit
  • Ubuntu 12.04 or 14.04 64-bit
  • Debian 6 or 7
  • SUSE Enterprise 11-SP3
  • MAC OS X
  • Windows OS

サポート対象のブラウザ:

  • Mozilla Firefox latest
  • Google Chrome latest
  • MS Edge
  • Safari 8

サポート対象のJDKS:

  • Open JDK7 or JDK8
  • Oracle JDK 7 or JDK 8

HDFと互換性のあるサポート対象のHDPバージョン:

HDP 2.3.x HDP 2.4.x HDP 2.5.x

HDFには2つのバージョンがあります。

バージョン1はNiFiのみ。

  • Hortonworks HDFダウンロードページで、バージョン1が利用可能です。

バージョン2はNiFi、Kafka、Storm、Zookeeperを含む。

  • このバージョンはHortonworks Documentationから利用可能です。

Step 2: NiFiをダウンロードし、Sandbox上にインストールする (Option 1)

このチュートリアルではHortonworks Sandbox 2.4を利用します。

SandobxにはHDFがプリインストールされていないので、HDFをHortonworks Sandbox VirtualBox image上にインストールします。

以下の手順でNiFiをインストールしましょう:

    1. ローカルマシンでターミナルウィンドウ(Mac、Linux)またはgit bash(Windows)を開きます。install-nifi.shをGithubリポジトリからダウンロードします。以下のコマンドをコピー&ペーストしましょう:
cd
curl -o install-nifi.sh https://raw.githubusercontent.com/hortonworks/tutorials/hdp/assets/realtime-event-processing/install-nifi.sh
chmod +x ./install-nifi.sh
    1. ブラウザを開きます。HDF Downloads PageからNiFiをダウンロードします。2つのパッケージが選択できます: ひとつはLinux向けのHDF TAR.GZファイルで、もうひとつはよりWindows向けのZIPファイルです。Macはどちらでも構いません。チュートリアルでは、最新のHDF TAR.GZをダウンロードします:

    1. install-nifi.shスクリプトを実行します。以下はinstall-nifi.shコマンドの実行方法です:

install-nifi.sh {location-of-HDF-download} {sandbox-host} {ssh-port} {hdf-version}

注: VMwareとAzureでは、sandbox-hostがSandbox起動後のWelcome screenで表示されます。Table 1に記載のssh-portを利用します。hdf-versionはダウンロードしたtar.gzファイル名内の数値です、例えば、太字で示される数値ですHDF-1.2.0.1-1.tar.gz。

HDF TAR.GZファイルのパス、Sandboxホスト名、sshポート番号、HDFバージョンを指定すると、コマンドは以下のようになります:

./install-nifi.sh ~/Downloads/HDF-1.2.0.1-1.tar.gz localhost 2222 1.2.0.1-1

このスクリプトは自動でNiFiを仮想マシンにインストールします。正常に完了すると、NiFiはHortonworks Sandboxに転送され、~フォルダに配置されます。

Step 3: NiFiをダウンロードし、ローカルマシン上にインストールする (Option 2)

    1. ブラウザを開きます。HDF Downloads PageからNiFiをダウンロードします。2つのパッケージが選択できます: ひとつはLinux向けのHDF TAR.GZファイルで、もうひとつはよりWindows向けのZIPファイルです。Macはどちらでも構いません。チュートリアルでは、Macにzipファイルをダウンロードします:

    1. ダウンロードしたNiFiは、圧縮形式です。NiFiをインストールするには、圧縮されたファイルから、アプリケーションを起動したい場所へと、ファイルを展開します。チュートリアルでは、解凍したHDFフォルダをApplicationsフォルダへ移動します。

以下の画像はダウンロードしたNiFiと、Applicationsフォルダへインストールしたものを示しています:

Step 4: Sandbox上でNiFiを起動する

Hortonworks SandboxにNiFiをダウンロードしてインストールした場合、次の手順でNiFiを起動します。ローカルマシン上でNiFiを起動する場合の手順はStep 5を参照してください。

このチュートリアルでは、NiFiをバックグラウンドで起動します。

    1. ターミナル(Mac, Linux)、またはgit bash(Windows)を開きます。Hortonworks SandboxへSSH接続します:
ssh [email protected] -p 2222
    1. binディレクトリに下記コマンドで移動します:
cd hdf/HDF-1.2.0.1-1/nifi/bin
    1. nifi.shスクリプトでNiFiを起動します:
./nifi.sh start

注: NiFiを停止するには./nifi.sh stopを実行します。

NiFiデータフローをhttp://sandbox.hortonworks.com:9090/nifi/で開き、NiFiの起動を確認します。NiFiのロード完了まで1分ほど待ちます。NiFiのHTMLインタフェースがロードされない場合、nifi.propertiesファイルの次の値を確認しましょう、nifi.web.http.port=9090

    1. confフォルダに移動し、nifi.propertiesをviエディタで開きます。
cd ../conf
vi nifi.properties
    1. /nifi.web.http.portと入力し、エンターを押します。nifi.web.http.portの値が下記のように、6434であることを確認しましょう、違う場合は値を変更します:

TODO: Documentation Error??

nifi.web.http.port=9090

viエディタを終了するには、escを押し、:wqと入力し、ファイルを保存します。 これで、nifi.properties設定ファイルが更新されました、VMはポート9090をリスンしていないので、NiFiをブラウザでロードできません。新しいNiFiポートをポートフォワードします。VirtualBox Sandboxを利用している方は、セクション 4.1を、Azure Sandboxを利用している方は、セクション4.2を参照してください。

4.1 VirtualBox GUIからポートをフォワードする

  1. VirtualBox Managerを開きます

  2. 起動中のHortonworks Sandboxを右クリックし、settingsを選択します

  3. Networkタブを表示します

Port Forwardingと記載のボタンをクリックします。NiFiのエントリを以下の値で上書きします:

Name Protocol Host IP Host Port Guest IP Guest Port
NiFi TCP 127.0.0.1 9090 9090

  1. NiFiをhttp://sandbox.hortonworks.com:9090/nifi/で開きます。1, 2分NiFiのロードを待ちます。

注: sandbox.hortonworks.comエイリアスを/etc/hostsに設定していない場合、http://localhost:9090/nifiのURLも試してください。

4.2 Azure GUIからポートをフォワードする

  1. Azure Sandboxを開きます

  2. シールドアイコンのSandboxをクリックします。

  1. Settingsにある、Generalセクションの、Inbound Security Rulesをクリックします。

  1. NiFiへスクロールし、行をクリックします。

  1. Destination Port Rangeが9090であることを確認します、違う場合は変更します。

  1. http://sandbox.hortonworks.com:9090/nifi/でNiFiを開きます。1、2分NiFiのロードを待ちます。

Step 5: ローカルマシン上でNiFiを起動する

ローカルマシン上にNiFiをダウンロード、インストールした場合、次の手順でNiFiを起動します。

NiFiの起動方法は3つあります: NiFiをフォアグラウンド、またはバックグラウンドで起動、あるいはサービスとして起動します。詳細はHDF Install and Setup Guideをご覧ください。

  1. バックグランドでNiFiを起動するには、ターミナルウィンドウかgit bashを開き、NiFiインストールディレクトリへ移動し、次のコマンドを実行します:
./HDF-1.2.0.1-1/nifi/bin/nifi.sh start
  1. NiFiをhttp://sandbox.hortonworks.com:8080/nifi/で開きます。NiFiのロード完了まで1、2分待ちます。

まとめ

おめでとうございます!NiFiがVM、またはお使いのコンピュータに直接インストールできるようになりました。 NiFiのダウンロード、インストール、起動方法も学びましたね。 NiFiが起動したので、データフロー作成の準備が整いました。

さらに理解を深めるために

NiFiの設定に関する詳細情報は、System Administrator's Guideをご参照ください。


前へ | 次へ