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

主頁 > 知識庫 > Docker-compose部署ELK的示例代碼

Docker-compose部署ELK的示例代碼

熱門標簽:百度地圖標注公司位置要多少錢 虛假地圖標注 400電話號碼辦理多少錢 濮陽好的聯通400電話申請 靈圖uu電子寵物店地圖標注 地圖標注黃河的位置 承德地圖標注公司 地圖標注如何改成微信號 山東企業外呼系統公司

環境

  1. 主機IP 192.168.0.9
  2. Docker version 19.03.2
  3. docker-compose version 1.24.0-rc1
  4. elasticsearch version 6.6.1
  5. kibana version 6.6.1
  6. logstash version 6.6.1

一、ELK-dockerfile文件編寫及配置文件

● elasticsearch

1、elasticsearch-dockerfile

FROM centos:latest
ADD elasticsearch-6.6.1.tar.gz /usr/local/
COPY elasticsearch.yml /usr/local/elasticsearch-6.6.1/config/
COPY jdk1.8 /usr/local/
ENV JAVA_HOME=/usr/local/jdk1.8
ENV CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
ENV PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
RUN groupadd elsearch && \

useradd elsearch -g elsearch -p elasticsearch && \

chown -R elsearch:elsearch /usr/local/elasticsearch-6.6.1 && \

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \

echo "Asia/shanghai" > /etc/timezone && \

yum install which -y && \

mkdir /opt/data && \

mkdir /opt/logs
EXPOSE 9200 9300
#主要是切換到elsearch用戶啟動es
USER elsearch
WORKDIR /usr/local/elasticsearch-6.6.1/bin/
ENTRYPOINT ["./elasticsearch"]

2、elasticsearch.yml

[root@localhost elasticsearch]# egrep "^[^#]" elasticsearch.yml 
cluster.name: es-cluster
node.name: node-1
path.data: /opt/data
path.logs: /opt/logs
network.host: 0.0.0.0
http.port: 9200
cluster.routing.allocation.disk.threshold_enabled: true
cluster.routing.allocation.disk.watermark.low: 94%
cluster.routing.allocation.disk.watermark.high: 96%
cluster.routing.allocation.disk.watermark.flood_stage: 98%
discovery.zen.minimum_master_nodes: 1

● logstash

1、logstash-dockerfile

FROM centos:latest
ADD logstash-6.6.1.tar.gz /usr/local/
COPY logstash.yml /usr/local/logstash-6.6.1/config/
COPY logstash.conf /usr/local/logstash-6.6.1/config/
COPY jdk1.8 /usr/local/
COPY start.sh /start.sh
ENV JAVA_HOME=/usr/local/jdk1.8
ENV CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
ENV PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
RUN mkdir /opt/data && \

mkdir /opt/logs && \

chmod +x /start.sh
ENTRYPOINT ["/start.sh"]

2、logstash-start.sh

#!/bin/bash
/usr/local/logstash-6.6.1/bin/logstash -f /usr/local/logstash-6.6.1/config/logstash.conf

3、logstash.yml

[root@localhost logstash]# egrep "^[^#]" logstash.yml 
path.data: /opt/data
path.logs: /opt/logs
pipeline.batch.size: 200

4、logstash.conf

input {
 file {
  path => "/usr/local/nginx/logs/access.log"
  type => "nginx"
  start_position => "beginning"
  sincedb_path => "/dev/null"
 }
 file {
  path => "/var/log/secure"
  type => "secure"
  start_position => "beginning"
  sincedb_path => "/dev/null"
 }
}
#詳細說明可以查看我之前的博客
filter {
  grok {
    match => {
      "message" => '(?<clientip>[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}) - - (?<requesttime>\[[0-9]{1,2}\/[A-z]+\/[0-9]{4}\:[0-9]{2}\:[0-9]{2}\:[0-9]{2} \+[0-9]*\]) "(?<requesttype>[A-Z]+) (?<requesturl>[^ ]+) (?<requestv>HTTP/\d\.\d)" (?<requestnode>[0-9]+) (?<requestsize>[0-9]+) "(?<content>[^ ]|(http|https)://[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\/)" "(?<ua>(a-Z|0-9| |.)+)"'
    }
     remove_field => ["message","log","beat","offset","prospector","host","@version"]
  }
}
#output指向es容器
output {
 if [type] == "nginx" {
 elasticsearch {
  hosts => ["es:9200"]
  index => "nginx-%{+YYYY.MM.dd}"
    }
   }
 else if [type] == "secure" {
  elasticsearch {
  hosts => ["es:9200"]
  index => "secure-%{+YYYY.MM.dd}"
    }
   }
 }

● kibana

1、kibana-dockerfile

FROM centos:latest
ADD kibana-6.6.1-linux-x86_64.tar.gz  /usr/local/
COPY kibana.yml /usr/local/kibana-6.6.1-linux-x86_64/config/
COPY start.sh /start.sh
RUN chmod +x /start.sh
EXPOSE 5601
ENTRYPOINT ["/start.sh"]

2、kibana.yml

[root@localhost kibana]# egrep "^[^#]" kibana.yml 
server.port: 5601
server.host: "0.0.0.0"
#指向es容器的9200端口
elasticsearch.hosts: ["http://es:9200"]

3、kibana-start.sh

#!/bin/bash
/usr/local/kibana-6.6.1-linux-x86_64/bin/kibana

二、docker-compose,yml文件編寫

[root@localhost elk_dockerfile]# cat docker-compose.yml 

version: '3.7'
services:
 elasticsearch:
  image: elasticsearch:elk
  container_name: es
  networks:
   - elk
  volumes:
   - /opt/data:/opt/data
   - /opt/logs:/opt/logs
  expose:
   - 9200
   - 9300
  restart: always
  depends_on:
   - logstash
   - kibana
 logstash:
  image: logstash:elk
  container_name: logstash
  networks:
   - elk
  volumes:
   - /opt/logstash/data/:/op/data
   - /opt/logstash/logs/:/opt/logs
   - /opt/elk/elk_dockerfile/logstash/logstash.conf:/usr/local/logstash-6.6.1/config/logstash.conf
   - /usr/local/nginx/logs:/usr/local/nginx/logs
   - /var/log/secure:/var/log/secure
  restart: always
 kibana:
  image: kibana:elk
  container_name: kibana
  ports:
   - 5601:5601
  networks:
   - elk
  volumes:
   - /opt/elk/elk_dockerfile/kibana/kibana.yml:/usr/local/kibana-6.6.1-linux-x86_64/config/kibana.yml
networks:
 elk:

compose文件version版本指向

三、訪問界面

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:德宏 泰安 樂山 福州 上海 淮安 安康 鷹潭

巨人網絡通訊聲明:本文標題《Docker-compose部署ELK的示例代碼》,本文關鍵詞  Docker-compose,部署,ELK,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Docker-compose部署ELK的示例代碼》相關的同類信息!
  • 本頁收集關于Docker-compose部署ELK的示例代碼的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 望奎县| 萝北县| 宜良县| 寿阳县| 思茅市| 桐城市| 聂荣县| 紫金县| 始兴县| 溆浦县| 墨玉县| 德安县| 浪卡子县| 鹤壁市| 巧家县| 德惠市| 荆州市| 涪陵区| 化隆| 金寨县| 合水县| 沁水县| 新源县| 宜春市| 隆回县| 深圳市| 桑日县| 红原县| 萍乡市| 南昌县| 肥乡县| 沁阳市| 耿马| 义马市| 特克斯县| 仁化县| 双峰县| 海南省| 安远县| 隆昌县| 桐庐县|