Kubernetes Fluentd未从ConfigMap加载配置

Kubernetes Fluentd未从ConfigMap加载配置,kubernetes,fluentd,Kubernetes,Fluentd,我使用Fluentd作为一个侧车,将nginx日志发送到stdout,以便它们显示在Pod的日志中。我有一个奇怪的问题,Fluentd在容器启动时没有拾取配置 检查Fluentd启动日志后,似乎未加载配置。当容器启动时,应该从/etc/fluentd config/fluentd.conf加载配置。我已经连接到容器,配置文件正确,pv挂载也正确。环境变量也存在 下面是完整的部署规范,如果您想玩的话,它是自包含的 apiVersion: v1 kind: List items: - apiVers

我使用Fluentd作为一个侧车,将nginx日志发送到stdout,以便它们显示在Pod的日志中。我有一个奇怪的问题,Fluentd在容器启动时没有拾取配置

检查Fluentd启动日志后,似乎未加载配置。当容器启动时,应该从/etc/fluentd config/fluentd.conf加载配置。我已经连接到容器,配置文件正确,pv挂载也正确。环境变量也存在

下面是完整的部署规范,如果您想玩的话,它是自包含的

apiVersion: v1
kind: List
items:
- apiVersion: v1
  kind: PersistentVolume
  metadata:
    name: weblog-pv
    labels:
      type: local
  spec:
    storageClassName: manual
    accessModes: 
    - ReadWriteOnce
    hostPath:
      path: /tmp/weblog
      type: DirectoryOrCreate
    capacity: 
      storage: 500Mi

- apiVersion: v1
  kind: PersistentVolumeClaim
  metadata:
    name: weblog-pvc
  spec:
    storageClassName: manual
    accessModes:
    - ReadWriteOnce
    resources:
      requests:
        storage: 200Mi

- apiVersion: v1
  kind: ConfigMap
  metadata:
    name: fluentd-config
  data:
    fluentd.conf: |
      <source>
        @type tail
        format none
        path /var/log/nginx/access.log
        tag count.format1
      </source>
      <match *.**>
        @type forward
        <server>
          name localhost
          host 127.0.0.1
        </server>
      </match>

- apiVersion: v1
  kind: Pod
  metadata:
    name: sidecar-example
    labels:
      app: webserver
  spec:
    containers:
    - name: nginx
      image: nginx:latest
      ports: 
      - containerPort: 80
      volumeMounts:
      - name: logging-vol
        mountPath: /var/log/nginx
    - name: fdlogger
      env:
        - name: FLUENTD_ARGS
          value: -c /etc/fluentd-config/fluentd.conf
      image: fluent/fluentd
      volumeMounts:
      - name: logging-vol
        mountPath: /var/log/nginx
      - name: log-config
        mountPath: /etc/fluentd-config
    volumes:
      - name: logging-vol
        persistentVolumeClaim: 
          claimName: weblog-pvc
      - name: log-config
        configMap:
          name: fluentd-config

- apiVersion: v1
  kind: Service
  metadata:
    name: sidecar-svc
  spec:
    selector:
      app:  webserver
    type: NodePort
    ports:
    - name:  sidecar-port
      port:  80
      nodePort:  32000
apiVersion:v1 种类:列表 项目: -版本:v1 种类:PersistentVolume 元数据: 名称:博客pv 标签: 类型:本地 规格: storageClassName:手动 访问模式: -读写 主机路径: 路径:/tmp/weblog 类型:目录或创建 容量: 储存量:500毫升 -版本:v1 种类:PersistentVolumeClaim 元数据: 名称:博客 规格: storageClassName:手动 访问模式: -读写 资源: 请求: 储存量:200毫升 -版本:v1 种类:配置地图 元数据: 名称:fluentd配置 数据: fluentd.conf:| @型尾 无格式 path/var/log/nginx/access.log 标记计数.1 @打字前进 名称本地主机 主机127.0.0.1 -版本:v1 种类:豆荚 元数据: 名称:侧车示例 标签: 应用程序:Web服务器 规格: 容器: -姓名:nginx 图片:nginx:latest 端口: -集装箱港口:80 体积数量: -名称:日志卷 挂载路径:/var/log/nginx -姓名:fdlogger 环境: -姓名:FLUENTD_ARGS 值:-c/etc/fluentd config/fluentd.conf 图片:fluent/fluentd 体积数量: -名称:日志卷 挂载路径:/var/log/nginx -名称:日志配置 挂载路径:/etc/fluentd配置 卷数: -名称:日志卷 persistentVolumeClaim: 索赔名称:weblog pvc -名称:日志配置 配置映射: 名称:fluentd配置 -版本:v1 种类:服务 元数据: 名称:侧车svc 规格: 选择器: 应用程序:Web服务器 类型:节点端口 端口: -名称:侧车端口 港口:80 节点端口:32000
我通过使用stdout而不是重定向到localhost使其工作

- apiVersion: v1
  kind: ConfigMap
  metadata:
    name: fluentd-config
  data:
    fluent.conf: |
      <source>
        @type tail
        format none
        path /var/log/nginx/access.log
        tag count.format1
      </source>
      <match *.**>
        @type stdout
      </match>
-apiVersion:v1
种类:配置地图
元数据:
名称:fluentd配置
数据:
fluent.conf:|
@型尾
无格式
path/var/log/nginx/access.log
标记计数.1
@类型标准输出

你把这个修好了吗。在可能的情况下,我给出的configmap数据也没有被考虑。