elasticsearch集群搜集nginx日志


20200616一篇es的好文:

https://www.cnblogs.com/cjsblog/p/9495024.html

 

 

es下載:

https://thans.cn/mirror/elasticsearch.html

3台es集群

▷ elasticsearch 7.3.2
▷ filebeat 7.3.2
▷ kibana 7.3.2

es1的配置:


# 集群名字
cluster.name: my-application

# 節點名字
node.name: 192.168.1.31

# 日志位置
path.logs: /opt/logs/elasticsearch

# 本節點訪問IP
network.host: 192.168.1.31

# 本節點訪問
http.port: 9200

# 節點運輸端口
transport.port: 9300

# 集群中其他主機的列表
discovery.seed_hosts: ["192.168.1.31", "192.168.1.32", "192.168.1.33"]

# 首次啟動全新的Elasticsearch集群時,在第一次選舉中便對其票數進行計數的master節點的集合
cluster.initial_master_nodes: ["192.168.1.31", "192.168.1.32", "192.168.1.33"]

# 啟用跨域資源共享
http.cors.enabled: true
http.cors.allow-origin: "*"

# 只要有2台數據或主節點已加入集群,就可以恢復
gateway.recover_after_nodes: 2

 


 

es2的配置:

# 集群名字
cluster.name: my-application

# 節點名字
node.name: 192.168.1.32

# 日志位置
path.logs: /opt/logs/elasticsearch

# 本節點訪問IP
network.host: 192.168.1.32

# 本節點訪問
http.port: 9200

# 節點運輸端口
transport.port: 9300

# 集群中其他主機的列表
discovery.seed_hosts: ["192.168.1.31", "192.168.1.32", "192.168.1.33"]

# 首次啟動全新的Elasticsearch集群時,在第一次選舉中便對其票數進行計數的master節點的集合
cluster.initial_master_nodes: ["192.168.1.31", "192.168.1.32", "192.168.1.33"]

# 啟用跨域資源共享
http.cors.enabled: true
http.cors.allow-origin: "*"

# 只要有2台數據或主節點已加入集群,就可以恢復
gateway.recover_after_nodes: 2

 


es3的配置:

# 集群名字
cluster.name: my-application

# 節點名字
node.name: 192.168.1.33

# 日志位置
path.logs: /opt/logs/elasticsearch

# 本節點訪問IP
network.host: 192.168.1.33

# 本節點訪問
http.port: 9200

# 節點運輸端口
transport.port: 9300

# 集群中其他主機的列表
discovery.seed_hosts: ["192.168.1.31", "192.168.1.32", "192.168.1.33"]

# 首次啟動全新的Elasticsearch集群時,在第一次選舉中便對其票數進行計數的master節點的集合
cluster.initial_master_nodes: ["192.168.1.31", "192.168.1.32", "192.168.1.33"]

# 啟用跨域資源共享
http.cors.enabled: true
http.cors.allow-origin: "*"

# 只要有2台數據或主節點已加入集群,就可以恢復
gateway.recover_after_nodes: 2

 


 

如果用的filebeat,搜集的nginx日志:

# 文件輸入
filebeat.inputs:
  # 文件輸入類型
  - type: log
    # 開啟加載
    enabled: true
    # 文件位置
    paths:
      - /var/log/nginx/access.log
    # 自定義參數
    fields:
      type: nginx_access  # 類型是nginx_access,和上面fields.type是一致的
 
# 輸出至elasticsearch
output.elasticsearch:
  # elasticsearch集群
  hosts: ["http://192.168.1.31:9200",
          "http://192.168.1.32:9200",
          "http://192.168.1.33:9200"]
 
  # 索引配置
  indices:
    # 索引名
    - index: "nginx_access_%{+yyy.MM}"
      # 當類型是nginx_access時使用此索引
      when.equals:
        fields.type: "nginx_access"
 
# 關閉自帶模板
setup.template.enabled: false
 
# 開啟日志記錄
logging.to_files: true
# 日志等級
logging.level: info
# 日志文件
logging.files:
  # 日志位置
  path: /opt/logs/filebeat/
  # 日志名字
  name: filebeat
  # 日志輪轉期限,必須要2~1024
  keepfiles: 7
  # 日志輪轉權限
  permissions: 0600

  


 

kibana的配置:

# 本節點訪問端口
server.port: 5601
 
# 本節點IP
server.host: "192.168.1.21"
 
# 本節點名字
server.name: "192.168.1.21"
 
# elasticsearch集群IP
elasticsearch.hosts: ["http://192.168.1.31:9200",
                      "http://192.168.1.32:9200",
                      "http://192.168.1.33:9200"]

  

 


 

啟動服務:

  1. # elasticsearch啟動(3台es均啟動)
  2.  
    sudo -u elasticsearch /opt/elasticsearch/bin/elasticsearch
  3.  
     
  4.  
    # filebeat啟動
  5.  
    /opt/filebeat/filebeat -e -c /opt/filebeat/filebeat.yml -d "publish"
  6.  
     
  7.  
    # kibana啟動
  8.  
    sudo -u kibana /opt/kibana/bin/kibana -c /opt/kibana/config/kibana.yml

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM