如何在Kubernetes中启用第三方容器的日志记录?

时间:2019-02-18 04:39:23

标签: kubernetes

与Docker类似,如下所示,使用Docker配置第三方的撰写文件中的日志记录(mariadb,opentsdb ...),以显示Kibana上的日志。

logging:
            driver: fluentd
            options:
                fluentd-address: "0.0.0.0:24224"
                tag: "docker.{{.ID}}"

我想问一下如何配置Kubernetes?

1 个答案:

答案 0 :(得分:0)

基本上,您可以使用fluentd收集日志并将其推送到第三方日志存储( StackDriver ElasticSearch )。为确保fluentd在每个群集节点上运行,我们可以使用 DaemonSet 对象。

  

作为示例,让我们看一下文件内容的一部分:

apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
  name: fluentd
  namespace: kube-system
  ...
spec:
    ...
    spec:
      containers:
      - name: fluentd
        image: quay.io/fluent/fluentd-kubernetes-daemonset
        env:
          - name:  FLUENT_ELASTICSEARCH_HOST
            value: "elasticsearch-logging"
          - name:  FLUENT_ELASTICSEARCH_PORT
            value: "9200"
        ...

This article介绍了完成所有设置的最重要步骤。

  

获取Fluentd DaemonSet来源

     

我们创建了一个Fluentd DaemonSet,它具有正确的规则和准备启动的容器映像:

https://github.com/fluent/fluentd-kubernetes-daemonset
     

请使用GIT从命令行获取存储库的副本:

$ git clone https://github.com/fluent/fluentd-kubernetes-daemonset