婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Docker部署ELK7.3.0日志收集服務最佳實踐

Docker部署ELK7.3.0日志收集服務最佳實踐

熱門標簽:信貸電銷機器人系統 云南云電銷機器人招商 山東電信外呼系統靠譜嗎 比較穩定的外呼系統 ai電話機器人營銷 400 電話 申請費用 長沙回撥外呼系統 江蘇自動外呼系統一般多少錢 鸚鵡螺號航海地圖標注時間

寫在最前面

本文僅包含ELK7.3.0部署!

部署環境:

系統 CentOS 7
Docker Docker version 19.03.5
CPU 2核
內存 2.5G
磁盤 30G(推薦設置,磁盤不足可能會引發es報錯)
Filebeat v7.3.0,單節點
ElasticSearch v7.3.0,兩份片
Kibana v7.3.0,單節點
Logstash v7.3.1,單節點

ELK分布式集群部署方案

linux中elasticsearch用戶擁有的內存權限太小,至少需要262144,報錯信息(max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]),因此先修改系統配置。

# 修改配置sysctl.conf
vi /etc/sysctl.conf
# 添加下面配置:
vm.max_map_count=262144
# 重新加載:
sysctl -p
# 最后重新啟動elasticsearch,即可啟動成功。

環境均采用Docker部署,為了更方便的使用Docker命令,我們安裝一下bash-completion自動補全插件:

# 安裝依賴工具bash-complete
yum install -y bash-completion
ource /usr/share/bash-completion/completions/docker
source /usr/share/bash-completion/bash_completion

部署順序:ES --> Kibana --> Logstash --> Filebeat

ElasticSearch7.3.0部署

主節點部署

創建配置文件和數據存放目錄

mkdir -p {/mnt/es1/master/data,/mnt/es1/master/logs}
vim /mnt/es1/master/conf/es-master.yml

 es-master.yml配置

# 集群名稱
cluster.name: es-cluster
# 節點名稱
node.name: es-master
# 是否可以成為master節點
node.master: true
# 是否允許該節點存儲數據,默認開啟
node.data: false
# 網絡綁定
network.host: 0.0.0.0
# 設置對外服務的http端口
http.port: 9200
# 設置節點間交互的tcp端口
transport.port: 9300
# 集群發現
discovery.seed_hosts:
 - 172.17.0.2:9300
 - 172.17.0.3:9301
# 手動指定可以成為 mater 的所有節點的 name 或者 ip,這些配置將會在第一次選舉中進行計算
cluster.initial_master_nodes:
 - 172.17.0.2
# 支持跨域訪問
http.cors.enabled: true
http.cors.allow-origin: "*"
# 安全認證
xpack.security.enabled: false
#http.cors.allow-headers: "Authorization"
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

#解決跨域問題
#http.cors.enabled: true
#http.cors.allow-origin: "*"
#http.cors.allow-methods: OPTIONS, HEAD, GET, POST, PUT, DELETE
#http.cors.allow-headers: "X-Requested-With, Content-Type, Content-Length, X-User"

pull鏡像時會有些慢,耐心等待! 

# 拉取鏡像,可以直接構建容器,忽略此步
docker pull elasticsearch:7.3.0

# 構建容器
## 映射5601是為Kibana預留的端口
docker run -d -e ES_JAVA_OPTS="-Xms256m -Xmx256m" \

-p 9200:9200 -p 9300:9300 -p 5601:5601 \

-v /mnt/es1/master/conf/es-master.yml:/usr/share/elasticsearch/config/elasticsearch.yml \

-v /mnt/es1/master/data:/usr/share/elasticsearch/data \

-v /mnt/es1/master/logs:/usr/share/elasticsearch/logs \

-v /etc/localtime:/etc/localtime \

--name es-master elasticsearch:7.3.0

/etc/localtime:/etc/localtime:宿主機與容器時間同步。

從節點部署

創建配置文件和數據存放目錄

mkdir -p {/mnt/es1/slave1/data,/mnt/es1/slave1/logs}
vim /mnt/es1/slave1/conf/es-slave1.yml

 es-slave1.yml配置

# 集群名稱
cluster.name: es-cluster
# 節點名稱
node.name: es-slave1
# 是否可以成為master節點
node.master: true
# 是否允許該節點存儲數據,默認開啟
node.data: true
# 網絡綁定
network.host: 0.0.0.0
# 設置對外服務的http端口
http.port: 9201
# 設置節點間交互的tcp端口
transport.port: 9301
# 集群發現
discovery.seed_hosts:
 - 172.17.0.2:9300
 - 172.17.0.3:9301
