1. 程式人生 > >ELK日誌系統開發(Logstash、Elasticsearch、Kibana安裝)(一)

ELK日誌系統開發(Logstash、Elasticsearch、Kibana安裝)(一)

一、安裝Logstash

!注意,logstash至少要有1G記憶體才能執行

在安裝Logstash之前,確保已經安裝了Java的執行環境

3)下載完成之後,加壓(無須編譯),並複製到local目錄下,這個是我正式部署的目錄:/usr/local/logstash-6.2.4

4)測試執行

[[email protected] download]# /usr/local/logstash-6.2.4/bin/logstash -e 'input { stdin { } } output { stdout {} }'
Settings: Default pipeline workers: 1
Pipeline main started
c++
2016-08-18T09:39:26.267Z localhost.localdomain c++

        我們可以看到,我們輸入什麼內容logstash按照某種格式輸出,其中-e引數引數允許Logstash直接通過命令列接受設定。這點尤其快速的幫助我們反覆的測試配置是否正確而不用寫配置檔案。使用CTRL-C命令可以退出之前執行的Logstash。

        使用-e引數在命令列中指定配置是很常用的方式,不過如果需要配置更多設定則需要很長的內容。這種情況,我們首先建立一個簡單的配置檔案,並且指定logstash使用這個配置檔案。 例如:在 logstash 安裝目錄下建立一個“基本配置”測試檔案 logstash-test.conf, 檔案內容如下:

# cat logstash-simple.conf
input { stdin { } }
output {
  stdout { codec=> rubydebug }
}

        Logstash 使用 input 和 output 定義收集日誌時的輸入和輸出的相關配置,本例中 input 定義了一個叫 "stdin" 的 input , output 定義一個叫 "stdout" 的 output 。無論我們輸入什麼字元, Logstash 都會按照某種格式來返回我們輸入的字元,其中 output 被定義為 "stdout" 並使用了 codec 引數來指定 logstash 輸出格式。

/usr/local/logstash-6.2.4/bin/logstash -f /usr/local/logstash-6.2.4/conf/logstash-simple.conf
{
       "message" => "C++",
      "@version" => "1",
    "@timestamp" => "2016-08-18T10:05:47.352Z",
          "host" => "localhost.localdomain"
}

5)後臺執行Logstash

nohup /usr/local/logstash-6.2.4/bin/logstash -f /usr/local/logstash-6.2.4/conf/logstash-simple.conf & > /dev/null 2>&1

除了nohup之外,可以使用supervisor進行管理。

二、安裝Elasticsearch

1)下載,並解壓(無須編譯),Elasticsearch
      複製到local目錄下,正式物理目錄:/usr/local/elasticsearch-6.2.4

2)啟動Elasticsearch

注意,我使用root許可權來執行,但是Java丟擲了Exception in thread "main" java.lang.RuntimeException: don't run elasticsearch as root,因此必須使用普通帳號執行。

/usr/local/elasticsearch-6.2.4/bin/elasticsearch

如果需要後臺執行,執行以下命令:

/usr/local/elasticsearch-6.2.4/bin/elasticsearch -d

檢查是否成功執行:9200埠是Elasticsearch對外的HTTP協議的API

[[email protected] local]$ netstat -nat | grep 9200
tcp6       0      0 127.0.0.1:9200          :::*                    LISTEN

3)配置logstash,並將結果輸出到elasticsearch

修改logstash 的配置檔案:

input { stdin { } }
output {
  elasticsearch {hosts => "localhost" }
  stdout { codec=> rubydebug }
}

 執行logstash:/usr/local/logstash-6.2.4/bin/logstash -f /usr/local/logstash-6.2.4/conf/logstash-simple.conf,並測試輸入日誌記錄

使用curl命令傳送請求elasticsearch是否接受到了資料:

