2024-07-08
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
O conteúdo da tarefa é instalar e configurar o Flume e testar e coletar dados de streaming.
O Flume é frequentemente usado como uma ferramenta para coleta de dados em tempo real. Os dados coletados podem ser armazenados no HDFS ou em uma fila de mensagens como o Kafka.
As etapas específicas de instalação são as seguintes:
1. Descompacte o pacote compactado do Flume
2. Configure as variáveis de ambiente do Flume
3. Modifique o arquivo de configuração do Flume O arquivo de configuração do Flume está armazenado em conf no diretório de instalação do Flume.
4. Obtenha os dados coletados pelo Flume através de login remoto
5. Armazene os dados coletados pelo Flume no HDFS
Você pode encontrar o pacote de instalação no diretório /opt/software/, descompactar o pacote de instalação e copiar o pacote de instalação para o diretório /opt/app
Execute no master1:
[root@master1 ~]# cd /opt/software/
[root@master1 software]# tar -xzf apache-flume-1.9.0-bin.tar.gz -C /opt/app/
Edite o arquivo /etc/profile e declare o caminho inicial do Flume e adicione o caminho bin ao caminho:
export FLUME_HOME=/opt/app/apache-flume-1.9.0-bin
export PATH=$PATH:$FLUME_HOME/bin
Carregue o arquivo de configuração /etc/profile e confirme se ele entra em vigor
[root@master1 ~]# source /etc/profile
[root@master1 ~]# echo $FLUME_HOME
Copie e renomeie flume-env.sh.template para flume-env.sh em $FLUME_HOME/conf e modifique o arquivo de configuração 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
Anexe o seguinte conteúdo no final do arquivo de configuração:
JAVA_HOME=/opt/app/jdk1.8.0_181
JAVA_OPTS="-Xms100m -Xmx200m -Dcom.sun.management.jmxremote"
Modifique o arquivo de configuração flume-conf
Modifique o arquivo flume-conf.properties.template no diretório $FLUME_HOME/conf, copie e renomeie-o para 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
Modifique o conteúdo do arquivo de configuração flume-conf da seguinte forma:
# 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
Execute no diretório de instalação do 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
Abra outro terminal e digite o seguinte comando:
[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 '^]'.
Digite o seguinte no terminal:
Hello