Docs 菜单
Docs 主页
/
Enterprise Kubernetes Operator
/

配置Kubernetes Operator 遥测

在此页面上

  • 了解Kubernetes Operator 追踪的内容
  • 了解Kubernetes Operator 不追踪的内容
  • MongoDB所需的 RBAC
  • 查看遥测
  • 为Kubernetes Operator 禁用遥测
  • 为Kubernetes Operator 启用遥测

MongoDB Enterprise Kubernetes Operator 的遥测收集匿名的聚合使用数据,以帮助MongoDB识别对客户影响最大的改进。Kubernetes Operator默认启用遥测功能。

此遥测数据可帮助MongoDB:

  • 提高产品的可靠性和稳定性。

  • 根据实际集群配置优化性能。

  • 确保平滑升级并简化问题解决。

Kubernetes Operator 遥测与MongoDB 助手收集的数据是分开的,并且不依赖于MongoDB Ops Manager。

Kubernetes Operator 遥测跟踪非个人身份信息 (PII),包括但不限于以下信息:

注意

此列表会根据发送的遥测数据的迭代进行更新,但可能并不详尽或包含完整的详细信息。要全面见解发送到MongoDB进行分析的遥测数据,请参阅查看遥测数据。

数据
示例值

Kubernetes Operator 版本号

1.31.0

Kubernetes集群版本

v1.22.0

Kubernetes集群提供商

gke, eks , aks

Kubernetes UUID。这与 kube-system命名空间的 UID 相同。要学习;了解更多信息,请参阅 OpenTelemetry 文档。

f47ac10b-58cc-4372-a567-0e02b2c3d479

mongodb CRD 部署和资源类型。Kubernetes Operator 遥测不追踪自定义部署名称。

值示例:

  • 架构:staticnon-static

  • 多集群:truefalse

  • 部署类型: ReplicaSet

自生成的Kubernetes Operator UUID。Kubernetes Operator 遥测不追踪自定义名称。

d2d2c3e0-6666-4e83-1234-abcd5678efgh

遥测发送时间戳

2025-02-14T15:45:34.27814598Z

Kubernetes Operator 遥测不追踪:

数据
例子

PII 以及可能包含 PII 的值,包括所有自行设置的自由文本字段,例如自定义名称或数据库用户名。

--clusterName MyCluster

可以唯一标识使用Kubernetes Operator 的公司的数据。

<hostname>:<port>

API键值或 Atlas 登录凭证。

private_api_key abcdefghi123456789

MongoDB需要特定的基于角色的访问权限控制 (RBAC)权限来收集遥测数据。不要禁用这些权限。这些权限允许MongoDB执行以下操作:

  • 检索Kubernetes集群UID。

  • 访问单个节点的信息以确定云提供商,例如 EKS、GKE 或 AKS。

  • 查询 /version 端点以检测Kubernetes服务器版本并确保兼容性。

禁用这些 RBAC 角色可能会导致功能降级、兼容性问题和支持效率降低。为了保持完整功能并获得最佳支持体验,这些权限必须保持启用状态。

要在 Kubernetes Operator 将数据发送到MongoDB进行分析之前查看Kubernetes Operator 收集的遥测数据,请执行以下步骤:

1

要防止Kubernetes Operator 在您查看遥测数据之前将其发送到MongoDB ,请将 MDB_OPERATOR_TELEMETRY_SEND_ENABLED 设立为 false

或者,如果您使用 Helm,请将 操作符.telemetry.send.enabled 设立为 false

2

您的遥测数据收集在名为 mongodb-enterprise-operator-telemetry 的 ConfigMap 中。要查看此 ConfigMap,请替换 <namespace> 并运行:

