style: apply global formatting fixes (struct, spacing, zhlint)

This commit is contained in:
Baohua Yang
2026-02-21 11:08:52 -08:00
parent ad68b2d973
commit 79ac9c639a
159 changed files with 1708 additions and 882 deletions

View File

@@ -1,23 +1,23 @@
## ELK/EFK 堆栈
ELK (Elasticsearch, Logstash, Kibana) 是目前业界最流行的开源日志解决方案而在容器领域由于 Fluentd 更加轻量级且对容器支持更好EFK (Elasticsearch, Fluentd, Kibana) 组合也变得非常流行
ELK (ElasticsearchLogstashKibana) 是目前业界最流行的开源日志解决方案而在容器领域由于 Fluentd 更加轻量级且对容器支持更好EFK (ElasticsearchFluentdKibana) 组合也变得非常流行
### 方案架构
我们将采用以下架构
1. **Docker Container**: 容器将日志输出到标准输出 (stdout/stderr)
2. **Fluentd**: 作为 Docker Logging Driver 或运行为守护容器收集容器日志
3. **Elasticsearch**: 存储从 Fluentd 接收到的日志数据
4. **Kibana**: Elasticsearch 读取数据并进行可视化展示
1. **Docker Container**容器将日志输出到标准输出 (stdout/stderr)
2. **Fluentd**作为 Docker Logging Driver 或运行为守护容器收集容器日志
3. **Elasticsearch**存储从 Fluentd 接收到的日志数据
4. **Kibana** Elasticsearch 读取数据并进行可视化展示
### 部署流程
我们将使用 Docker Compose 来一键部署整个日志堆栈
#### 1. 编写 Compose 文件
#### 1编写 Compose 文件
1. 编写 `compose.yaml` `docker-compose.yml`配置如下
1. 编写 `compose.yaml` ( `docker-compose.yml`) 配置如下
```yaml
services:
@@ -71,9 +71,9 @@ networks:
logging:
```
#### 2. 配置 Fluentd
#### 2配置 Fluentd
创建 `fluentd/conf/fluent.conf`:
创建 `fluentd/conf/fluent.conf`
```ini
<source>
@@ -102,9 +102,9 @@ networks:
</match>
```
#### 3. 配置应用容器使用 fluentd 驱动
#### 3配置应用容器使用 fluentd 驱动
启动一个测试容器指定日志驱动为 `fluentd`:
启动一个测试容器指定日志驱动为 `fluentd`
```bash
docker run -d \
@@ -115,9 +115,9 @@ docker run -d \
nginx
```
**注意**: 确保 `fluentd` 容器已经启动并监听在 `localhost:24224`在生产环境中如果你是在不同机器上需要将 `localhost` 替换为运行 fluentd 的主机 IP
**注意**确保 `fluentd` 容器已经启动并监听在 `localhost:24224`在生产环境中如果你是在不同机器上需要将 `localhost` 替换为运行 fluentd 的主机 IP
#### 4. Kibana 中查看日志
#### 4 Kibana 中查看日志
1. 访问 `http://localhost:5601`
2. 进入 **Management**->**Kibana**->**Index Patterns**