elk elasticsearch kibana logstash metricbeat filebeat apm heartbeat elastalert 監控 alerting index elastic stack open distro for elasticsearch elastalert

ELK Lesson 14:Metricbeat透過Logstash傳送資料到Elasticsearch

設定接收Metricbeat的設定檔

步驟1:新增Logstash的Keystore。

$ /usr/share/logstash/bin/logstash-keystore create --path.settings /etc/logstash

步驟2:於Keystore新增用於對Elasticsearch認證的帳號與密碼。

Elasticsearch認證帳號。

$ /usr/share/logstash/bin/logstash-keystore add ES_ID --path.settings /etc/logstash
Enter value for ES_ID:
Added 'es_id' to the Logstash keystore.

Elasticsearch認證密碼。

$ /usr/share/logstash/bin/logstash-keystore add ES_PWD --path.settings /etc/logstash
Enter value for ES_PWD:
Added 'es_pwd' to the Logstash keystore.

步驟3:新增certs資料夾,放置Elasticsearh的認證憑證。

$ sudo mkdir /etc/logstash/certs

請將之前安裝Elasticsearch所生產的憑證(ca.crt)放進去。

$ sudo cp /etc/elasticsearch/certs/ca.crt /etc/logstash/certs/ca.crt

步驟4:在Logstash的conf.d資料夾中新增一個副檔名為conf的檔案。

$ vi /etc/logstash/conf.d/metricbeat.conf

步驟5:將以下內容寫進metricbeat.conf。

input {
  beats {
    #指定接聽5044 port
    port => 5044
  }
}

output {
  elasticsearch {
    #指定寫入的Elasticsearch的節點,可以設定多個
    hosts => ["https://lab-elk-2.example.com:9200"]
    #寫入的index命名規則
    index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
    #指定Elasticsearch的憑證
    cacert => "/etc/logstash/certs/ca.crt"
    #指定Keystore內的帳號密碼
    user => "${es_id}"
    password => "${es_pwd}"
  }
}

步驟6:重新啟動Logstash。

$ systemctl restart logstash

修改Metricbeat設定檔

步驟1:註解掉之前寫入Elasticsearch的部分。

#output.elasticsearch:
...
...
...
#這段全部都要註解掉喔!

步驟2:調整output.logstash的部分。

# ------------------------------ Logstash Output -------------------------------
output.logstash:
  # The Logstash hosts
  hosts: ["lab-elk-2.example.com:5044"]

  # Optional SSL. By default is off.
  # List of root certificates for HTTPS server verifications
  #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]

  # Certificate for SSL client authentication
  #ssl.certificate: "/etc/pki/client/cert.pem"

  # Client Certificate Key
  #ssl.key: "/etc/pki/client/cert.key"

因為特殊原因,我們的環境中lab-elk-2.example.com上的Logstahs只處理metricbeat的資料,若是有多個主機,可以在hosts中多寫入幾個logstash主機,並且增加”loadbalance: true”這個設定,讓loading平均分攤。

相關資訊

  • Metricbeat官方教學:網址

~ END ~


, , ,

Related posts

Latest posts