(1)Storm實時日誌分析實戰--專案準備
流程圖
Flume收集Nginx的日誌,然後存在Kafka佇列中,由storm讀取Kafka中的日誌資訊,經過相關處理後,儲存到HBase和MySQL中
安裝步驟Kafka
從官網下載安裝包, 解壓到安裝目錄
$ tar -zxvf kafka_2.10-0.8.1.1.tgz -C /work/opt/modules/
修改配置檔案
/opt/modules/kafka_2.10-0.8.2.1/config/server.propertiesbroker.id=0 port=9092 host.name=bigdata01.com num.network.threads=3 num.io.threads=8 socket.send.buffer.bytes=102400 socket.receive.buffer.bytes=102400 socket.request.max.bytes=104857600 log.dirs=/work/opt/modules/kafka_2.10-0.8.2.1/log-data num.partitions=1 num.recovery.threads.per.data.dir=1 log.retention.hours=168 log.segment.bytes=1073741824 log.retention.check.interval.ms=300000 log.cleaner.enable=false zookeeper.connect=bigdata01.com:2181 zookeeper.connection.timeout.ms=6000
啟動broker
啟動之前,要先確保Zookeeper正常執行。broker啟動命令如下:
$ nohup bin/kafka-server-start.sh config/server.properties > logs/server-start.log 2>&1 &
檢視程序是否正常:
$ ps -ef | grep kafka
檢查埠9092是否開放:
$ netstat -tlnup | grep 9092
建立topic
kafka正常啟動執行後,在kafka解壓路徑下,執行命令:
$ bin/kafka-topics.sh --create --topic
檢視topic詳情:
$ bin/kafka-topics.sh --describe --topic nginxlog --zookeeper bigdata01.com:2181
啟動console訊息生產者,傳送訊息到kafka的topic上
$ bin/kafka-console-producer.sh --broker-list bigdata01.com:9092 --topic nginxlog
啟動console訊息消費者,讀取kafka上topic的訊息
$ bin/kafka-console-consumer.sh --zookeeper bigdata01.com: 2181 --topic nginxlog --from-beginning
模擬產生Nginx日誌檔案
在伺服器上建立一個工作目錄
mkdir -p /home/beifeng/project_workspace
將data-generate-1.0-SNAPSHOT-jar-with-dependencies.jar檔案上傳到剛才建立好的工作目錄
下載地址執行命令
java -jar data-generate-1.0-SNAPSHOT-jar-with-dependencies.jar 100 >> nginx.log
通過tail -f nginx.log 檢視日誌生成情況
停止產生日誌,先使用jps檢視程序pid,然後kill掉
配置Flume
編寫flume agent配置檔案flume-kafka-storm.properties
內容如下:# 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 'agent' a1.sources =s1 a1.channels =c1 a1.sinks = kafka_sink # define sources a1.sources.s1.type = exec a1.sources.s1.command =tail -F /home/beifeng/project_workplace/nginx.log #define channels a1.channels.c1.type = memory a1.channels.c1.capacity = 100 a1.channels.c1.transactionCapacity = 100 #define kafka sinks a1.sinks.kafka_sink.type =org.apache.flume.sink.kafka.KafkaSink a1.sinks.kafka_sink.topic=nginxlog a1.sinks.kafka_sink.brokerList=bigdata01.com:9092 a1.sinks.kafka_sink.requireAcks=1 a1.sinks.kafka_sink.batch=20 # Bind the source and sink to the channel a1.sources.s1.channels = c1 a1.sinks.kafka_sink.channel = c1
啟動flume agent
$ bin/flume-ng agent -n a1 -c conf/ --conf-file conf/flume-kafka-storm.properties -Dflume.root.logger=INFO,console
啟動kakfa的console消費者檢視是否有日誌產生
相關推薦
(1)Storm實時日誌分析實戰--專案準備
流程圖 Flume收集Nginx的日誌,然後存在Kafka佇列中,由storm讀取Kafka中的日誌資訊,經過相關處理後,儲存到HBase和MySQL中 安裝步驟Kafka 從官網下載安
(2)Storm實時日誌分析實戰--Topology的設計
需求 日誌資料樣例: 215.187.202.215 - - [1481945172991] “GET/IBEIfeng.gif?order_id=1&orderTime=148194
Storm學習筆記(1) - 初識實時流處理Storm
文章目錄 Strom是什麼 為什麼使用storm Storm發展歷史 從Twitter說起 Storm的成長 Storm和Hadoop的區別 Storm和Spar
~雜記(1):makefile檔案分析
1、makefile 檔案分析(部分資訊,做出替換修改)。 2、相關注釋資訊作為經驗交流點。 3、如有註釋錯誤的請指正。 # = 是最基本的賦值 # := 是覆蓋之前的值 # ?= 是如果沒有被賦值過就賦予等號後面的值 # += 是新增等號後面的值 #c編譯器 CC=gcc #C+
[Spring實戰系列](1)Eclipse下建立Spring-HelloWorld專案
1. 簡介 Spring Tool Suite 是一個Eclipse外掛,利用該外掛可以很方便的在Eclipse平臺上開發基於Spring的應用。 2. 檢視Eclipse版本 Spring Tool Suite外掛的下載需要根據Eclipse版本而定,不同版
日誌框架學習(1)— Java常用日誌框架介紹
日誌概述 對於一個應用程式來說日誌記錄是必不可少的一部分。線上問題追蹤,基於日誌的業務邏輯統計分析等都離不日誌。java領域存在多種日誌框架,目前常用的日誌框架包括Log4j,Log4j 2,Commons Logging,Slf4j,Logback,Jul。
機器學習筆記(1) 感知機演算法 之 實戰篇
我們在上篇筆記中介紹了感知機的理論知識,討論了感知機的由來、工作原理、求解策略、收斂性。這篇筆記中,我們親自動手寫程式碼,使用感知機演算法解決實際問題。 先從一個最簡單的問題開始,用感知機演算法解決OR邏輯的分類。 import numpy as np import matplotlib.pyplot as
用Java寫編譯器(1)- 詞法和語法分析
# 詞法和語法分析器構建 ## ANTLR簡介 ANTLR全稱ANother Tool for Languate Recognition,是基於LL(*)演算法實現的語法分析器生成器和詞法分析器生成器,由舊金山大學的Terence Parr博士等人於1989年開始使用java編寫。截止到目前,ANTLR已
ABP入門系列(1)——通過模板建立MAP版本專案
一、從官網建立模板專案 依次按下圖選擇: 輸入驗證碼開始下載 下載提示: 二、啟動專案 使用VS2015開啟專案,還原Nuget包: 設定以Web結尾的專案,設定為啟動專案: 開啟Web.config,修改連線字串。(因為我本地裝的sqlserver是例項是.sqlexpress,所以需要
Spark SQL 筆記(10)——實戰網站日誌分析(1)
1 使用者行為日誌介紹 1.1 行為日誌生成方法 Nginx Ajax 1.2 日誌內容 訪問的系統屬性:作業系統、瀏覽器 訪問特徵:點選的 url、從哪個url 跳轉過來的(referer)、頁
分散式日誌分析系統構建實戰(四)——Storm
介紹 Storm是一個實時平行計算系統。對比與經典的hadoop,storm的優勢就在於實時性。簡單來說,hadoop可以用來對海量的資料進行批量的處理,但這些資料是靜態的,處理過程中不會對新產生的資料進行處理。當處理完之後,hadoop程序就可以結束,並輸出
ELK服務搭建(開源實時日誌分析ELK平臺部署)(低版本—簡單部署)
搜索引擎 應用程序 官方網站 服務器 安全性 elk 開源實時日誌分析ELK平臺部署日誌主要包括系統日誌、應用程序日誌和安全日誌。系統運維和開發人員可以通過日誌了解服務器軟硬件信息、檢查配置過程中的錯誤及錯誤發生的原因。經常分析日誌可以了解服務器的負荷,性能安全性,從而及時采取措施糾正
R語言實戰 - 基本統計分析(1)- 描述性統計分析
4.3 summary eas 方法 func -- 4.4 1.0 6.5 > vars <- c("mpg", "hp", "wt") > head(mtcars[vars]) mpg hp wt Maz
大資料離線---網站日誌流量分析系統(1)---簡介及框架
本次介紹網站日誌流量分析系統,首先是簡介和架構。後面會對架構中需要的每個模組的進行逐個介紹。本篇主要分為兩個部分 網站日誌流量分析系統簡介 整體技術流程和架構 1. 網站日誌流量分析系統簡介 1.1點選流資料模型 點選流的概念 點選流( Cl
【Python3實戰Spark大資料分析及排程】Spark Core 課程筆記(1)
目錄 架構 注意事項 Spark Core: Spark 核心進階 Spark 核心概念 Application User program built on Spark. Consists of a driver progr
ELK實時日誌分析平臺環境部署--完整記錄(ElasticSearch+Logstash+Kibana )
在日常運維工作中,對於系統和業務日誌的處理尤為重要。今天,在這裡分享一下自己部署的ELK(+Redis)-開源實時日誌分析平臺的記錄過程(僅依據本人的實際操作為例說明,如有誤述,敬請指出)~================概念介紹================日誌主要包括系統日誌、應用程式日誌和安全日誌。系
日誌服務Python消費組實戰(三):實時跨域監測多日誌庫資料
解決問題 使用日誌服務進行資料處理與傳遞的過程中,你是否遇到如下監測場景不能很好的解決: 特定資料上傳到日誌服務中需要檢查資料內的異常情況,而沒有現成監控工具? 需要檢索資料裡面的關鍵字,但資料沒有建立索引,無法使用日誌服務的告警功能? 資料監測要求實時性(<5秒,例如Web訪問5
惡意程式碼分析實戰 Lab09-01(1)
分析報告: 1. 樣本概況 病毒名稱為Lab09-01.exe,使用Microsoft Visual C++ v6.0編譯。 1.1樣本資訊 病毒名稱:Lab09-01.exe MD5值: B94AF4A4D4AF6EAC81FC135ABDA1C40C SHA1值
python實戰(1):簡單的資料採集與分析
最近忙著做畢業設計,最愛的python當然成了我的切入點。因此特意找了一個專案來練練手,專案很簡單,就是利用python爬取資料,然後再利用matplotlib進行資料視覺化。 專案設計:爬蟲爬取資料並存入mongodb資料庫中,然後再編寫指令碼讀取資料,進行
日誌服務Python消費組實戰(三):實時跨域監測多日誌庫數據
多個 poi oba 監測 ogg lse lis sel 有效 解決問題使用日誌服務進行數據處理與傳遞的過程中,你是否遇到如下監測場景不能很好的解決: 特定數據上傳到日誌服務中需要檢查數據內的異常情況,而沒有現成監控工具?需要檢索數據裏面的關鍵字,但數據沒有建立索引,無法