1. 程式人生 > 其它 >ELK日誌系統環境配置

ELK日誌系統環境配置

本次配置基於ELK 7.13.1版本

  • elasticsearch 配置啟動

elasticsearch下載完後解壓,執行bin目錄的elasticsearch.bat 即可啟動elasticsearch服務,但此時只能通過127.0.0.1埠訪問,正常情況下需通過本地或內網地址都可以,需要更改config\elasticsearch.yml的配置內容如下:

network.host: 0.0.0.0
http.port: 9200
cluster.initial_master_nodes: ["node-1"]
  • elasticsearch 使用內建jdk

在bin目錄的elasticsearch-env.bat檔案中增加set JAVA_HOME="%ES_HOME%\jdk" 配置,如下

rem comparing to empty string makes this equivalent to bash -v check on env var
rem and allows to effectively force use of the bundled jdk when launching ES
rem by setting JAVA_HOME=
rem 此行設定讓es使用內建的jdk
set JAVA_HOME="%ES_HOME%\jdk"

if defined ES_JAVA_HOME (
  set JAVA="%ES_JAVA_HOME%\bin\java.exe
" set JAVA_TYPE=ES_JAVA_HOME ) else if defined JAVA_HOME ( rem fallback to JAVA_HOME echo "warning: usage of JAVA_HOME is deprecated, use ES_JAVA_HOME" >&2 set JAVA="%JAVA_HOME%\bin\java.exe" set "ES_JAVA_HOME=%JAVA_HOME%" set JAVA_TYPE=JAVA_HOME ) else ( rem use the bundled JDK (
default) set JAVA="%ES_HOME%\jdk\bin\java.exe" set "ES_JAVA_HOME=%ES_HOME%\jdk" set JAVA_TYPE=bundled JDK )

  • elasticsearch 叢集配置,下面以單叢集2個節點,說明配置檔案

節點一配置檔案

cluster.name: my-application #叢集名稱
node.name: node-1001 #節點名稱
network.host: 0.0.0.0 #IP
http.port: 9201 
transport.tcp.port: 9301 #tcp監聽埠
node.master: true #可以是主節點
node.data: true #可以是資料節點

#跨域配置
#action.destructive_requires_name: true
http.cors.enabled: true
http.cors.allow-origin: "*"

#查詢第一個啟動的節點
discovery.seed_hosts: ["172.17.36.206:9301","172.17.36.206:9302"]

#超時時間設為2分鐘,超過6次心跳沒有迴應,則認為該節點脫離master,每隔30s傳送一次心跳
discovery.zen.fd.ping_timeout: 120s  
discovery.zen.fd.ping_retries: 6  
discovery.zen.fd.ping_interval: 30s 

#叢集內的可以被選為主節點的節點列表
cluster.initial_master_nodes: ["node-1001","node-1002"]

#是否啟用對同一分片在同一個主機上出現多個分配例項的檢測。預設false。這個選項只有在同一個node上啟動多個es例項的情況下才有意義
#cluster.routing.allocation.same_shard.host: true

節點二配置檔案

cluster.name: my-application #叢集名稱
node.name: node-1002 #節點名稱
network.host: 0.0.0.0 #IP
http.port: 9202 
transport.tcp.port: 9302 #tcp監聽埠
node.master: true #可以是主節點
node.data: true #可以是資料節點

#跨域配置
#action.destructive_requires_name: true
http.cors.enabled: true
http.cors.allow-origin: "*"

#查詢第一個啟動的節點
discovery.seed_hosts: ["172.17.36.206:9301","172.17.36.206:9302"]

#超時時間設為2分鐘,超過6次心跳沒有迴應,則認為該節點脫離master,每隔30s傳送一次心跳
discovery.zen.fd.ping_timeout: 120s  
discovery.zen.fd.ping_retries: 6  
discovery.zen.fd.ping_interval: 30s 

#叢集內的可以被選為主節點的節點列表
cluster.initial_master_nodes: ["node-1001","node-1002"]

#是否啟用對同一分片在同一個主機上出現多個分配例項的檢測。預設false。這個選項只有在同一個node上啟動多個es例項的情況下才有意義
#cluster.routing.allocation.same_shard.host: true