日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ELK7.8.1的Docker搭建过程

發(fā)布時間:2023/11/30 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ELK7.8.1的Docker搭建过程 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在linux下首先在目錄準備文件

首先說明,我的電腦宿主機的IP是192.168.1.5

為es準備文件

mkdir -p /opt/elk7/es cd /opt/elk7/es #創(chuàng)建對應的文件夾 數(shù)據(jù) / 日志 / 配置 mkdir conf data logs #授權(quán) chmod 777 -R conf data logs

然后進入到/opt/elk7/es/conf下

vim elasticsearch.yml

以下是elasticsearch.yml 的內(nèi)容

cluster.name: "docker-cluster" network.host: 0.0.0.0 # 訪問ID限定,0.0.0.0為不限制,生產(chǎn)環(huán)境請設置為固定IP transport.host: 0.0.0.0 # elasticsearch節(jié)點名稱 #node.name: node-1 # elasticsearch節(jié)點信息 #cluster.initial_master_nodes: ["node-1"] # 下面的配置是關閉跨域驗證 http.cors.enabled: true http.cors.allow-origin: "*"

?

為kibana準備宿主機文件

mkdir -p /opt/elk7/kibana cd /opt/elk7/kibana #創(chuàng)建對應的文件夾 數(shù)據(jù) / 日志 / 配置 mkdir conf data logs #授權(quán) chmod 777 -R conf data logs cd logs #創(chuàng)建日志文件 touch kibana.log #授權(quán) chmod 777 kibana.log

然后進入到 /opt/elk7/kibana/conf

vim kibana.yml

以下是kibana.yml內(nèi)容

elasticsearch.hosts: ['http://192.168.1.5:9200'] #發(fā)給es的查詢記錄 需要日志等級是verbose=true elasticsearch.logQueries: true ##連接es的超時時間 單位毫秒 elasticsearch.pingTimeout: 30000 elasticsearch.requestTimeout: 30000 ##是否只能使用server.host訪問服務 elasticsearch.preserveHost: true ##首頁對應的appid kibana.defaultAppId: "home" kibana.index: '.kibana' ##存儲日志的文件設置 logging.dest: /usr/share/kibana/logs/kibana.log logging.json: true ##是否只輸出錯誤日志信息 logging.quiet: false logging.rotate:enabled: true#日志文件最大大小everyBytes: 10485760#保留的日志文件個數(shù)keepFiles: 7 logging.timezone: UTC logging.verbose: true monitoring.kibana.collection.enabled: true xpack.monitoring.collection.enabled: true #存儲持久化數(shù)據(jù)的位置 path.data: /usr/share/kibana/data #訪問kibana的地址和端口配置 一般使用可訪問的服務器地址即可 server.host: "0.0.0.0" #端口默認5601 server.port: 5601 server.name: "kibana" #配置頁面語言 i18n.locale: zh-CN

以下是Docker啟動命令

#es docker run --name elasticsearch -p 9200:9200 -p 9300:9300 --privileged=true --log-driver=journald -e "discovery.type=single-node" -e "ES_JAVA_OPTS=-Xmx8g -Xms8g" -v /opt/elk7/es/data:/usr/share/elasticsearch/data -v /opt/elk7/es/conf/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml --user=root --restart=on-failure -d elasticsearch:7.8.1#kibana docker run -it --name kibana --link elasticsearch -p 5601:5601 \ --privileged=true \ -v /opt/elk7/kibana/logs/kibana.log:/usr/share/kibana/logs/kibana.log \ -v /opt/elk7/kibana/data:/usr/share/kibana/data \ -v /opt/elk7/kibana/conf/kibana.yml:/usr/share/kibana/config/kibana.yml \ -d kibana:7.8.1

然后訪問地址:http://192.168.1.5:5601/

?

?

如果在訪問后發(fā)現(xiàn)了以下報錯server is not ready yet

?可以進入到docker內(nèi)部利用curl判斷 在kibana下能否curl http://192.168.1.5:9200 返回內(nèi)容,如果不能,設置下防火墻,設置方式如下

nmcli connection modify docker0 connection.zone trustedsystemctl stop NetworkManager.servicefirewall-cmd --permanent --zone=trusted --change-interface=docker0systemctl start NetworkManager.servicenmcli connection modify docker0 connection.zone trustedsystemctl restart docker.service

?

?

下面開始研究 logstash,由于直接從spring boot到logstash可能會造成瓶頸,所以一般采用kafka作為消息隊列來承接日志信息

安裝zookeeper

docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper

安裝kafka

docker run -d --name kafka -p 9092:9092 --link zookeeper -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.5:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka

–link 用于容器直接的互通。
-e KAFKA_BROKER_ID=0 一個 kafka節(jié)點 就是一個 broker。一個集群由多個 broker 組成。一個 broker可以容納多個 topic
-e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 配置zookeeper管理kafka的路徑
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.5:9092 把kafka的地址端口注冊給zookeeper,若遠程訪問要改成外網(wǎng)IP,千萬注意是外網(wǎng)IP,很多文章只說是宿主機IP, 演示例子上寫的是內(nèi)網(wǎng)IP,很容易被誤導
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 配置kafka的監(jiān)聽端口
-v /etc/localtime:/etc/localtime 容器時間同步虛擬機的時間?

?

測試
創(chuàng)建topic
進入kafka容器

docker exec -it kafka /bin/bash


?
進入目錄

?cd opt/kafka_2.12-2.4.0/


創(chuàng)建測試topic

./bin/kafka-topics.sh --create --bootstrap-server localhost:9092 ?--zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic test-topic


生產(chǎn)者發(fā)布

./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test-topic


本地消費者訂閱
?

?./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 ?--topic test-topic


java程序遠程消費者客戶端訂閱

?

?

總結(jié)

以上是生活随笔為你收集整理的ELK7.8.1的Docker搭建过程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。