# 手動指定可以成為 mater 的所有節點的 name 或者 ip,這些配置將會在第一次選舉中進行計算
cluster.initial_master_nodes:
 - 172.17.0.2
# 支持跨域訪問
http.cors.enabled: true
http.cors.allow-origin: "*"
# 安全認證
xpack.security.enabled: false
#http.cors.allow-headers: "Authorization"
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

pull鏡像時會有些慢,耐心等待! 

# 拉取鏡像,可以直接構建容器,忽略此步
docker pull elasticsearch:7.3.0

# 構建容器
docker run -d -e ES_JAVA_OPTS="-Xms256m -Xmx256m" \

-p 9201:9200 -p 9301:9300 \

-v /mnt/es1/slave1/conf/es-slave1.yml:/usr/share/elasticsearch/config/elasticsearch.yml \

-v /mnt/es1/slave1/data:/usr/share/elasticsearch/data \

-v /mnt/es1/slave1/logs:/usr/share/elasticsearch/logs \

-v /etc/localtime:/etc/localtime \

--name es-slave1 elasticsearch:7.3.0

修改配置重啟容器

# 查看主從容器IP
docker inspect es-master
docker inspect es-slave1

修改ES配置文件es-master.yml、es-slave1.yml中的discovery.seed_hostscluster.initial_master_nodes為對應的IP!重啟容器:

docker restart es-master

docker restart es-slave1

# 查看es日志

docker logs -f --tail 100f es-master

訪問http://IP:9200/_cat/nodes確認查看ES集群信息,可以看到有主從節點部署成功:

 節點部署常用API:

API 功能
http://IP:9200 查看ES版本信息
http://IP:9200/_cat/nodes

查看所有分片

http://IP:9200/_cat/indices 查看所有索引

Kibana7.3.0部署

創建Kibana配置文件

vim /mnt/kibana.yml
#
## ** THIS IS AN AUTO-GENERATED FILE **
##
#
## Default Kibana configuration for docker target
server.name: kibana
#配置Kibana的遠程訪問
server.host: "0.0.0.0"
#配置es訪問地址
elasticsearch.hosts: [ "http://127.0.0.1:9200" ]
#漢化界面
i18n.locale: "zh-CN"

#xpack.monitoring.ui.container.elasticsearch.enabled: true

查看es-master容器ID

docker ps|grep es-master

部署Kibana

注意將命令中的40eff5876ffd 修改成es-master容器ID,拉取鏡像,情耐性等待!

# 拉取鏡像,可以直接構建容器,忽略此步
docker pull docker.elastic.co/kibana/kibana:7.3.0

# 構建容器
## --network=container 表示共享容器網絡
docker run -it -d \

-v /mnt/kibana.yml:/usr/share/kibana/config/kibana.yml \

-v /etc/localtime:/etc/localtime \

-e ELASTICSEARCH_URL=http://172.17.0.2:9200 \

--network=container:40eff5876ffd \

--name kibana docker.elastic.co/kibana/kibana:7.3.0

 查看Kibana容器日志,看到如下圖所示日志則表示啟動成功

docker logs -f --tail 100f kibana

 訪問http://IP:5601,可能會出現503,等一會在訪問就OK了。可以訪問到Kibana控制臺則表示Kibana已安裝成功,并已于es-master建立連接。

Logstash7.3.1部署

編寫Logstash配置文件

vim /mnt/logstash-filebeat.conf

input {
  # 來源beats
  beats {
    # 端口
    port => "5044"
  }
}
# 分析、過濾插件,可以多個
filter {
  grok {
	# grok 表達式存放的地方
	patterns_dir => "/grok"
	
	# grok 表達式重寫
    # match => {"message" => "%{SYSLOGBASE} %{DATA:message}"}
	
	# 刪除掉原生 message字段
	overwrite => ["message"]

  # 定義自己的格式
	match => {
		"message" => "%{URIPATH:request} %{IP:clientip} %{NUMBER:response:int} \"%{WORD:sources}\" (?:%{URI:referrer}|-) \[%{GREEDYDATA:agent}\] \{%{GREEDYDATA:params}\}"
	}
  }
 # 查詢歸類插件
 geoip {
    source => "message"
  }
}
output {
	# 選擇elasticsearch
	elasticsearch {
		# es 集群
		hosts => ["http://172.17.0.2:9200"]
      #username => "root"
      #password => "123456"

		# 索引格式
		index => "omc-block-server-%{[@metadata][version]}-%{+YYYY.MM.dd}"

		# 設置為true表示如果你有一個自定義的模板叫logstash,那么將會用你自定義模板覆蓋默認模板logstash
		template_overwrite => true
	}
}

 部署Logstash

