tencent cloud

文档反馈

SQL Server Exporter 接入

最后更新时间:2024-12-13 11:51:26

    操作场景

    Microsoft SQL Server Exporter 是社区专门为采集 Microsoft SQL Server(简称:MSSQL) 数据库监控指标而设计开发,通过 MSSQL Exporter 上报性能和健康状况等的指标数据,用于监控大盘展示和异常报警。腾讯云可观测平台 Prometheus 提供了与 MSSQL Exporter 集成及开箱即用的 Grafana 监控大盘。
    说明:
    如果需要监控的 MSSQL 是腾讯云 云数据库 SQL Server,推荐使用集成中心 云监控集成,支持一键采集云产品指标。

    接入方式

    方式一:一键安装(推荐)

    操作步骤

    2. 在实例列表中,选择对应的 Prometheus 实例。
    3. 进入实例详情页,选择数据采集 > 集成中心
    4. 在集成中心找到并单击 MSSQL,即会弹出一个安装窗口,在安装页面填写指标采集名称和地址等信息,并单击保存即可。
    
    
    

    配置说明

    参数
    说明
    名称
    集成名称,命名规范如下:
    名称具有唯一性。
    名称需要符合下面的正则:'^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$'。
    用户名
    MSSQL 的用户名称。
    密码
    MSSQL 的密码。
    域名
    MSSQL 的服务域名。
    地址
    MSSQL 的服务端口。
    标签
    给指标添加自定义 Label。

    方式二:自定义安装

    说明
    为了方便安装管理 Exporter,推荐使用腾讯云 容器服务 来统一管理。

    前提条件

    在 Prometheus 实例对应地域及私有网络(VPC)下,创建腾讯云容器服务 Kubernetes 集群,并为集群创建 命名空间
    Prometheus 监控服务控制台 > 选择对应的 Prometheus 实例 > 数据采集 > 集成容器服务中找到对应容器集群完成关联集群操作。可参见指引 关联集群

    操作步骤

    步骤一:Exporter 部署
    2. 在左侧菜单栏中单击集群。
    3. 单击需要获取集群访问凭证的集群 ID/名称,进入该集群的管理页面。
    4. 执行以下 部署 MSSQL Exporter > 验证 步骤完成 Exporter 部署。
    步骤二:部署 MSSQL Exporter
    1. 在左侧菜单中选择工作负载 > Deployment,进入 Deployment 管理页面。
    2. 在页面右上角单击 YAML 创建资源,创建 YAML 配置,选择对应的命名空间来进行部署服务,可以通过控制台的方式创建。如下以 YAML 的方式部署 Exporter, 配置示例如下:
    apiVersion: apps/v1
    kind: Deployment
    metadata:
    labels:
    k8s-app: mssql-exporter # 根据业务需要调整成对应的名称,建议加上 MSSQL 实例的信息
    name: mssql-exporter # 根据业务需要调整成对应的名称,建议加上 MSSQL 实例的信息
    namespace: mssql-demo # 根据业务需要调整成对应的命名空间
    spec:
    replicas: 1
    selector:
    matchLabels:
    k8s-app: mssql-exporter # 根据业务需要调整成对应的名称,建议加上 MSSQL 实例的信息
    template:
    metadata:
    labels:
    k8s-app: mssql-exporter # 根据业务需要调整成对应的名称,建议加上 MSSQL 实例的信息
    spec:
    containers:
    - env:
    - name: SERVER
    value: "127.0.0.1" # 根据业务需要调整成对应的 MSSQL 的域名
    - name: PORT
    value: "1433" # 根据业务需要调整成对应的 MSSQL 的端口
    - name: USERNAME
    value: user # 根据业务需要调整成对应的 MSSQL 的用户名
    - name: PASSWORD
    value: "123456" # 根据业务需要调整成对应的 MSSQL 的密码
    - name: EXPOSE
    value: "4000" # 暴露指标端口,根据业务需要调整成对应的端口
    image: ccr.ccs.tencentyun.com/rig-agent/common-image:mssql-exporter-v1.3.0
    imagePullPolicy: IfNotPresent
    name: mssql-exporter
    ports:
    - containerPort: 4000 # 开放上述环境变量 EXPOSE 所对应的端口
    name: metric-port
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    dnsPolicy: ClusterFirst
    imagePullSecrets:
    - name: qcloudregistrykey
    restartPolicy: Always
    schedulerName: default-scheduler
    securityContext: {}
    terminationGracePeriodSeconds: 30
    
    步骤三:验证
    1. 在 Deployment 页面单击上述步骤创建的 Deployment,进入 Deployment 管理页面。
    2. 单击日志页签,无报错信息输出即可,如下图所示:
    
    
    
    3. 单击 Pod 管理页签进入 Pod 页面。
    4. 在右侧的操作项下单击远程登录,即可登录 Pod,在命令行窗口中执行以下 wget 命令对应 Exporter 暴露的地址,可以正常得到对应的 MSSQL 指标。如发现未能得到对应的数据,请检查连接串是否正确,具体如下:
    wget -qO- http://localhost:4000/metrics
    执行结果如下图所示:
    
    
    
    步骤四:添加采集任务
    1. 登录 Prometheus 控制台,选择对应 Prometheus 实例进入管理页面。
    2. 单击数据采集 > 集成容器服务,选择已经关联的集群,通过数据采集配置 > 新建自定义监控 > YAML 编辑来添加采集配置。
    3. 通过服务发现添加 PodMonitors 来定义 Prometheus 抓取任务,YAML 配置示例如下:
    apiVersion: monitoring.coreos.com/v1
    kind: PodMonitor
    metadata:
    name: mssql-exporter # 填写一个唯一名称
    namespace: cm-prometheus # 按量实例: 集群的 namesapce; 包年包月实例(已停止售卖): namespace 固定,不要修改
    spec:
    podMetricsEndpoints:
    - interval: 30s
    port: metric-port # 填写pod yaml中Prometheus Exporter对应的Port的Name
    path: /metrics # 填写Prometheus Exporter对应的Path的值,不填默认/metrics
    relabelings:
    - action: replace
    sourceLabels:
    - instance
    regex: (.*)
    targetLabel: instance
    replacement: 'crs-xxxxxx' # 调整成对应的 MSSQL 实例 ID
    namespaceSelector: # 选择要监控 mssql exporter pod所在的namespace
    matchNames:
    - mssql-demo
    selector: # 填写要监控pod的Label值,以定位目标pod
    matchLabels:
    k8s-app: mssql-exporter
    

    查看监控

    前提条件

    Prometheus 实例已绑定 Grafana 实例。

    操作步骤

    1. 登录 腾讯云可观测平台 Prometheus 控制台,选择对应 Prometheus 实例进入管理页面。
    2. 在实例基本信息页面,找到绑定的 grafana 地址,打开并登录,然后在 database 文件夹中找到 mssql 实例监控面板,查看实例相关监控数据,如下图所示:
    
    
    

    配置告警

    腾讯云 Prometheus 托管服务支持告警配置,可根据业务实际的情况来添加告警策略。详情请参见 新建告警策略

    附录:MSSQL Exporter 环境变量配置

    名称
    描述
    SERVER
    必需,MSSQL 服务 IP 或 域名
    PORT
    MSSQL 服务端口,默认1433
    USERNAME
    必需,MSSQL 服务用户名
    PASSWORD
    必需,MSSQL 服务密码
    ENCRYPT
    强制加密设置,默认为true
    TRUST_SERVER_CERTIFICATE
    是否信任服务器的证书设置,默认为true
    DEBUG
    逗号分割的启用日志列表,可选 currently supports app 和 metrics
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持