2017-02-01 13 views
-1

Я пытаюсь настроить лоток и следую this link. Следующая команда работает для меня:FLUME EXCEPTION

flume-ng agent -n TwitterAgent -c conf -f /usr/lib/apache-flume-1.7.0-bin/conf/flume.conf 

В результате я получил с ошибкой,

17/01/31 12:04:08 INFO source.DefaultSourceFactory: Creating instance of source Twitter, type com.cloudera.flume.source.TwitterSource 
17/01/31 12:04:08 ERROR node.PollingPropertiesFileConfigurationProvider: Failed to load configuration data. 
Exception follows. org.apache.flume.FlumeException: 
Unable to load source type: 
com.cloudera.flume.source.TwitterSource, class: 
com.cloudera.flume.source.TwitterSource. 

(Это часть результата, я просто скопировал часть ошибки его)

Может ли кто-нибудь помочь решить эту ошибку, пожалуйста? Мне нужно исправить это, чтобы перейти к шагу 24, который является последним шагом.

+0

Если вы все еще работаете с проектом, можете ли вы добавить всю ошибку? И это будет интересно, а также содержимое flume.conf –

+0

Спасибо Ignacio, я решил проблему. –

ответ

0

Пожалуйста, найдите настройки CDH 5,12 Flume Twitter:

1. Вот файл /usr/lib/flume-ng/conf/flume.conf:

TwitterAgent.sources = Twitter 
TwitterAgent.channels = MemChannel 
TwitterAgent.sinks = HDFS 
TwitterAgent.sources.Twitter.type= com.cloudera.flume.source.TwitterSource 
TwitterAgent.sources.Twitter.channels = MemChannel 

TwitterAgent.sources.Twitter.consumerKey = xxxxxxxxxxxxxxxxxxxxx 
TwitterAgent.sources.Twitter.consumerSecret = xxxxxxxxxxxxxxxxxxxxxx 
TwitterAgent.sources.Twitter.accessToken = xxxxxxxxxxxxxxx 
TwitterAgent.sources.Twitter.accessTokenSecret = xxxxxxxxxxxxxxxxxx 

TwitterAgent.sources.Twitter.keywords = Hadoop,BigData 
TwitterAgent.sinks.HDFS.channel = MemChannel 
TwitterAgent.sinks.HDFS.type = hdfs 
TwitterAgent.sinks.HDFS.hdfs.path = hdfs://quickstart.cloudera:8020/user/cloudera/flume/tweets/ 
TwitterAgent.sinks.HDFS.hdfs.fileType = DataStream 
TwitterAgent.sinks.HDFS.hdfs.writeFormat = Text 
TwitterAgent.sinks.HDFS.hdfs.batchSize = 1000 
TwitterAgent.sinks.HDFS.hdfs.rollSize = 0 
TwitterAgent.sinks.HDFS.hdfs.rollCount = 10000 
TwitterAgent.channels.MemChannel.type = memory 
TwitterAgent.channels.MemChannel.capacity = 10000 
TwitterAgent.channels.MemChannel.transactionCapacity = 100 

2. Переименуйте ниже водопропускной-env.sh.template файл как flume-env.sh

~] $ Суда ф /usr/lib/flume-ng/conf/flume-env.sh.template /usr/lib/flume-ng/conf/flume-env.sh

3. Set JAVA_HOME и FLUME_CLASSPATH в flume-env.sh файл как:

экспорт JAVA_HOME =/USR/Java/jdk1.7.0_67-Cloudera

FLUME_CLASSPATH = "/ USR/Lib/flume- ng/lib/flume-sources-1.0-SNAPSHOT.jar "

4. Если вы не можете найти «/usr/lib/flume-ng/lib/flume-sources-1.0-SNAPSHOT.jar» в системе, то скачать апачский-водовода-1.6.0 -bin от google и копия lib папка этого текущего lib папка.

Ссылка:https://www.apache.org/dist/flume/1.6.0/apache-flume-1.6.0-bin.tar.gz

4,1. Переименовать папку старого каталога

4.2. Скачать выше ссылку на ваш Cloudera рабочий стол и сделайте следующее:

~] $ Sudo мкВ/USR/Lib/желобе-нг/Lib/USR/Lib/желобе-нг/lib_cloudera

~] $ Суды мв /home/cloudera/Desktop/apache-flume-1.6.0-bin/lib/USR/Lib/желоб-нг/Библиотека

5. Теперь запустите Flume Агент Команда:

~] $ flume-ng agent --conf-file /usr/lib/flume-ng/conf/flume.conf --name TwitterAgent -Dflume.root.logger = INFO, console -n TwitterAgent

Это должно успешно работать. Все лучшее.