第三十章 elk(1) - 第一種架構(最簡架構)

来源:http://www.cnblogs.com/java-zhao/archive/2016/09/17/5879348.html
-Advertisement-
Play Games

軟體版本: es:2.4.0 logstash:2.4.0 kibana:4.6.1 一、logstash安裝(收集、過濾日誌、構建索引) 1、下載:https://www.elastic.co/downloads/ 2、解壓 3、啟動 cd /Users/enniu1/Desktop/server ...


軟體版本:

  • es:2.4.0
  • logstash:2.4.0
  • kibana:4.6.1

 

一、logstash安裝(收集、過濾日誌、構建索引

1、下載:https://www.elastic.co/downloads/

2、解壓

3、啟動

  • cd /Users/enniu1/Desktop/server/elk/logstash-2.4.0/bin

  • ./logstash -e 'input{stdin{}} output{stdout{codec=>rubydebug}}'

    • -e:用於快速測試的時候指定參數
    • codec:美化輸出格式
    • 僅用於測試

4、測試

命令行輸入:hello jigang

輸出:

1 {
2        "message" => "hello jigang",
3       "@version" => "1",
4     "@timestamp" => "2016-09-17T10:41:31.215Z",
5           "host" => "ShaoFeng51deMacBook-Pro.local"
6 }
View Code

註意:以上是logstash最常見的輸出形式。

  • message:完整的輸入信息或事件
  • host:事件發生的主機
  • @timestamp:事件被索引時的時間。

5、生產環境

使用配置文件配置input、filter、output信息

  • 自己創建配置文件:/Users/enniu1/Desktop/server/elk/logstash-2.4.0/conf/logstash.conf
 1 input {
 2     stdin {}
 3 }
 4 
 5 filter {
 6     
 7 }
 8 
 9 output {
10     elasticsearch { hosts => ["127.0.0.1:9200"] }
11 }
View Code
  • 以上配置將所有的輸入信息都輸出到es中,這是最常見的輸出地方。
  • 還有一種elk架構使用redis作為broker來接收logstash收集到的數據,之後進行indexer,這是高數量情況下的首選,redis會擔當一個消息隊列的角色。

logstash配置文件配置文檔:https://www.elastic.co/guide/en/logstash/current/configuration.html

之後啟動logstash:./logstash -f ../conf/logstash.conf

至此,logstash配置安裝成功!!!

 

二、es安裝(搜索、存儲日誌

1、下載:https://www.elastic.co/downloads/

2、解壓

3、配置文件elasticsearch-2.4.0/config/elasticsearch.yml

1 # Use a descriptive name for your cluster:集群將根據這個名字來自動發現和加入節點
2 cluster.name: mymicroservice-elk
3 node.name: node-es-1
4 path.data: /Users/enniu1/Desktop/microservice/elk/es/data
5 path.logs: /Users/enniu1/Desktop/microservice/elk/es/logs
6 network.host: 127.0.0.1
7 http.port: 9200
View Code

4、啟動

  • cd/Users/enniu1/Desktop/server/elk/elasticsearch-2.4.0/bin
  • nohup ./elasticsearch &

5、測試

瀏覽器輸入:http://127.0.0.1:9200/,輸出:

 1 {
 2   "name" : "node-es-1",
 3   "cluster_name" : "mymicroservice-elk",
 4   "version" : {
 5     "number" : "2.4.0",
 6     "build_hash" : "ce9f0c7394dee074091dd1bc4e9469251181fc55",
 7     "build_timestamp" : "2016-08-29T09:14:17Z",
 8     "build_snapshot" : false,
 9     "lucene_version" : "5.5.2"
10   },
11   "tagline" : "You Know, for Search"
12 }
View Code

成功!!!

註意:為了更好的使用並查看es的使用情況,安裝Kopf插件。

Kopf插件地址:https://github.com/lmenezes/elasticsearch-kopf

插件安裝文檔:https://www.elastic.co/guide/en/elasticsearch/plugins/current/installation.html

安裝命令:

  • cd/Users/enniu1/Desktop/server/elk/elasticsearch-2.4.0/bin
  • ./plugin install lmenezes/elasticsearch-kopf

安裝插件之後重啟es,瀏覽器輸入:127.0.0.1:9200/_plugin/kopf,輸出

成功!!!

 

三、kibana安裝(展示日誌信息

1、下載:https://www.elastic.co/downloads/

2、解壓

3、配置文件:/Users/enniu1/Desktop/server/elk/kibana-4.6.1/config

1 server.host: "127.0.0.1"
2 server.port: 5601
3 elasticsearch.url: "http://127.0.0.1:9200"
View Code

4、啟動

  • cd /Users/enniu1/Desktop/server/elk/kibana-4.6.1/bin
  • ./kibana

5、測試

瀏覽器輸入:http://127.0.0.1:5601/

輸出:

在此頁面,點擊"create"按鈕,進行index的構建。

至此,kibana配置安裝啟動成功!!!

 

四、形成完整通道

在logstash終端輸入:hello jigang

在kibana的Discover部分查看日誌:

elk最簡架構搭建完成!!!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1.如何獲取某個方法 方法的名稱和方法的參數列表才能唯一決定一個方法 2.方法反射的操作 method.invoke(); 如果方法是private的會報這個錯誤 java.lang.IllegalAccessException ...
  • carbaugh/lice "lice" : Generate license files for your projects 一個用來為你的項目生成許可證的工具。這下可方便了,不用手工的去修改了! coleifer/peewee "peewee" : a small, expressive orm ...
  • 一、首先先在碼雲上新建一個項目 二、複製項目的鏈接 三、打開SmartGit,點擊clone 4、把複製的項目鏈接粘上去 5、然後點兩次next,選擇一個路徑,finish 6、打開剛剛選擇的路徑,我們能看到: 7、現在我們要把我們自己的maven項目粘進去 8、做完之後,我們能夠看到SmartGi ...
  • 題目鏈接 http://acm.hdu.edu.cn/showproblem.php?pid=5881 Problem Description Tea is good.Tea is life.Tea is everything.The balance of tea is a journey of p ...
  • 預處理程式 預處理程式語句使用井號(#)標記,這個符號必須是一行中的第一個非空格字元。 #define 語句(這種預定義通常也被稱為定義“巨集”): #define 語句的基本用途之一就是給符號名稱指定程式常量。 例如: #define Constant 1//預處理程式語句後面不要加分號(;) ,因 ...
  • 題目鏈接 http://acm.hdu.edu.cn/showproblem.php?pid=5884 Problem Description Recently, Bob has just learnt a naive sorting algorithm: merge sort. Now, Bob ...
  • 平時最常用到的UML圖包括:用例圖、類圖、序列圖、狀態圖。 用例圖 主要是描述系統具有的一個功能單元。通常包含角色和用例。角色通常表示為一個系統用戶,用例通常表示為系統具有的一個功能。通過用例圖我們可以輕易地識別到這個系統到底具備哪些功能單元。 下麵我舉個融投資的用例,有2種角色:投資人invest ...
  • 1.圖片間的來回切換用if{}else{}; <超鏈接方式的切換圖片(常用)>如:<a href="../images1/1-small.jpg" id="bnn"/>切換圖片</a><br/><img src="../images1/2-small.jpg" alt="" id="btt"/><s ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...