# 拉取鏡像,可以直接構建容器,忽略此步
docker pull logstash:7.3.1 

# 構建容器
# xpack.monitoring.enabled 打開X-Pack的安全和監視服務
# xpack.monitoring.elasticsearch.hosts 設置ES地址,172.17.0.2為es-master容器ip
# docker允許在容器啟動時執行一些命令,logsatsh -f 表示通過指定配置文件運行logstash,/usr/share/logstash/config/logstash-sample.conf是容器內的目錄文件

docker run -p 5044:5044 -d \

-v /mnt/logstash-filebeat.conf:/usr/share/logstash/config/logstash-sample.conf \

-v /etc/localtime:/etc/localtime \

-e elasticsearch.hosts=http://172.17.0.2:9200 \

-e xpack.monitoring.enabled=true \

-e xpack.monitoring.elasticsearch.hosts=http://172.17.0.2:9200 \

--name logstash logstash:7.3.1 -f /usr/share/logstash/config/logstash-sample.conf

這里需要注意es集群地址,這里我們只配置es-master的ip(172.17.0.2),詳細Logstash配置。 查看到如下日志則表示安裝成功: 

Filebeat7.3.0部署

Filebeat 并不是一個必須的組件,通過Logstash我們同樣也可以實現日志的搬運工作。

例如,實現將所有非“20”開頭的日志進行合并,可以使用如下Logstash配置:

input {
  # 來源beats
  beats {
    # 端口
    port => "5044"
  }
  file {
    type => "server-log"
    path => "/logs/*.log"
    start_position => "beginning"
    codec=>multiline{
        // 正則表達式,所有“20”前綴日志, 如果你的日志是以“[2020-06-15”這類前綴則,可以替換成"^["
        pattern => "^20"
        // 是否對正則規則取反
        negate => true
        // previous 表示合并到上一行,next 表示合并到下一行
        what => "previous"
    }

  }
}

注意,Filebeat必須與應用部署在同一服務器,這里應用采用docker部署,/mnt/omc-dev/logs應用日志文件的映射目錄,如果你也是通過docker進行服務部署,請記得通過【-v /mnt/omc-dev/logs:/應用工作/logs】日志文件映射出來哦!

創建Filebeat配置文件

