docker部署EFK
时间: 2023-07-14 08:00:37 浏览: 168
要在 Docker 上部署 EFK(Elasticsearch + Fluentd + Kibana)日志收集和可视化平台,您可以按照以下步骤进行:
1. 安装 Docker 和 Docker Compose(如果尚未安装)。
2. 创建一个新的目录,用于存放 EFK 配置文件和数据:
```bash
mkdir efk
cd efk
```
3. 创建 `docker-compose.yml` 文件,并使用以下内容填充:
```yaml
version: '3'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.14.0
container_name: elasticsearch
environment:
- discovery.type=single-node
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- esdata:/usr/share/elasticsearch/data
fluentd:
image: fluent/fluentd:v1.14.2-debian-1.0
container_name: fluentd
volumes:
- ./fluentd/conf:/fluentd/etc
- esdata:/fluentd/log
kibana:
image: docker.elastic.co/kibana/kibana:7.14.0
container_name: kibana
environment:
- ELASTICSEARCH_HOSTS=http://elasticsearch:9200
ports:
- 5601:5601
volumes:
esdata:
```
4. 在 `efk` 目录中创建一个新的子目录 `fluentd`,并在其中创建一个 `conf` 目录,用于存放 Fluentd 配置文件。
5. 在 `fluentd/conf` 目录中创建一个新文件 `fluent.conf`,并使用以下内容填充:
```conf
<source>
@type forward
port 24224
</source>
<match **>
@type elasticsearch
host elasticsearch
port 9200
logstash_format true
logstash_prefix fluentd
flush_interval 10s
</match>
```
6. 启动 EFK:
```bash
docker-compose up -d
```
7. 使用浏览器访问 Kibana 控制台:`http://localhost:5601`。您应该能够看到 Kibana 的登录页面。
现在,您已成功部署了 EFK 平台,并可以使用 Fluentd 收集日志并使用 Kibana 进行可视化和分析。请注意,这只是一个基本的配置示例,您可能需要根据自己的需求进行进一步的配置和定制化。
阅读全文