ELK日誌收集記錄

来源:https://www.cnblogs.com/huizit1/archive/2023/06/20/17494824.html
-Advertisement-
Play Games

logstash在需要收集日誌的伺服器里運行,將日誌數據發送給es 在kibana頁面查看es的數據 es和kibana安裝: Install Elasticsearch with RPM | Elasticsearch Guide [8.8] | Elastic Configuring Elast ...


logstash在需要收集日誌的伺服器里運行,將日誌數據發送給es

在kibana頁面查看es的數據

es和kibana安裝:

Install Elasticsearch with RPM | Elasticsearch Guide [8.8] | Elastic Configuring Elasticsearch | Elasticsearch Guide [8.8] | Elastic Install Kibana with RPM | Kibana Guide [8.8] | Elastic
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

cat << EOF >/etc/yum.repos.d/elasticsearch.repo
[elasticsearch]
name=Elasticsearch repository for 8.x packages
baseurl=https://artifacts.elastic.co/packages/8.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=0
autorefresh=1
type=rpm-md
EOF

yum install -y --enablerepo=elasticsearch elasticsearch

# 安裝完成後,在終端里可以找到es的密碼
# 修改密碼:'/usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic'
# config file: /etc/elasticsearch/elasticsearch.yml
# network.host: 0.0.0.0 允許其他伺服器訪問
# http.port 修改成可以外部訪問的埠

# 啟動es
systemctl start elasticsearch.service

# 測試是否可以訪問:curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic https://localhost:es_host
# 如果要在其他伺服器里訪問的話,需要先把證書移過去:
/etc/elasticsearch/certs/http_ca.crt,直接複製證書的內容,在客戶端保存成一個證書文件即可
# 在客戶端里測試是否可以訪問:
curl --cacert path_to_ca.crt -u elastic https://localhost:es_host

# install kibana
cat << EOF >/etc/yum.repos.d/kibana.repo
[kibana-8.x]
name=Kibana repository for 8.x packages
baseurl=https://artifacts.elastic.co/packages/8.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF

# kibana和es可以安裝到同一臺伺服器
yum install -y kibana # /etc/kibana/kibana.yml 修改server.port為外部可以訪問的埠,server.host修改為0.0.0.0允許其他伺服器訪問,elasticsearch部分的可以先不用設置, # root用戶使用:/usr/share/kibana/bin/kibana --allow-root systemctl start kibana.service # 首次打開kibana頁面需要添加elastic的token,使用如下命令生成token # /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana
# 登錄的時候也需要es的用戶名和密碼
# 登錄成功之後,
/etc/kibana/kibana.yml的底部會自動添加elasticsearch的連接信息

需要收集日誌的伺服器里安裝logstash:

rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

cat <<EOF > /etc/yum.repos.d/logstash.repo
[logstash-8.x]
name=Elastic repository for 8.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF

yum install -y logstash
ln -s /usr/share/logstash/bin/logstash /usr/bin/logstash

