最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker 安裝 LogStash的詳細過程

 更新時間:2024年03月20日 16:21:36   作者:花傷情猶在  
Logstash,作為Elastic Stack家族中的核心成員之一,是一個功能強大的開源數(shù)據(jù)收集引擎,在本文中,我們將詳細介紹如何借助Docker容器技術快速安裝配置Logstash,以實現(xiàn)日志及各類事件數(shù)據(jù)的無縫集成與實時處理,感興趣的朋友一起看看吧

關于LogStash

Logstash,作為Elastic Stack家族中的核心成員之一,是一個功能強大的開源數(shù)據(jù)收集引擎。它專長于從各種來源動態(tài)地獲取、解析、轉換和豐富數(shù)據(jù),并將這些結構化或非結構化的數(shù)據(jù)高效地傳輸?shù)街T如Elasticsearch等存儲系統(tǒng)中進行集中分析和可視化展現(xiàn)。在本文中,我們將詳細介紹如何借助Docker容器技術快速安裝配置Logstash,以實現(xiàn)日志及各類事件數(shù)據(jù)的無縫集成與實時處理。

拉取鏡像并拷貝配置

docker run -d --name logstash logstash:7.14.1
# 拷貝數(shù)據(jù)
docker cp logstash:/usr/share/logstash/config ./config
docker cp logstash:/usr/share/logstash/data ./data
docker cp logstash:/usr/share/logstash/pipeline ./pipeline
#文件夾賦權
chmod -R 777 ./config ./data ./pipeline

修改相應配置文件

修改config 下的 logstash.yml 文件,主要修改 es 的地址

http.host: "0.0.0.0"
xpack.monitoring.elasticsearch.hosts: [ "http://elasticsearch:9200" ]
  • http.host:當設置為 “0.0.0.0” 時,意味著服務將在所有可用網絡接口上監(jiān)聽HTTP請求,允許任何IP地址的客戶端連接。
  • xpack.monitoring.elasticsearch.hosts:指向Elasticsearch服務的URL ->http://elasticsearch:9200,但這里沒有使用具體的IP地址,而是用了一個名為 elasticsearch 的服務名或容器名。

elasticsearch:9200 就是通過內部DNS解析機制引用在同一網絡命名空間下的Elasticsearch服務容器的9200端口,這意味著Logstash或相關組件收集的監(jiān)控信息將被自動發(fā)送到關聯(lián)的Elasticsearch容器進行存儲和分析。

安全考慮
如果為了安全考慮給ElasticSearch設置了訪問認證,則需要配置用戶名與密碼,需要新增2條認證配置:

xpack.monitoring.elasticsearch.username: "elastic"
xpack.monitoring.elasticsearch.password: "123456"

最終示例:

http.host: "0.0.0.0"
xpack.monitoring.elasticsearch.hosts: [ "http://elasticsearch:9200" ]
xpack.monitoring.elasticsearch.username: "elastic"
xpack.monitoring.elasticsearch.password: "123456"

修改config下的jvm.options

Elasticsearch、Logstash或其他使用Java虛擬機(JVM)的應用程序中,jvm.options 文件是用來配置JVM運行時參數(shù)的重要文件。當你需要調整JVM相關的設置,比如堆內存大小、垃圾回收策略、線程數(shù)量等時,就需要修改這個文件。

# 增加JVM堆內存大小
-Xms512m
-Xmx512m

修改pipeline 下的 logstash.conf

input {
  tcp {
    mode => "server"
    host => "0.0.0.0"
    port => 5044
    codec => json_lines
  }
}
output {
  elasticsearch {
      hosts  => ["http://124.221.147.235:9200"]
      user => elastic
      password => 123456
      index  => "logs-%{+YYYY.MM}"
      codec  => "json"
  }
  stdout {
    codec => rubydebug
  }
}

input部分:

  • 使用TCP輸入插件(tcp)創(chuàng)建一個服務器監(jiān)聽器,等待來自客戶端的連接。
    • mode => "server" 指定為服務器模式,接受來自其他服務或應用的日志數(shù)據(jù)。
    • host => "0.0.0.0" 表示在所有網絡接口上監(jiān)聽連接請求。
    • port => 5044 設置了監(jiān)聽端口為5044。
    • codec => json_lines 指定了編解碼器類型,這意味著每個TCP消息應該包含一個或多條JSON格式的數(shù)據(jù),每行一條JSON記錄。

output部分:

  • 使用Elasticsearch輸出插件(elasticsearch)將處理后的日志事件發(fā)送到Elasticsearch集群。
    • hosts => "127.0.0.1:9200" 設置了Elasticsearch集群的地址與端口,這里指本地主機上的默認Elasticsearch實例。
    • index => "%{[spring.application.name]}-%{+YYYY.MM.dd}" 定義了索引名稱模板。該模板會根據(jù)事件中的字段動態(tài)生成索引名,其中:
      • %{[spring.application.name]} 是從日志事件中提取的Spring Boot應用的名字作為索引前綴。
      • %{+YYYY.MM.dd} 是基于當前日期時間動態(tài)生成的索引后綴,每天都會創(chuàng)建一個新的索引以存儲當天的日志數(shù)據(jù)。

這樣配置后,Logstash將作為一個TCP日志收集服務器運行,并且能夠接收JSON格式的日志數(shù)據(jù),然后將其按照指定的規(guī)則寫入到Elasticsearch集群中相應的索引里,便于后續(xù)進行搜索、分析和可視化展示。