[[email protected] conf]# curl 'http://localhost:9200/_search?pretty'
{
  "took" : 47,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "failed" : 0
  },
  "hits" : {
    "total" : 4,
    "max_score" : 1.0,
    "hits" : [ {
      "_index" : "logstash-2016.08.19",
      "_type" : "logs",
      "_id" : "AVah8wW7qomkeCHVJDgC",
      "_score" : 1.0,
      "_source" : {
        "message" : "C++",
        "@version" : "1",
        "@timestamp" : "2016-08-19T08:37:46.727Z",
        "host" : "localhost.localdomain"
      }
    }, {
      "_index" : "logstash-2016.08.19",

三、安裝Kibana

1)下載,解壓(無須編譯)
      正式物理目錄:/usr/local/kibana-6.2.4-linux-x86_64

2)配置和啟動kibana

nohup /usr/local/kibana-6.2.4-linux-x86_64/bin/kibana & > /dev/null 2>&1

3)使用Kibana

使用 http://kibanaServerIP:5601 訪問 Kibana 。登入後,先配置一個索引匹配。

操作步驟“Management”=>“Index Patterns”=>“Create Index Pattern”。logstash預設的索引名稱是logstash-yyyy.mm.dd,比如logstash-2016.08.19,因此,我們在這裡填寫logstash-*即可。

填寫後,提示找到了 Success!  Your index pattern matches 10 indices。接下來點選Next Step,選擇@timestamp來作為時間欄位(注意,如果沒選,我們就不能按照時間範圍進行查詢了)

點選“ Discover ”,可以搜尋和瀏覽 Elasticsearch 中的資料,預設搜尋的是最近 15分鐘的資料。可以自定義選擇時間。

OK,Logstash、Elasticsearch、Kibana就簡單的部署好了。

相關推薦

ELK日誌系統開發LogstashElasticsearchKibana安裝

一、安裝Logstash !注意,logstash至少要有1G記憶體才能執行 在安裝Logstash之前,確保已經安裝了Java的執行環境 3)下載完成之後,加壓(無須編譯),並複製到local目錄下,這個是我正式部署的目錄:/usr/local/logstash-

ELK日誌系統開發Kibana建立圖表

有時候,一張圖表能勝過千萬字,針對於nginx日誌來說,請求量和平均響應時間是2個比較重要的指標。 先看看成果,下圖展示了服務請求量,以及後端php的平均響應時間。 圖片生成步驟: 1)設定Metrics(圖表): 圖表名稱 Aggregation F

ELK日誌系統Elasticsearch+Logstash+Kibana搭建教程

htpasswd ins 4.2 httpd 2.3 ted location parser oracle ELK日誌系統:Elasticsearch + Logstash + Kibana 搭建教程 安裝配置JDK環境 JDK安裝(不能安裝JRE) JDK下載地址:htt

使用KafkaElasticsearchGrafana搭建業務監控系統Elasticsearch

系列目錄 一、Elasticsearch是什麼 如果之前學習過ES基礎知識可以跳過,直接看spring整合ES Elasticsearch是一個基於Apache Lucene™的開源搜尋引擎。無論在開源還是專有領域,Lucene可以被認為是迄今為止最先進、效

創業公司做資料分析ELK日誌系統

  作為系列文章的第四篇,本文將重點探討資料採集層中的ELK日誌系統。日誌,指的是後臺服務中產生的log資訊,通常會輸入到不同的檔案中,比如Django服務下,一般會有nginx日誌和uWSGI日誌。這些日誌分散地儲存在不同的機器上,取決於服務的部署情況了。如果

使用KafkaElasticsearchGrafana搭建業務監控系統技術選擇

系列目錄 一、背景 為了更好的對埋點資料進行視覺化分析,專案組決定開發一套自己的監控系統 二、技術選擇 Kafka or mq? Kafka是LinkedIn開源的分散式釋出-訂閱訊息系統,目前歸屬於Apache定級專案。Kafka主要特點是基於Pull

logstashelasticsearchkibana搭建日誌平臺

1、下載logstash      b、解壓:tar -xzvf logstash-5.1.1.tar.gz      c、設定使用者測試的配置檔案:vim logstatsh_test.conf,編輯內容如下:input { stdin { } } outp

ElasticSearch實戰系列九: ELK日誌系統介紹和安裝

## 前言 本文主要介紹的是ELK日誌系統入門和使用教程。 ## ELK介紹 ELK是三個開源軟體的縮寫,分別表示:Elasticsearch , Logstash, Kibana , 它們都是開源軟體。新增了一個FileBeat,它是一個輕量級的日誌收集處理工具(Agent),Filebeat佔用資源少

