【问题标题】:How do I disable the Stackdriver Logging agent in a cluster?如何在集群中禁用 Stackdriver Logging 代理?
【发布时间】:2020-04-21 22:17:49
【问题描述】:

我们的项目最近从 Stackdriver Logging 迁移出去。但是,我不知道如何摆脱 kube-system 命名空间中的 fluentd-cloud-logging-* pod。如果我删除单个 pod,它们会立即返回。

我怎样才能永远杀死他们?

我不清楚它们是如何被重新创建的;肯定没有 DaemonSet 将它们带回来。

我已经在gcloud container clusters describe描述的配置中将monitoringService设置为none

【问题讨论】:

    标签: google-kubernetes-engine


    【解决方案1】:

    kube-system 命名空间中的 fluentd-cloud-logging pod 定义在每台主机的 /etc/kubernetes/manifests/ 文件夹中;也就是说,它们是使用Static Pods 机制定义的。

    截至目前,无法全局更改设置。不过,作为一种解决方法,我可以使用startup script pod 之类的东西删除每个节点上清单文件夹中的文件。当文件被删除时,pod也会被删除。

    (感谢 GCP 对此答案的支持。)

    【讨论】:

    • 对于 2017 年 11 月 28 日之后返回此问题的任何人:您现在只需编辑集群并将 Stackdriver 日志记录设置为“已禁用”即可禁用集群的 Stackdriver 日志记录。这是最近添加的。
    【解决方案2】:

    这取决于您的 Kubernetes Master 版本。

    1. 从您的 Google Cloud 仪表板转到 Kubernetes Clusters
    2. 从列表中选择您的集群
    3. 点击编辑
    4. 检查您的主版本,并在此基础上选择以下选项之一

    1.12.7 或更早版本(旧版日志记录)

    可以通过选择Legacy Logging: Disabled来禁用日志记录。

    1.14 或更早版本(Kubernetes 引擎监控)

    你有两个选择:

    1. 切换到旧版日志记录并禁用日志记录
    2. 禁用所有日志记录和监控。请记住,这将禁用所有数据收集。谷歌还警告:前方有龙。

    1.15.7 或更高版本

    您可以选择System logging and monitoring only (beta)。这将停止从应用程序收集日志,但系统监控和日志收集将保留。以下是系统日志的描述:

    选择仅系统选项时,将收集以下日志:

    在命名空间 kube-system、istio-system、 knative-serving、gke-system 和 config-management-system。

    非容器化的关键服务,包括 docker/containerd 运行时、kubelet、kubelet-monitor、node-problem-detector 和 kube-container-runtime-monitor.

    节点的串口输出,如果虚拟机实例元数据 serial-port-logging-enable 设置为 true。

    来源:https://cloud.google.com/monitoring/kubernetes-engine/installing

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-11
    • 1970-01-01
    • 2018-04-19
    相关资源
    最近更新 更多