## /mnt/omc-dev/logs 為應用日志目錄,必須將應用的部署目錄映射出來
mkdir -p {/mnt/omc-dev/logs,/mnt/filebeat/logs,/mnt/filebeat/data}
vim /mnt/filebeat/filebeat.yml
filebeat.inputs:
- type: log
 enabled: true
 paths:
  # 當前目錄下的所有.log文件
  - /home/project/spring-boot-elasticsearch/logs/*.log
 multiline.pattern: '^20'
 multiline.negate: true
 multiline.match: previous

logging.level: debug

filebeat.config.modules:
 path: ${path.config}/modules.d/*.yml
 reload.enabled: false

setup.template.settings:
 index.number_of_shards: 1

setup.dashboards.enabled: false

setup.kibana:
 host: "http://172.17.0.2:5601"

# 不直接傳輸至ES
#output.elasticsearch:
# hosts: ["http://es-master:9200"]
# index: "filebeat-%{[beat.version]}-%{+yyyy.MM.dd}"

output.logstash:
 hosts: ["172.17.0.5:5044"]

#scan_frequency: 1s
close_inactive: 12h
backoff: 1s
max_backoff: 1s
backoff_factor: 1
flush.timeout: 1s

processors:
 - add_host_metadata: ~
 - add_cloud_metadata: ~

注意修改Logstash IP和端口。

# 拉取鏡像,可以直接構建容器,忽略此步
docker pull docker.elastic.co/beats/filebeat:7.3.0

# 構建容器
## --link logstash 將指定容器連接到當前連接,可以設置別名,避免ip方式導致的容器重啟動態改變的無法連接情況,logstash 為容器名
docker run -d -v /mnt/filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml \

-v /mnt/omc-dev/logs:/home/project/spring-boot-elasticsearch/logs \

-v /mnt/filebeat/logs:/usr/share/filebeat/logs \

-v /mnt/filebeat/data:/usr/share/filebeat/data \

-v /etc/localtime:/etc/localtime \

--link logstash --name filebeat docker.elastic.co/beats/filebeat:7.3.0

查看日志,我們在配置文件中將Filebeat的日志級別配置成了debug,因此會開到所有收錄到的信息

docker logs -f --tail 100f filebeat

可以看到,通過查詢ES索引,多出了三條索引,通過我們配置的按天進行索引分割,因為我這個環境已經跑了三天了,所以存在三個omc服務的索引(omc 是一個定時任務的服務,你也可以寫一個簡單的定時任務來進行測試)。

 接下來我們創建一個Kibana索引模式,并進行日志查詢:

 

索引創建完成,到Discover視圖就可以通過索引模式查詢日志了。

文章到這里就結束了,如果你還有別的服務需要引入的話,只需要將日志掛載到指定目錄就行了,當然如果服務是部署在其他服務器上,則需要在服務器上部署Filebeat,并且要保證服務器之間網絡互通哦~~

最后,在這里推薦一個開源ELK自動化Docker部署項目:https://github.com/deviantony/docker-elk.git

--------------------------------------------------------

2020.6.28更新

最近發生了一起Logstash導致的物理內存暴漲問題。

簡單闡述一下主要問題:

目前單服務單日日志量在2.2GB左右,由于早期沒有限制Logstash內存,導致大量數據上來時,Logstash瘋狂占用內存與IO。

隨著近日,在同一服務器上面應用服務流量上漲,最終導致內存不足,出現OutOfMemoryError問題。

隨后,通過設置優化JVM內存(具體我就不說了,網上一大把),并添加上Logstash響應內存配置,得以解決早前的遺留問題。

最后,將Logstash 添加到Kibana進行監控(當然你還可以將Logstash日志配置到ES上去):

https://blog.csdn.net/QiaoRui_/article/details/97667293

標簽:亳州 澳門 拉薩 齊齊哈爾 衡陽 烏海 嘉興 運城

巨人網絡通訊聲明:本文標題《Docker部署ELK7.3.0日志收集服務最佳實踐》,本文關鍵詞  Docker,部署,ELK7.3.0,日志,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Docker部署ELK7.3.0日志收集服務最佳實踐》相關的同類信息!
  • 本頁收集關于Docker部署ELK7.3.0日志收集服務最佳實踐的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲大片免费看| 精品国产一区二区三区忘忧草| 免费看精品久久片| 欧美aa在线视频| 麻豆国产一区二区| 久久精品久久综合| 久久99久久久欧美国产| 乱中年女人伦av一区二区| 美日韩一区二区三区| 国产精品一区一区| 97se亚洲国产综合自在线| 一本大道av伊人久久综合| 在线欧美小视频| 91精品久久久久久蜜臀| 久久综合色鬼综合色| 国产精品人妖ts系列视频| 一区二区三区在线观看动漫| 亚洲成人av一区二区| 免费在线观看不卡| 91黄色在线观看| 欧美自拍丝袜亚洲| 日韩精品一区二区三区在线观看 | 中文字幕第一区综合| 成人免费一区二区三区在线观看| 一区二区三区国产豹纹内裤在线| 日韩精品欧美精品| 国产一区二区h| 欧美午夜精品久久久| 26uuu国产在线精品一区二区| 国产精品久久二区二区| 午夜精品爽啪视频| 成人一区在线看| 欧美一区二区三区男人的天堂| 国产精品入口麻豆原神| 免费在线观看成人| 欧美亚洲一区二区在线观看| 久久免费看少妇高潮| 性欧美大战久久久久久久久| 国产成人在线色| 欧美夫妻性生活| 最新国产成人在线观看| 国产毛片精品视频| 日韩一区二区在线免费观看| 国产精品久久久久久亚洲毛片 | 日本道色综合久久| 久久先锋影音av鲁色资源| 亚洲午夜精品网| av不卡一区二区三区| 精品久久久久久久久久久久久久久| 夜夜精品视频一区二区| 盗摄精品av一区二区三区| 久久综合久久综合久久综合| 亚洲va在线va天堂| 91高清视频在线| 中文字幕视频一区二区三区久| 美日韩一区二区三区| 欧美日韩精品一区二区三区四区| 亚洲欧美日韩在线不卡| 成人美女视频在线看| 精品乱人伦小说| 久久电影网站中文字幕 | 国产亚洲一二三区| 国产真实乱偷精品视频免| 欧美一区二区在线观看| 奇米亚洲午夜久久精品| 56国语精品自产拍在线观看| 夜夜精品浪潮av一区二区三区| 91免费版在线| 亚洲精品中文在线观看| 色综合久久久久综合99| 亚洲欧美日韩在线不卡| 99久久精品国产毛片| 亚洲男人天堂av网| 日本久久一区二区| 亚洲小少妇裸体bbw| 欧美影视一区二区三区| 亚洲国产精品久久久男人的天堂| 欧美最猛性xxxxx直播| 亚洲一本大道在线| 欧美久久久久免费| 日本不卡视频在线观看| 亚洲精品在线免费观看视频| 国产99一区视频免费| 国产精品日韩精品欧美在线| 91麻豆精品视频| 五月婷婷综合在线| 久久久综合视频| 99精品欧美一区二区三区小说| 亚洲视频一区在线| 欧美少妇xxx| 国产精品自在欧美一区| 136国产福利精品导航| 欧美视频一区二区| 国内精品视频666| 亚洲免费观看视频| 在线成人午夜影院| 成人高清免费观看| 性感美女久久精品| 国产日本一区二区| 欧美日韩成人综合天天影院| 国产在线精品一区二区不卡了 | www一区二区| 色偷偷久久人人79超碰人人澡| 五月天久久比比资源色| 欧美国产日韩一二三区| 欧美精品第一页| 成人免费视频视频在线观看免费| 亚洲午夜久久久久中文字幕久| 久久女同精品一区二区| 欧美喷潮久久久xxxxx| 成人免费av在线| 蜜臀va亚洲va欧美va天堂| 最新成人av在线| 欧美精品一区二区三| 欧洲精品视频在线观看| 国产高清不卡一区二区| 毛片av一区二区| 亚洲三级在线免费观看| 久久女同互慰一区二区三区| 欧美日韩一区二区电影| 91啪在线观看| 国产高清精品网站| 免费成人美女在线观看| 亚洲国产欧美一区二区三区丁香婷| 国产亚洲婷婷免费| 日韩视频在线观看一区二区| 欧美三区在线视频| 99精品国产99久久久久久白柏| 国产一区二区免费看| 精品无码三级在线观看视频 | www欧美成人18+| 这里只有精品99re| 欧美日韩一卡二卡三卡| 91丨国产丨九色丨pron| 成人av在线一区二区三区| 国产成人免费在线| 国产成人av一区二区三区在线观看| 免费观看一级特黄欧美大片| 亚洲一区二区欧美激情| 亚洲一二三四区| 亚洲国产日韩a在线播放性色| 亚洲午夜精品在线| 亚洲成人先锋电影| 午夜欧美电影在线观看| 午夜电影一区二区| 日本中文字幕一区二区有限公司| 亚洲制服丝袜av| 亚洲成人av一区二区| 日韩精品91亚洲二区在线观看| 亚洲成a人片综合在线| 香蕉影视欧美成人| 日本欧美肥老太交大片| 欧美aaa在线| 精品一区二区三区在线观看| 国产麻豆91精品| www.在线欧美| 91免费视频观看| 欧美日韩国产大片| 日韩精品一区二区三区视频播放| 精品少妇一区二区三区在线播放 | 欧美国产综合一区二区| 国产精品久久久久久久蜜臀 | 99精品黄色片免费大全| 色天使久久综合网天天| 欧美日韩电影在线播放| 欧美videos大乳护士334| 国产精品水嫩水嫩| 亚洲国产精品一区二区久久恐怖片| 午夜视频在线观看一区二区三区| 免费在线观看视频一区| 国产精品一区二区在线观看网站| 成人app在线观看| 欧美日韩一区不卡| 国产日韩影视精品| 一区二区在线观看av| 石原莉奈在线亚洲二区| 成人午夜电影久久影院| 在线观看成人小视频| 日韩你懂的电影在线观看| 国产精品国产精品国产专区不蜜| 亚洲成年人影院| 国产aⅴ综合色| 欧美精选一区二区| 国产精品成人一区二区三区夜夜夜| 亚洲国产cao| 不卡一二三区首页| 欧美一区二区三区小说| 亚洲免费资源在线播放| 激情综合五月天| 欧美日韩国产综合草草| 国产精品久久久久久久久久久免费看| 午夜精品久久久久久久99樱桃 | 曰韩精品一区二区| 国产乱码字幕精品高清av | 欧美喷潮久久久xxxxx| 国产网红主播福利一区二区| 日韩不卡一区二区| 欧美怡红院视频| 亚洲美女偷拍久久| 成人午夜伦理影院|