溫馨提示×

Debian syslog如何與ELK堆棧集成

小樊
50
2025-03-29 12:41:23
欄目: 智能運維

要將Debian系統上的syslog與ELK(Elasticsearch, Logstash, Kibana)堆棧集成,可以按照以下步驟進行配置:

1. 安裝和配置Rsyslog

Rsyslog是syslog的增強版本,可以在Debian系統上默認安裝。如果需要額外的模塊,如omkafka,則需要手動安裝。

  • 安裝Rsyslog

    sudo apt-get update
    sudo apt-get install rsyslog
    
  • 添加omkafka模塊(如果需要將日志寫入Kafka):

    • 安裝編譯工具和依賴包:
      sudo apt-get install pkg-config autoconf automake libtool unzip
      sudo apt-get install libdbi-dev libmysqlclient-dev postgresql-client libpq-dev libnet-dev librdkafka-dev libgrok-dev libgrok1 libgrok-dev libpcre3-dev libtokyocabinet-dev libglib2.0-dev libmongo-client-dev libhiredis-dev libestr-dev libfastjson-dev uuid-dev liblogging-stdlog-dev libgcrypt-dev flex bison
      
    • 克隆并編譯安裝omkafka模塊:
      mkdir -p ~/tmp
      cd ~/tmp
      git clone https://github.com/vertipub/omkafka.git
      autoreconf -fi
      ./configure --sbindir=/usr/sbin --libdir=/usr/lib --enable-omkafka
      make
      sudo make install
      cd ..
      
  • 配置Rsyslog: 編輯/etc/rsyslog.conf文件,配置日志接收和輸出。例如,接收UDP和TCP 514端口的syslog日志,并將它們發送到Elasticsearch:

    # 接收UDP 514端口的syslog日志
    module(load="imudp")
    input(type="imudp" port="514")
    
    # 接收TCP 514端口的syslog日志
    module(load="imtcp")
    input(type="imtcp" port="514")
    
    # 將日志發送到Elasticsearch
    *.* action(type="ommysql" server="localhost" db="rsyslog" uid="admin" pwd="password")
    

    重啟Rsyslog服務以應用配置:

    sudo systemctl restart rsyslog
    

2. 配置Logstash

在Logstash中配置輸入端口以接收來自Rsyslog的日志,并進行處理后輸出到Elasticsearch。

  • 安裝Logstash

    wget https://artifacts.elastic.co/downloads/logstash/logstash-7.15.0-linux-x86_64.tar.gz
    tar -xzf logstash-7.15.0-linux-x86_64.tar.gz
    cd logstash-7.15.0
    
  • 配置Logstash: 編輯/etc/logstash/conf.d/syslog.conf文件,配置輸入和輸出:

    input {
      syslog {
        type => "rsyslog"
        port => 514
      }
    }
    
    output {
      elasticsearch {
        hosts => ["localhost:9200"]
        index => "rsyslog-%{+YYYY.MM.dd}"
      }
    }
    

    啟動Logstash服務:

    sudo bin/logstash -f /etc/logstash/conf.d/syslog.conf
    

3. 配置Kibana

在Kibana中配置索引模式以匹配Logstash輸出的日志,并進行可視化展示。

  • 安裝Kibana

    wget https://artifacts.elastic.co/downloads/kibana/kibana-7.15.0-linux-x86_64.tar.gz
    tar -xzf kibana-7.15.0-linux-x86_64.tar.gz
    cd kibana-7.15.0
    
  • 配置Kibana: 編輯/etc/kibana/kibana.yml文件,配置Elasticsearch連接:

    server.host: "localhost"
    elasticsearch.hosts: ["http://localhost:9200"]
    

    啟動Kibana服務:

    sudo bin/kibana
    

4. 驗證集成

  • 在Rsyslog服務器上生成日志,并檢查Elasticsearch和Kibana中是否能看到這些日志。
  • 在Kibana的Discover頁面中,應該能夠看到通過Logstash處理后的syslog日志。

通過以上步驟,您可以將Debian系統上的syslog日志收集并集成到ELK堆棧中,實現日志的集中收集、存儲、分析和可視化展示。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女