之前的文章記錄了從win10系統安裝虛拟機centos7,再安裝jdk8,開發環境,還有elasticsearch6.6.0和kibana6.6.0今天的安裝需要在之前的基礎上,
安裝步驟都在我之前的部落格哦!
本文記錄安裝logstash6.0版本
首先去官網下載下傳最新版本:https://www.elastic.co/downloads/logstash
因為在linux中安裝,是以找到這個tar.gz結尾的檔案,如圖
下載下傳完成是這樣的檔案:
依舊上傳到centos7中的/opt/elk目錄中
将檔案賦權給elk使用者,
關于使用者建立,賦權,方法都在我之前的文章中有提到,ll指令會顯示檔案的權限
首先切換到elk使用者,在執行操作,注意不要用root使用者直接解壓,這樣檔案權限還是屬于root,不利于下面的操作
解壓檔案logstash-6.6.0.tar.gz,執行指令:
tar -zxvf logstash-6.6.0.tar.gz
下面不着急,首先配置一下同步資料庫,先得有jdbc驅動,于是我去maven下載下傳吧
下載下傳位址:https://mvnrepository.com/artifact/mysql/mysql-connector-java/5.1.47
點選這個jar即可下載下傳到本地
檔案是這樣的:
上傳到centos7中和我們的logstash安裝目錄中的bin檔案夾中,友善在配置檔案中擷取。
準備一下很關鍵的配置檔案:(檔案名 mysql-logstash.conf,放置于bin目錄下)
input {
stdin { }
jdbc {
#需要同步的資料庫
jdbc_connection_string => "jdbc:mysql://192.168.1.6:3306/***"
jdbc_user => "root"
jdbc_password => "root"
#本地jar包
jdbc_driver_library => "mysql-connector-java-5.1.47.jar"
jdbc_driver_class => "com.mysql.jdbc.Driver"
jdbc_paging_enabled => "true"
jdbc_page_size => "50000"
#擷取到記錄的SQL查詢語句
statement => "SELECT * FROM details"
#定時字段 各字段含義(由左至右)分、時、天、月、年,全部為*預設含義為每分鐘都更新
schedule => "* * * * *"
}
}
output {
stdout {
codec => json_lines
}
elasticsearch {
#ESIP位址與端口
hosts => "192.168.5.193:9200"
#ES索引名稱(自己定義的)
index => "details"
#文檔類型
document_type => "category"
#文檔類型id,%{category_id}意思是取查詢出來的category_id的值,并将其映射到es中_id字段中
document_id => "%{id}"
}
}
然後在bin目錄下使用./logstash -f mysql-logstash.conf啟動logstash
稍等一會可以看到控制台會列印資料庫查到的資料的相關資訊,則資料同步成功
打開kibana進行查詢
可以看到mysql中的資料進入了elasticsearch中.
同樣,logstash也可以像之前文章中elasticsearch和kibana那樣背景啟動,并把日志輸出到指定檔案。