概要
安装nifi在cdp上。然后发现nifi或者说cfm,cdp并不直接带。
前期准备
想要完成安装,需要完成两件事:
- 在add service里面添加nifi
- 在parcels里面添加cfm(nifi和nifiregister)
在add service里面添加nifi
cd ~
mkdir tools
cd ~/tools
wget https://username:password@archive.cloudera.com/p/cfm2/2.1.2.0/redhat7/yum/tars/parcel/NIFI-1.13.2.2.1.2.0-283.jar
sudo mv NIFI-*.jar /opt/cloudera/csd
cd /opt/cloudera/csd
sudo chown cloudera-scm:cloudera-scm ./*
sudo chmod 644 ./*
sudo service cloudera-scm-server restart
username:password 需要license。所以,试用版是不能装nifi的
在parcels里面添加cfm
照着下面的链接做,另外别忘在Parcel Repository & Network Settings 里面设置
- HTTP authentication username override for Cloudera Repositories
- HTTP authentication password override for Cloudera Repositories
安装nifi
照着下面的链接做
Troubleshooting
现象
Exception: Failed to create ranger repository 'Cluster1_nifi', response code is '401', output is '{"statusCode":401,"msgDesc":"Authentication Failed"}'.
+ exec /var/run/cloudera-scm-agent/process/1546336147-nifi-NIFI_NODE/scripts/control.sh
Traceback (most recent call last):
File "/var/run/cloudera-scm-agent/process/1546336147-nifi-NIFI_NODE/scripts/common-scripts/ranger.py", line 725, in <module>
main()
File "/var/run/cloudera-scm-agent/process/1546336147-nifi-NIFI_NODE/scripts/common-scripts/ranger.py", line 661, in main
keytab=args.keytab, principal=args.principal)
File "/var/run/cloudera-scm-agent/process/1546336147-nifi-NIFI_NODE/scripts/common-scripts/ranger.py", line 330, in create_ranger_repository
_create()
File "/var/run/cloudera-scm-agent/process/1546336147-nifi-NIFI_NODE/scripts/common-scripts/ranger.py", line 319, in _create
ranger_service_name, code, out))
Exception: Failed to create ranger repository 'Cluster1_nifi', response code is '401', output is '{"statusCode":401,"msgDesc":"Authentication Failed"}'.
调查
sudo tail /var/log/cloudera-scm-server/cloudera-scm-server.log -f
原因
原因是nifi和ranger通信的时候出现了401.
所以不用ranger的话直接关掉就可以通过,然后如果需要ranger的话,需要设置kerberos