Aerospike

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

本文档介绍了如何配置 Google Kubernetes Engine 部署,以便使用 Google Cloud Managed Service for Prometheus 从 Aerospike 收集指标。本页面介绍如何完成以下任务:

  • 为 Aerospike 设置导出器以报告指标。
  • 为 Managed Service for Prometheus 配置 PodMonitoring 资源以收集导出的指标。
  • 在 Cloud Monitoring 中访问信息中心以查看指标。

只有在您将代管式收集功能与 Managed Service for Prometheus 搭配使用时,这些说明才适用。如果您使用的是自行部署的收集功能,请参阅 Aerospike 导出器的源代码库以了解安装信息。

如需了解 Aerospike,请参阅 Aerospike

前提条件

如需使用 Managed Service for Prometheus 和代管式收集功能从 Aerospike 收集指标,您的部署必须满足以下要求:

  • 您的集群必须运行 Google Kubernetes Engine 1.21.4-gke.300 或更高版本。
  • 您必须运行 Managed Service for Prometheus,并启用代管式收集功能。如需了解详情,请参阅代管式收集功能使用入门

  • 如需使用 Cloud Monitoring 中提供的信息中心进行 Aerospike 集成,您必须使用 aerospike-prometheus-exporter 1.8.0 或更高版本。

    如需详细了解可用的信息中心,请参阅查看信息中心

安装 Aerospike 导出器

我们建议您将 Aerospike 导出器 aerospike-prometheus-exporter 作为 Sidecar 安装到 Aerospike 工作负载。如需了解如何使用 Sidecar,请参阅具有多容器 pod 的 Kubernetes 上的扩展应用

如需将 aerospike-prometheus-exporter 作为 Sidecar 安装到 Aerospike,请修改您的 Aerospike 配置,如以下示例所示:

# Copyright 2022 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: aerospike
  labels:
    app.kubernetes.io/name: aerospike
spec:
  serviceName: aerospike
  replicas: 1
  selector:
    matchLabels:
+     app.kubernetes.io/name: aerospike
  template:
    metadata:
      labels:
+       app.kubernetes.io/name: aerospike
    spec:
      containers:
      - name: aerospike
        image: aerospike/aerospike-server:6.0.0.2
        ports:
        - containerPort: 3000
+     - name: aerospike-prometheus-exporter
+       image: aerospike/aerospike-prometheus-exporter:1.8.0
+       ports:
+       - containerPort: 9145
+         name: prometheus
+       env:
+         - name: AS_HOST
+           value: localhost
+         - name: AS_PORT
+           value: "3000"

您必须将开头为 + 符号的所有行添加到您的配置中。

这些说明假定您已安装正常运行的 Aerospike,并且想要对其进行修改以包含导出器。如需了解如何设置 Aerospike,请参阅 Aerospike 运算符文档

如需从本地文件应用配置更改,请运行以下命令:

kubectl apply -n NAMESPACE_NAME -f FILE_NAME

您还可以使用 Terraform 管理您的配置。

定义 PodMonitoring 资源

对于目标发现,Managed Service for Prometheus Operator 需要与同一命名空间中的 Aerospike 导出器对应的 PodMonitoring 资源。

您可以使用以下 PodMonitoring 配置:

# Copyright 2022 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
  name: aerospike
  labels:
    app.kubernetes.io/name: aerospike
    app.kubernetes.io/part-of: google-cloud-managed-prometheus
spec:
  endpoints:
  - port: prometheus
    interval: 30s
  selector:
    matchLabels:
      app.kubernetes.io/name: aerospike

确保标签选择器和端口与安装 Aerospike 导出器中使用的选择器和端口匹配。

如需从本地文件应用配置更改,请运行以下命令:

kubectl apply -n NAMESPACE_NAME -f FILE_NAME

您还可以使用 Terraform 管理您的配置。

验证配置

您可以使用 Metrics Explorer 验证您是否正确配置了 Aerospike 导出器。Cloud Monitoring 可能需要一两分钟时间来注入您的指标。

要验证指标是否已注入,请执行以下操作:

  1. 在 Google Cloud 控制台中,选择 Monitoring 或点击以下按钮:
    转到 Monitoring
  2. 在导航窗格中,选择 Metrics Explorer
  3. 选择 PromQL 标签页,然后运行以下查询:
    up{job="aerospike", cluster="CLUSTER_NAME", namespace="NAMESPACE_NAME"}

查看信息中心

Cloud Monitoring 集成包括 Aerospike Prometheus 概览信息中心。当您配置集成时,系统会自动安装信息中心。您还可以在不安装集成的情况下查看信息中心的静态预览。

如需查看已安装的信息中心,请执行以下操作:

  1. 在 Google Cloud 控制台中,选择 Monitoring 或点击以下按钮:
    转到 Monitoring
  2. 在导航窗格中,选择  信息中心
  3. 选择信息中心列表标签页。
  4. 选择集成类别。
  5. 点击信息中心的名称,例如 Aerospike Prometheus 概览

如需查看信息中心的静态预览,请执行以下操作:

  1. 在 Google Cloud 控制台中,选择 Monitoring 或点击以下按钮:
    转到 Monitoring
  2. 在导航窗格中,选择  集成
  3. 点击 Kubernetes Engine 部署平台过滤条件。
  4. 找到 Aerospike 集成,然后点击查看详情
  5. 选择信息中心标签页。

问题排查

如需了解如何排查指标注入问题,请参阅排查注入端问题中的从导出器收集的问题