啟動容器并掛載

#注意先刪除之前的容器
docker rm -f logstash
# 啟動容器并掛載
docker run --name logstash \
-p 5044:5044 \
-p 9600:9600 \
--privileged=true \
-e ES_JAVA_OPTS="-Duser.timezone=Asia/Shanghai" \
-v /mydata/logstash/pipeline/logstash.conf:/usr/share/logstash/pipeline/logstash.conf \
-v /mydata/logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml \
-d logstash:7.14.2

查看運行情況

docker logs -f logstash

SpringBoot 整合 ELK

引入Maven依賴

<!-- logstash -->
<dependency>
  <groupId>net.logstash.logback</groupId>
  <artifactId>logstash-logback-encoder</artifactId>
  version>7.1.1</version>
</dependency>

修改項目內的 logback.xml 文件 增加 logstash 配置

    <springProperty scope="context" name="appName" source="spring.application.name"/>
    <!--輸出到logstash的appender-->
    <appender name="logstash" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
        <!--可以訪問的logstash日志收集端口-->
        <destination>127.0.0.1:5044</destination>
        <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder">
            <customFields>{"spring.application.name":"${appName}"}</customFields>
        </encoder>
    </appender>
    <root level="info">
        <appender-ref ref="logstash"/>
    </root>

啟動項目查看是否成功推送日志

到此這篇關于Docker 安裝 LogStash的文章就介紹到這了,更多相關Docker 安裝 LogStash內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • docker端口映射的實現(xiàn)示例

    docker端口映射的實現(xiàn)示例

    Docker 端口映射允許我們將容器內部的服務綁定到宿主機上的一個或多個端口,本文主要介紹了docker端口映射的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • Docker安裝Jenkins-2.249.3-1.1的詳細過程

    Docker安裝Jenkins-2.249.3-1.1的詳細過程

    這篇文章主要介紹了Docker安裝Jenkins-2.249.3-1.1,通過編寫docke安裝腳本來實現(xiàn)安裝目的,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-10-10
  • docker圖形化工具portainer詳解

    docker圖形化工具portainer詳解

    這篇文章主要介紹了docker圖形化工具portainer的相關知識,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借價值,需要的朋友可以參考下
    2024-01-01
  • Docker中Nginx反向代理的實現(xiàn)步驟

    Docker中Nginx反向代理的實現(xiàn)步驟

    為了安全考慮,我們一般會設置反向代理,用來屏蔽應用程序真實的IP和端口號,本文主要介紹了Docker中Nginx反向代理的實現(xiàn)步驟,具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • Docker 和 Docker Compose 的關系對比分析

    Docker 和 Docker Compose 的關系對比分析

    Docker 和 Docker Compose 是 容器化 相關的工具,Docker Compose 是 Docker 的一個補充工具,用于管理 多容器應用,本文介紹Docker 和 Docker Compose 的關系對比分析,感興趣的朋友一起看看吧
    2025-03-03
  • docker-compose?down命令使用和注意事項詳解

    docker-compose?down命令使用和注意事項詳解

    Docker Compose是一個用于定義和運行多容器Docker應用程序的工具,這篇文章主要介紹了docker-compose?down命令使用和注意事項的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-07-07
  • k8s手動拉取docker鏡像的方法示例

    k8s手動拉取docker鏡像的方法示例

    docker是一種便捷的容器化解決方案,它可以通過拉取鏡像的方式輕松地部署和管理應用程序,本文主要介紹了k8s手動拉取docker鏡像的方法示例,感興趣的可以了解一下
    2024-02-02
  • docker?update?命令及用法詳解

    docker?update?命令及用法詳解

    docker?update?命令動態(tài)更新容器配置,您可以使用此命令來防止容器消耗?Docker?主機的過多資源,本文給大家介紹docker?update?命令及用法,感興趣的朋友一起看看吧
    2023-08-08
  • 優(yōu)化Docker容器啟動時間的常見方案

    優(yōu)化Docker容器啟動時間的常見方案

    優(yōu)化 Docker 容器啟動時間,尤其在大規(guī)模部署、CI/CD 或微服務架構中非常關鍵,啟動慢會影響響應時間、彈性擴縮容和用戶體驗,以下是從鏡像構建、容器運行、依賴管理等多個方面整理的 容器啟動加速方案,需要的朋友可以參考下
    2025-06-06
  • 加速拉取MySQL Docker鏡像的兩種方法

    加速拉取MySQL Docker鏡像的兩種方法

    在使用 Docker 部署 MySQL 時,許多開發(fā)者會遇到拉取鏡像速度緩慢的問題,這主要是由于 Docker Hub 的服務器在國外,網絡延遲較高,幸運的是,我們可以通過配置國內鏡像加速器或使用國內鏡像倉庫的代理地址來解決這一問題,本文將詳細介紹這兩種方法,需要的朋友可以參考下
    2025-07-07

最新評論

枣强县| 宜宾县| 大庆市| 简阳市| 赤壁市| 泰兴市| 滦平县| 平原县| 高州市| 东光县| 扶余县| 新建县| 黔西县| 都昌县| 武平县| 安福县| 奉新县| 固阳县| 斗六市| 延川县| 美姑县| 宜宾县| 桐城市| 辉南县| 克东县| 石嘴山市| 石楼县| 桐梓县| 得荣县| 长汀县| 凤翔县| 钟祥市| 上犹县| 延长县| 宁河县| 千阳县| 德化县| 岚皋县| 元氏县| 大厂| 清丰县|