一つのAmbariでHDP3.1とHDF3.3(NiFiだけを使っている)のクラスタを管理しています。NiFi1.8のPutHive3Streaming関連のメモリリークのバグがあるらしく、一定時間経つとをJVM OOMエラーを起こしてしまいます。
There are unfortunately 2 memory leaks around this processor:
one in the NiFi processor that was fixed in 1.9.0:
https://issues.apache.org/jira/browse/NIFI-5841
and one in the Hive client library,
https://issues.apache.org/jira/browse/HIVE-20979
そこでAmbariとHDP3.1のコンポーネントのバージョンはそのまま、HDF3.3.0(NiFi1.8)からHDF3.4.1.1(NiFi1.9)へのアップグレードを試してみました。
手順は概ねこちらになります
NiFiなど関連コンポーネント停止
https://docs.hortonworks.com/HDPDocuments/HDF3/HDF-3.4.1.1/ambari-managed-hdf-upgrade/content/hdf-stop-hdf-services.html
HDFのManagement Packをアップグレード
https://docs.hortonworks.com/HDPDocuments/HDF3/HDF-3.4.1.1/ambari-managed-hdf-upgrade/content/upgrade-mpack-hdf-on-hdp.html
手順7の中のHDF-3.4が書いてありますが、実際のところはHDF-3.4が存在していない、設定できないことになっています。
新しいバージョンを作る事も考えたのですが、バージョンの名前が共存できないため、新しい作ると、HDPのバージョンも合わせて変わってくるため、ちょっと危険の匂いがするので、やめておきました。
そこで新しいバージョンのNiFiを手動で各サーバーでインストールしました。
上の手順8のところ、各ノードに以下を追加
path=/
enabled=1
gpgcheck=0
[HDF-3.4-repo-1]
name=HDF-3.4-repo-1
baseurl=http://public-repo-1.hortonworks.com/HDF/centos7/3.x/updates/3.4.1.1
次に、インストール。今回はNiFiとNiFI-toolkitだけ
yum install -y nifi_3_4_1_1_4
yum install -y nifi_3_4_1_1_4-toolkit
インストールされていることを確認
/usr/hdf/の下に2つバージョンのHDFが存在しています
シンボリックリンクは古いバージョンのままになっています。
以下を実行して、シンボリックリンクを変更します(直接変更してもいいですが。。)
hdf-select set nifi 3.4.1.1-4
hdf-select set nifi-toolkit 3.4.1.1-4
最後にAmbariからnifi.propertiesに以下のプロパティを追加する
nifi.nar.library.autoload.directory = {{nifi_internal_dir}}/work/extensions
この状態でAmbariからNiFiを起動する
成功した!!
この記事がお役にたちましたらシェアをお願いします:)
0 件のコメント:
コメントを投稿