docker-compos部署ELK-创新互联

资源分配:
node100        192.168.209.100    docker、nginx、es、kibana、logstash

创新互联专注于企业成都全网营销、网站重做改版、五寨网站定制设计、自适应品牌网站建设、H5场景定制成都商城网站开发、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为五寨等各大城市提供网站开发制作服务。

目录划分:

/data/elk/es
——/data/elk/es/conf
——/data/elk/es/data
——/data/elk/es/logs

/data/elk/kibana
——/data/elk/kibana/conf

/data/elk/logstash
——/data/elk/logstash/conf
——/data/elk/logstash/data/nginx

配置:
1、关闭系统防火墙

2、安装docker

3、安装nginx

4、安装ELK
docker-compose文件

# docker-compose-elk.yml
version: "3"
services:
  es:
    container_name: es
    hostname: es
    image: elasticsearch:7.17.1
    restart: always
    networks:
      - elk
    user: root
    ports:
      - 9200:9200
      - 9300:9300
    volumes:
      - /data/elk/es/conf/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
      - /data/elk/es/data:/usr/share/elasticsearch/data
      - /data/elk/es/logs:/usr/share/elasticsearch/logs
    environment:
      - "TZ=Asia/Shanghai"

  kibana:
    container_name: kibana
    hostname: kibana
    image: kibana:7.17.1
    restart: always
    networks:
      - elk
    ports:
      - 5601:5601
    volumes:
      - /data/elk/kibana/conf/kibana.yml:/usr/share/kibana/config/kibana.yml
    environment:
      - elasticsearch.hosts=http://es:9200
      - "TZ=Asia/Shanghai"
    depends_on:
      - es

  logstash:
    container_name: logstash
    hostname: logstash
    image: logstash:7.17.1
    command: logstash -f ./conf/logstash.yml
    restart: always
    networks:
      - elk
    user: root
    volumes:
      - /data/elk/logstash/conf/logstash.yml:/usr/share/logstash/conf/logstash.yml
      # 测试用nginx access.log日志 
      - /data/elk/logstash/data/nginx/access.log:/var/log/nginx/access.log
    environment:
      - elasticsearch.hosts=http://es:9200
      - xpack.monitoring.elasticsearch.hosts=http://es:9200
      - "TZ=Asia/Shanghai"
    ports:
      - 5044:5044
    depends_on:
      - es
networks:
  elk:
    ipam:
      driver: default
      config:
        - subnet: 192.168.1.0/24

配置文件

# elasticsearch.yml
cluster.name: es
node.name: node100
network.host: 0.0.0.0
http.port: 9200
cluster.initial_master_nodes: ["node100"]

# kibana.yml
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://es:9200"]
i18n.locale: "zh-CN"

# logstash.yml
input {
    file {
        path =>"/var/log/nginx/access.log"
    }
}
output {
    elasticsearch { 
        hosts =>["es:9200"] 
    }
}

5、核查结果
1)核查es
可在edge浏览器安装es-client插件,通过插件核查es状态和数据。
2)核查kibana
直接浏览器访问url http://192.168.209.100:5601即可。
3)核查logstash
docker logs -f logstash
4)核查nginx access.log导入情况
a、浏览器访问kibana url
b、依次点击 菜单——Stack Management——索引管理
核查看 索引 下面是否有数据,如下图这样。

c、依次点击 菜单——Discover——创建索引模式
参考下图操作创建索引模式

d、访问次nginx服务,让nginx access.log有数据
e、重新进入 菜单——Discover,如工作正常即可看到刚访问操作 

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


本文题目:docker-compos部署ELK-创新互联
浏览路径:http://scyanting.com/article/dosijo.html