第二十三周微職位elk日誌系統

elk+nginx日誌系統利用ELK+redis搭建一套nginx日誌分析平臺。logstash,elasticsearch,kibana 怎麽進行nginx的日誌分析呢?首先,架構方面,nginx是有日誌文件的,它的每個請求的狀態等都有日誌文件進行記錄。其次,需要有個隊列,redis的list結構正好可以作

centos7 部署 ELK 日誌系統

stash 修改配置 ali 分享 install .cn data entos 生產環境 =============================================== 2017/12/17_第1次修改 ccb

ELK6.2.3日誌分析工具搭建JDKElasticsearchKibana安裝()

Logstash: Logstash服務的元件,用於處理傳入的日誌。 Elasticsearch: 儲存所有日誌 Kibana : 用於搜尋和視覺化的日誌的Web介面,通過nginx反代 Logstash Forwarder: 安裝在將要把日誌傳送到logstash的伺服器上,作為日誌轉發的道

Linux系統配置mongoredistomcatelasticsearchphpkibana【linux】

安裝後開啟的埠 系統 開啟命 關閉命令 埠號 elasticsearch service elasticsearch start service elasticsearch stop 9200

ELK日誌處理之使用logstash收集log4J日誌

介紹一下如何從Java工程中匯出log4J日誌到Logstash。 一、log4j基礎 不能免俗的官方介紹: Log4j 是一個使用 Java 語言編寫的,可靠、快速、靈活的日誌框架(API),使用 Apache Software License 授權。它被移植到 C

ELK日誌處理之使用logstash收集log4J日誌 和log4j日誌properties配置

Log4j 主要由三部分組成: loggers:負責採集日誌資訊。 appenders:負責將日誌資訊釋出到不同地方。 layouts:負責以各種風格格式化日誌資訊。 建立maven工程,pom中匯入日誌依賴: <dependency> <

elk日誌系統安裝部署

elk是什麼? ELK是ElasticSearch、Logstash、Kibana三個應用的縮寫。 ElasticSearch簡稱ES,主要用來儲存和檢索資料。 Logstash主要用來往ES中寫入資料。 Kibana主要用來展示資料 elk系統架構圖

ELK日誌系統淺析與部署

一、ELK應用場景在複雜的企業應用服務群中,記錄日誌方式多種多樣,並且不易歸檔以及提供日誌監控的機制。無論是開發人員還是運維人員都無法準確的定位服務、伺服器上面出現的種種問題,也沒有高效搜尋日誌內容從而快速定位問題的方式。因此需要一個集中式、獨立的、蒐集管理各個服務和伺服器上

部署 Kubernetes 叢集日誌外掛 FluentdElasticsearchKibana

目錄 Kubernetes 日誌架構介紹 環境、軟體準備 啟動 Fluentd 啟動 Elasticsearch 啟動 Kibana 瀏覽器新增證書 RBAC 認證模式介紹 1、Kubernetes 日誌架構介紹 對於任何基礎架構或者服務系

最全FlumeElasticSearchKibana實現日誌實時展示

今天一天的時間,成功使用flume把日誌扇入ElasticSearch中,並執行Kibana實現日誌的初步展示,記錄於此。1:ES叢集的搭建不予贅述,可參考:如何搭建ES叢集2:Flume與ES協同這一部分堪稱是重中之重,主要的時間就是花費在這上面了。flume的sink裡,

ELK日誌分析平臺之logstash

logstash Logstash 是一個接收,處理,轉發日誌的工具。支援系統日誌,webserver日誌,錯誤日誌,應用日誌,總之包括所有可以丟擲來的日誌型別。在一個典型的使用場景下(ELK):用 Elasticsearch作為後臺資料的儲存,kiba

ELK日誌系統單體搭建,基於7.1.1版本

ELK是什麼? 一般來說,為了提高服務可用性,伺服器需要部署多個例項,每個例項都是負載均衡轉發的後的,如果還用老辦法登入伺服器去tail -f xxx.log,有很大可能錯誤日誌未出現在當前伺服器中,還需要重複這個過程直到找到日誌才能進行問題定位。兩三臺還好,成百上千個例項呢?人力有時窮。此時ELK閃亮登場了