Обмен технологиями

Обработка и анализ данных обслуживания клиентов телекоммуникаций на базе платформы Hadoop ③ Разработка проекта: Создание среды разработки больших данных Flume --- Задача 14: Установка и развертывание Flume

2024-07-08

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

детали миссии

Содержание задачи — установка и настройка Flume, а также тестирование и сбор потоковых данных.

Руководство по задаче

Flume часто используется как инструмент для сбора данных в реальном времени. Собранные данные могут храниться в HDFS или в очереди сообщений, например Kafka.

Конкретные этапы установки следующие:

1. Разархивируйте сжатый пакет Flume.

2. Настройте переменные среды Flume.

3. Измените файл конфигурации Flume. Файл конфигурации Flume хранится в папке conf в каталоге установки Flume.

4. Получите данные, собранные Flume, посредством удаленного входа в систему.

5. Сохраните данные, собранные Flume, в HDFS.

Достижение миссии

1. Установите лоток

Вы можете найти установочный пакет в каталоге /opt/software/, разархивировать установочный пакет и скопировать установочный пакет в каталог /opt/app.

Выполнить на мастере1:

[root@master1 ~]# cd /opt/software/
[root@master1 software]# tar -xzf apache-flume-1.9.0-bin.tar.gz -C /opt/app/

2. Установите переменные среды Flume.

Отредактируйте файл /etc/profile, объявите домашний путь Flume и добавьте путь к bin к пути:

export FLUME_HOME=/opt/app/apache-flume-1.9.0-bin
export PATH=$PATH:$FLUME_HOME/bin

Загрузите файл конфигурации /etc/profile и подтвердите, что он вступил в силу.

[root@master1 ~]# source /etc/profile
[root@master1 ~]# echo $FLUME_HOME

3. Установите файл конфигурации flume-env.sh.

Скопируйте и переименуйте flume-env.sh.template в flume-env.sh в $FLUME_HOME/conf и измените файл конфигурации conf/flume-env.sh.

[root@master1 ~]# cd $FLUME_HOME/conf
[root@master1 conf]# cp flume-env.sh.template flume-env.sh
[root@master1 conf]# vi flume-env.sh

Добавьте следующее содержимое в конец файла конфигурации:

JAVA_HOME=/opt/app/jdk1.8.0_181
JAVA_OPTS="-Xms100m -Xmx200m -Dcom.sun.management.jmxremote"

4. Проверьте установку (telnet)

Измените файл конфигурации flume-conf.

Измените файл flume-conf.properties.template в каталоге $FLUME_HOME/conf, скопируйте и переименуйте его в flume-conf.properties.

[root@master1 ~]# cd $FLUME_HOME/conf
[root@master1 conf]# cp flume-conf.properties.template flume-conf.properties
[root@master1 conf]# vi flume-conf.properties

Измените содержимое файла конфигурации flume-conf следующим образом:

# The configuration file needs to define the sources, the channels and the sinks.
# Sources, channels and sinks are defined per agent, in this case called 'a1'
a1.sources = r1
a1.sinks = k1
a1.channels = c1
# For each one of the sources, the type is defined
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 44444
#The channel can be defined as follows.
a1.sources.r1.channels = c1
# Each sink's type must be defined
a1.sinks.k1.type = logger
#Specify the channel the sink should use
a1.sinks.k1.channel = c1
# Each channel's type is defined.
a1.channels.c1.type = memory
# Other config values specific to each type of channel(sink or source)
# can be defined as well
# In this case, it specifies the capacity of the memory channel
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100

Запустите в каталоге установки Flume.

[root@master1 conf]# cd $FLUME_HOME
[root@master1 apache-flume-1.9.0-bin]# flume-ng agent -c ./conf/ -f ./conf/flume-conf.properties -n a1 -Dflume.root.logger=INFO,console

Откройте другой терминал и введите следующую команду:

[root@master1 ~]# telnet localhost 44444
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

Введите в терминал следующее:

Hello