# install filebeat
rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch
cat <<EOF > /etc/yum.repos.d/filebeat.repo
[elastic-8.x]
name=Elastic repository for 8.x packages
baseurl=https://artifacts.elastic.co/packages/8.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
yum install -y filebeat
ln -s /usr/share/filebeat/bin/filebeat /usr/bin/logstash #filebeat
->logstash->ES #filebeat從具體目錄里拿文件的內容發送給logstash,logstash將數據發送給es
midr
-m 777 -p /data/logstash
cat <<EOF >/data/logstash/filebeat.conf filebeat.inputs: - type: log paths: - /your_log_path/*.log output.logstash: hosts: ["127.0.0.1:5044"] EOF cat <<EOF >/data/logstash/logstash.conf # Sample Logstash configuration for creating a simple # Beats -> Logstash -> Elasticsearch pipeline. input { beats { port => 5044 client_inactivity_timeout => 600 } } filter{ mutate{ remove_field => ["agent"] remove_field => ["ecs"] remove_field => ["event"] remove_field => ["tags"] remove_field => ["@version"] remove_field => ["input"] remove_field => ["log"] } } output { elasticsearch { hosts => ["https://es_ip_address:es_port"] index => "log-from-logstash" user => "es_user_name" password => "es_password" ssl_certificate_authorities => "path_to_es_http_ca.crt" } } EOF
#es_http_ca.crt的內容和es伺服器里的/etc/elasticsearch/certs/http_ca.crt內容相同 #filter里移除一些不必要的欄位 #啟動 logstash -f /data/logstash/logstash.conf >/dev/null 2>&1 & filebeat -e -c /data/logstash/filebeat.conf >/dev/null 2>&1 &
啟動之後,filebeat.conf里配置的日誌路徑里可以copy一些文件做測試,或者已經有一些日誌文件的話,都可以在kabana里看到配置的index被自動創建:

 創建一個DataView就可以查看index里的文檔內容:

 在Discover里選擇配置的dataview查看數據:

 

 

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

-Advertisement-
Play Games
更多相關文章
  • # Java 運算符的使用 # 1.算術運算符 ## 算術運算符包括: +, -, *, /, %, ++, --,其中需要註意的是%,++,--; ## % 取模運算也叫做取餘,在 Java 中取餘的規則: a % b = a - a / b * b,如果是小數的話是這樣:a % b = a- ( ...
  • 為了更好的認識函數,我們還要研究值傳遞問題,再研究這個問題之前,我們已經知道了函數之間的值傳遞,是實參變數值傳遞給形參變數,然後讓形參變數在函數內完成相應的功能。但是因為數據類型的不同,這裡的值傳遞產生的對實參變數的效果是不同的 # 1.傳遞數據本質 參數傳遞之間傳遞的肯定是數據,而這種數據本質上是 ...
  • ## 一、概述 ### 1.什麼是多租戶架構? 多租戶架構是指在一個應用中支持多個租戶(Tenant)同時訪問,每個租戶擁有獨立的資源和數據,並且彼此之間完全隔離。通俗來說,多租戶就是把一個應用按照客戶的需求“分割”成多個獨立的實例,每個實例互不幹擾。 ### 2. 多租戶架構的優勢 - 更好地滿足 ...
  • 經過前幾篇文章的講解,初步瞭解ASP.NET Core MVC項目創建,啟動運行,以及命名約定,創建控制器,視圖,模型,接收參數,傳遞數據ViewData,ViewBag,路由,頁面佈局,wwwroot和客戶端庫,Razor語法,EnityFrameworkCore與資料庫,HttpContext,... ...
  • ## 一:背景 ### 1. 講故事 前些天有位朋友找到我,說他的程式跑著跑著就崩潰了,讓我看下怎麼回事,其實沒怎麼回事,抓它的 crash dump 就好,具體怎麼抓也是被問到的一個高頻問題,這裡再補一下鏈接: [.NET程式崩潰了怎麼抓 Dump ? 我總結了三種方案] https://www. ...
  • `WPF`的依賴屬性是一項強大的功能,它允許我們創建可擴展、靈活和可重用的`UI`組件。通過依賴屬性,我們可以實現屬性的數據綁定、樣式化、動畫化以及屬性值的有效驗證和轉換。在本文中,我們介紹了幾個關鍵概念和用法,包括初始依賴屬性、自定義依賴屬性、只讀依賴屬性以及附加屬性。 ...
  • >原本只是想要每次打開終端,預設是 zsh ,方便使用 oh-my-zsh。但誰能料到這個配置有個史前大坑! ## 問題復現 頂部菜單欄的`終端` > 首選項配置:`未命名` > `命令` > 運行自定義命令 > 命令退出時:退出終端。 **只要這條命令出錯,或者執行完畢,就會結束退出了** (太痛 ...
  • ## 使用(微軟賬戶)進行遠程桌面連接 1. 打開找到[查看高級系統設置] -> [遠程] -> [遠程桌面]。 ![image](https://img2023.cnblogs.com/blog/3081210/202306/3081210-20230620213008346-1294112930 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...