【问题标题】:How to change fluentd config for GKE-managed logging agent?如何更改 GKE 管理的日志记录代理的 fluentd 配置?
【发布时间】:2017-09-21 00:50:40
【问题描述】:

我在 Google Container Engine 中有一个启用了 Stackdriver 日志代理的容器集群。它正确地从我的容器中提取标准输出日志。现在我想更改 fluentd 配置以指定日志解析器,以便 GCP Logging 视图中显示的日志具有正确的严重性和组件。

按照Stackdriver logging guide from kubernetes.io,我尝试:

  1. 将 fluentd ConfigMap 获取为 yml 文件
  2. 根据我的 log4js 日志格​​式添加了一个新的<filter>
  3. kube-system命名空间中创建了一个名为fluentd-cm-2的新ConfigMap
  4. 编辑了 fluentd 的 DaemonSet 并将其 ConfigMap 设置为 fluentd-cm-2。我使用kubectl edit ds 而不是kubectl replace -f 来执行此操作,因为后者失败并显示错误消息:“对象已被修改”,即使在获得DaemonSet yaml 的新副本之后也是如此。

意外结果:DaemonSet 重新启动,但它的配置恢复到原来的ConfigMap,所以我的更改没有生效。

我也尝试过直接编辑ConfigMap (kubectl edit cm fluentd-gcp-config-v1.1 --namespace kube-system) 并保存它,但它也被还原了。

我注意到 fluentd 的 DaemonSetConfigMap 被标记为 addonmanager.kubernetes.io/mode: Reconcile。我会得出结论,由于这种“协调”模式,GKE 已经覆盖了我的设置。

所以,我的问题是:当 GKE 在集群配置中安装日志代理时,如何更改 Google Container Engine 集群中的 fluentd 配置?

【问题讨论】:

    标签: kubernetes google-cloud-platform google-kubernetes-engine fluentd stackdriver


    【解决方案1】:

    请查看documentation page you mentioned 上的先决条件部分。那里提到,在 GKE 上,您无法更改默认的 Stackdriver Logging 集成。原因是 GKE 维护这个配置:更新代理,监视它的健康等等。不可能为所有可能的配置提供相同级别的支持。

    但是,您始终可以禁用默认集成并部署您自己的 DaemonSet 补丁版本。您可以在GKE documentation 中了解如何禁用默认集成:

    gcloud beta container clusters update [CLUSTER-NAME] \ --logging-service=none

    请注意,禁用默认集成后,您必须自己维护新部署:更新代理、设置资源、观察其运行状况。

    【讨论】:

    • 谢谢,我跳过了先决条件!
    • 我在 UI 中使用默认配置创建了新集群,然后我禁用了默认日志记录集成,但出现以下错误。错误:(gcloud.beta.container.clusters.update) ResponseError: code=400, message=Stackdriver 中的 Kubernetes-native 资源模型之前已在此集群上启用,需要指定日志记录和监控参数。
    • 然后我从 Kubernetes Engine Monitoring(系统和工作负载日志记录和监控)更改为 Kubernetes Engine Monitoring(传统日志记录和监控),然后我可以运行该命令。是以后有风险还是有影响?
    【解决方案2】:

    这是一种使用您自己的 fluentd 守护程序集的解决方案,它与 GKE 中包含的非常相似。

    https://cloud.google.com/solutions/customizing-stackdriver-logs-fluentd

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-29
      • 2020-03-31
      • 2022-10-23
      • 2010-11-04
      相关资源
      最近更新 更多