Nginx = > Flume = > Kafka 프로 세 스 요약

nginx=>flume=>kafka
  • flume 로그 수집 파일 작성
  • nginx 로그 access. log = = > flume
    a1.sources = r1
    a1.sinks = k1
    a1.channels = c1
    
    a1.sources.r1.type = exec
    a1.sources.r1.command = tail -F /root/logs/access.log
    a1.sources.r1.shell = /bin/sh -c
    
    a1.channels.c1.type = memory
    
    a1.sinks.k1.type = org.apache.flume.sink.kafka.KafkaSink
    #      kafka     
    a1.sinks.k1.brokerList = spark001:9092
    #      topic zk topic
    a1.sinks.k1.topic = test
    a1.sinks.k1.batchSize = 5
    a1.sinks.k1.requiredAcks =1
    
    #a1.sinks.k1.type = logger
    
    a1.sources.r1.channels = c1
    a1.sinks.k1.channel = c1
    
  • Kafka 배치
  • Step 1: zookeeper \ # QuorumPeerMain 프로 세 스 를 시작 합 니 다.
    zkServer.sh start
    [hadoop@hadoop000conf] $vim zoo. cfg \ # 데 이 터 를 수정 하 는 임시 저장 디 렉 터 리 입 니 다. 기본 값 은 tmp 디 렉 터 리 에 있 는 dataDir = / home / hadop / app / tmp / zk \ #: wq 저장 종료
    Step 2: start the server get = = kafka 프로 세 스
    kafka-server-start.sh -deamon $KAFKA_HOME/config/server.properties
    설정, 압축 해제 디 렉 터 리 아래 config 프로필 수정
    server. properties [주의해 야 할 부분] broker. id = 0 설명: kafka 입 니 다. broker listeners 설명: 감청 포트 host. name 설명: 현재 기계 log. dirs 설명: kafka 로그 저장 디 렉 터 리 zookeeper. connect zk 주소
    수정 후 저장 종료
    Step 3: Create a topic \ # 이전 flume topic 과 대응 하도록 주의 하 세 요.
    kafka-topics.sh -create -zookeeper spark001:2181 -replication-factor 1 -partitions 1 -topic test
    ps:kafka-topics.sh -list -zookeeper spark001:2181
    Step 4: 이전 에이전트 오픈 (생산자 로 서)
    flume-ng agent --name a1 --conf . --conf-file ./lamda_imooc.conf -Dflume.root.logger=INFO,console
    단계 4: 확장: 콘 솔 생산자 로 서
    kafka-console-producer.sh --broker-list spark001:9092 --topic test
    5 단계: 소비자 (소비자) 시작
    kafka-console-consumer.sh --zookeeper spark001:2181 --topic test
    마지막 으로 flume 감청 파일 이 새로운 로그 파일 위치 / root / logs / access. log 를 계속 만 들 고 있 는 지 확인 합 니 다.
    #!/bin/bash
       i=1;
       j=0;
       while (test $i -le 6170967 )
         do
           j=`expr $i + 9`	
           sed -n $i,$j'p' /root/logs/all.log >> /root/logs/access.log
           i=`expr $i + 10`
           sleep 5
          # echo $i
         done
      #    shell  ,   shell      
    

    위의 조작 을 실행 하면 도 배 결과 가 나 옵 니 다. 하하 하!!nginx = > flume = > kafka 보충: head - n 100 대 로그 파일. log 100access.log wc -l 100_access.log
    spark-submit --master local[5] \
    --jars $(echo /root/apps/hbase-1.2.0-cdh5.7.0/lib/*.jar | tr ' ' ',') \
    --class com.csylh.spark.project.spark.ImoocStatStreamingApp \
    --packages org.apache.spark:spark-streaming-kafka-0-8_2.11:2.2.0 \
    /root/jars/streaming-1.0-SNAPSHOT.jar \
    spark001:2181 test test 1
    
    

    좋은 웹페이지 즐겨찾기