canal de filtro

1, escenarios de casos

A, B dos máquinas de servicio de registro de registro de producción en tiempo real principales tipos access.log, nginx.log, web.log

Ahora Requisitos: 

Los A, B máquinas access.log, nginx.log, web.log máquina colectora de C se agrega entonces en el Unified recogió en hdfs.

Pero en hdfs el directorio deseado:

/ Fuente / logs / acceso / 20180101 / **

/ Fuente / logs / nginx / 20180101 / **

/ Fuente / logs / web / 20180101 / **

2, análisis de la escena

 

3, los datos de flujo de procesamiento y análisis

 

4 , para lograr

Un servidor correspondiente es 192.168.52.100 IP

el servidor B IP correspondiente a 192.168.52.110

Correspondiente al servidor IP 192.168.52.120 C

Adquisición de desarrollo fichero de configuración -side

node01 y perfiles node02 aforador de desarrollo del servidor

cd /export/servers/apache-flume-1.6.0-cdh5.14.0-bin/conf

vim exec_source_avro_sink.conf

# Name the components on this agent
a1.sources = r1 r2 r3
a1.sinks = k1
a1.channels = c1

# Describe/configure the source
a1.sources.r1.type = exec
a1.sources.r1.command = tail -F /export/taillogs/access.log
a1.sources.r1.interceptors = i1
a1.sources.r1.interceptors.i1.type = static
##  static拦截器的功能就是往采集到的数据的header中插入自己定## 义的key-value对
a1.sources.r1.interceptors.i1.key = type
a1.sources.r1.interceptors.i1.value = access

a1.sources.r2.type = exec
a1.sources.r2.command = tail -F /export/taillogs/nginx.log
a1.sources.r2.interceptors = i2
a1.sources.r2.interceptors.i2.type = static
a1.sources.r2.interceptors.i2.key = type
a1.sources.r2.interceptors.i2.value = nginx

a1.sources.r3.type = exec
a1.sources.r3.command = tail -F /export/taillogs/web.log
a1.sources.r3.interceptors = i3
a1.sources.r3.interceptors.i3.type = static
a1.sources.r3.interceptors.i3.key = type
a1.sources.r3.interceptors.i3.value = web

# Use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 20000
a1.channels.c1.transactionCapacity = 10000

# Describe the sink
a1.sinks.k1.type = avro
a1.sinks.k1.hostname = node03
a1.sinks.k1.port = 41414

# Bind the source and sink to the channel
a1.sources.r1.channels = c1
a1.sources.r2.channels = c1
a1.sources.r3.channels = c1
a1.sinks.k1.channel = c1

Servidor de desarrollo fichero de configuración

En los perfiles de desarrollo aforador anterior node03

cd /export/servers/apache-flume-1.6.0-cdh5.14.0-bin/conf

Vine avro_source_hdfs_sink.conf

a1.sources = r1
a1.sinks = k1
a1.channels = c1
#定义source
a1.sources.r1.type = avro
a1.sources.r1.bind = 192.168.52.120
a1.sources.r1.port =41414

#添加时间拦截器
a1.sources.r1.interceptors = i1
a1.sources.r1.interceptors.i1.type = org.apache.flume.interceptor.TimestampInterceptor$Builder


#定义channels
a1.channels.c1.type = memory
a1.channels.c1.capacity = 20000
a1.channels.c1.transactionCapacity = 10000

#定义sink
a1.sinks.k1.type = hdfs
a1.sinks.k1.hdfs.path=hdfs://192.168.52.100:8020/source/logs/%{type}/%Y%m%d
 
#组装source、channel、sink
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

Del lado de adquisición archivo de script de generación

el desarrollo del guión Shell y node02 node01 anteriormente, los datos analógicos generados

cd / export / servidores / conchas

server.sh vim

#!/bin/bash
while true
do  
 date >> /export/servers/taillogs/access.log; 
 date >> /export/servers/taillogs/web.log;
 date >> /export/servers/taillogs/nginx.log;
  sleep 0.5;
done

Orden para iniciar el servicio

node03 comenzar canal de recogida de datos

cd /export/servers/apache-flume-1.6.0-cdh5.14.0-bin

bin / agente-ng canal -c conf -f conf / avro_source_hdfs_sink.conf -name a1 -Dflume.root.logger = DEBUG, consola

node01 node02 para el seguimiento y empezar canal de datos

cd /export/servers/apache-flume-1.6.0-cdh5.14.0-bin

bin / agente-ng canal -c conf -f conf / exec_source_avro_sink.conf -name a1 -Dflume.root.logger = DEBUG, consola

se genera archivo de script node01 y node02 inicio

cd / export / conchas

server.sh sh

5, capturas de pantalla de realización del proyecto

Publicado 81 artículos originales · ganado elogios 21 · vistas 2209

Supongo que te gusta

Origin blog.csdn.net/qq_44065303/article/details/103824721
Recomendado
Clasificación