kubectl get configmap mongodb-enterprise-operator-telemetry -n <namespace> -o yaml
- apiVersion: v1
data:
lastSendPayloadClusters: '[{"timestamp":"2025-02-14T15:45:34.27814598Z","source":"Clusters","properties": {"kubernetesAPIVersion":"v1.30.4","kubernetesClusterID":"80b25668-6732-4463-93fb-61ae0487c3e8", "kubernetesFlavour":"Unknown"}},{"timestamp":"2025-02-14T15:45:34.278149016Z","source":"Clusters","properties": {"kubernetesAPIVersion":"v1.30.4","kubernetesClusterID":"80b25668-6732-4463-93fb-61ae0487c3e8", "kubernetesFlavour":"Unknown"}}]'
lastSendPayloadDeployments: '[{"timestamp":"2025-02-14T15:45:34.280318302Z","source":"Deployments","properties": {"architecture":"non-static","deploymentUID":"ff43ecfb-d244-4639-bca9-9cbbb9fbaa56","isMultiCluster":false, "operatorID":"4ae3880d-4bc5-495c-b5ea-ff9c9fc0bb34","type":"ReplicaSet"}}]'
lastSendPayloadOperators: '[{"timestamp":"2025-02-14T15:45:34.270025096Z","source":"Operators","properties": {"kubernetesClusterID":"80b25668-6732-4463-93fb-61ae0487c3e8","kubernetesClusterIDs": ["80b25668-6732-4463-93fb-61ae0487c3e8"],"operatorID":"4ae3880d-4bc5-495c-b5ea-ff9c9fc0bb34","operatorType":"MEKO", "operatorVersion":"67af61832ac9680007bb966b"}}]'
lastSendTimestampClusters: Initial-Value
lastSendTimestampDeployments: "1739377730"
lastSendTimestampOperators: "1739377728"
Operator-UUID: 9cc0fb41-5142-419d-b440-baae616f66d4
kind: ConfigMap
metadata:
name: mongodb-enterprise-operator-telemetry

注意

  • lastSendPayload<type> 是最近为集群、部署或Kubernetes Operator实例收集的数据。

  • lastSendTimestamp<type> 是Kubernetes Operator 上次向MongoDB发送 lastSendPayload<type> 进行分析的日期和时间。如果值为 Initial-Value,则尚未向MongoDB发送任何遥测数据。如果禁用遥测,则 Initial-Value 永远不会改变。

Kubernetes Operator默认启用遥测功能。您可以通过以下方式禁用Kubernetes Operator 遥测:

  • 将环境变量 MDB_OPERATOR_TELEMETRY_ENABLED 添加到Kubernetes Operator部署配置中并设立为 false

    spec:
    template:
    spec:
    serviceAccountName: mongodb-enterprise-operator
    containers:
    - name: mongodb-enterprise-operator
    env:
    - name: MDB_OPERATOR_TELEMETRY_ENABLED
    value: "false"
  • 或者,如果您使用 Helm ,请将操作符.telemetry.enabled设立为 false

    helm template operator helm_chart --set operator.telemetry.enabled=false

Kubernetes Operator默认启用遥测功能。如果当前已禁用遥测,则可以通过将以下环境变量设置为 true 或完全删除这些值启用遥测,这样设置默认为 true

  • 将Kubernetes Operator部署配置中的环境变量 MDB_OPERATOR_TELEMETRY_ENABLEDMDB_OPERATOR_TELEMETRY_SEND_ENABLED 设置为 true 或完全删除这些值,从而将设置默认为 true。要学习;了解更多信息,请参阅 MDB_OPERATOR_TELEMETRY_ENABLED。

    spec:
    template:
    spec:
    serviceAccountName: mongodb-enterprise-operator
    containers:
    - name: mongodb-enterprise-operator
    env:
    - name: MDB_OPERATOR_TELEMETRY_ENABLED
    value: "true"
    - name: MDB_OPERATOR_TELEMETRY_SEND_ENABLED
    value: "true"
  • 或者,如果您使用 Helm ,请将以下设置设立true 或完全删除这些值,这样会将设置默认为true 。要学习;了解更多信息,请参阅操作符.telemetry。

    operator:
    telemetry:
    # Enables telemetry. Setting this to "false" will stop all telemetry.
    enabled: true
    # Adds RBAC clusterRole for kube-system UID detection for the Kubernetes cluster UID.
    # Adds RBAC clusterRole for RBAC for nodes. We are listing exactly one node to detect the cluster provider (for example, eks).
    # Adds RBAC clusterRole for /version query for detecting Kubernetes server version.
    installClusterRole: true
    collection:
    # Controls how often the Kubernetes Operator collects and saves the data to the telemetry ConfigMap. It doesn't control whether this data is sent to MongoDB for analysis.
    # Valid time units for frequency are "m", or "h". Anything less than one minute defaults to 1h.
    frequency: 1h
    # Enables the Kubernetes Operator to collect and send cluster-level telemetry.
    # Note: the cluster UUID is unique but random and MongoDB has no way to map this to a customer.
    clusters:
    enabled: true
    # Enables the Kubernetes Operator to collect and send deployment-level telemetry.
    deployments:
    enabled: true
    # Enables the Kubernetes Operator to collect and send Kubernetes Operator-level telemetry.
    operators:
    enabled: true
    # Enables sending the collected telemetry to MongoDB.
    send:
    enabled: true
    # Controls how often the Kubernetes Operator sends the collected the data to MongoDB for analysis.
    # Valid time units are "h". Anything less than one hour defaults to 168h, which is one week.
    frequency: 168h

后退

Operator Helm