十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
资源分配:
node100 192.168.209.100 docker、nginx、es、kibana、logstash
目录划分:
/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元起,快前往官网查看详情吧