Prometheus

Measure time metric is above threshold

大城市里の小女人 提交于 2021-01-28 11:32:47
问题 I have a metric for my Minecraft server, mc_player_online . It shows 1 if a player is online, or 0 otherwise. I can graph it to show how many players have been online. I want to calculate the play time of a player on the Minecraft server. The output could be tabulated to show "Player Steve's Playtime = 2d 3h 45m". How can I calculate how long a player is online for? I'd also like to calculate the utilisation of the server. So if the server is running from 12:00 to 13:00, and 10 players log on

Prometheus create label from metric label

别说谁变了你拦得住时间么 提交于 2021-01-28 08:32:44
问题 We are running the node-exporter in containers. To quickly identify on which host each node-exporter is running, I created a metric that looks like this: host{host="$HOSTNAME",node="$CONTAINER_ID"} 1 I'm looking for a way to extract the hostname in host= and create a label for each node-exporter instance as a hostname label. I tried numerous configurations and none seem to work. Current prometheus config looks like this: scrape_configs: - job_name: 'node' scrape_interval: 10s scrape_timeout:

HPA is unable to fetch custom metrics from prometheus adapter

只谈情不闲聊 提交于 2021-01-28 06:28:15
问题 I have configured Prometheus-adapter to fetch custom metrics from Prometheus. When I execute the command: kubectl get --raw /apis/custom.metrics.k8s.io/v1beta1 Following is the result. { "name": "namespaces/envoy_http_ingress_http_downstream_cx_http1", "singularName": "", "namespaced": false, "kind": "MetricValueList", "verbs": [ "get" ] }, { "name": "namespaces/envoy_cluster_xds_cluster_upstream_cx_rx_bytes", "singularName": "", "namespaced": false, "kind": "MetricValueList", "verbs": [ "get

How to query container memory limit in Prometheus

你。 提交于 2021-01-28 06:10:51
问题 I am using Prometheus tool for monitoring my Kubernetes cluster. I have set a resource limit(memory limit) in my deployments and need to configure a panel for showing the total memory available. Please let me know the query needed to run in Prometheus for getting the total memory limit available for my deployment. 回答1: It is possible using metrics kube_pod_container_resource_limits_memory_bytes (provided by kube-state-metrics) and container_memory_usage_bytes (provided by kubelet/cAdvisor)

Prometheus remote read influxdb

元气小坏坏 提交于 2021-01-26 22:42:44
问题 I'm new to Prometheus but familiar with Influx (currently running 1.6). My understanding is it's possible to configure Prometheus to remotely read data from influx with the following configuration in prometheus.yml: remote_read: url: "http://localhost:8086/api/v1/prom/read?db=bulkstats" "bulkstats" is the database I'm trying to read data from in Prometheus. An example query that would work in influx would be: SELECT "sess-curaaaactive" FROM "PDSNSYSTEM1" WHERE ("Nodename" = 'ALPRGAGQPNC') AND

Prometheus安装

一世执手 提交于 2021-01-26 03:39:44
Prometheus安装 下载地址: https://prometheus.io/download/ 现在时间是: 2019.09.07 安装环境: Linux centos7 minimal 虚拟机; 宿主主机 MacOS; 软件: virtualBox 6.0.10 r132072 选用版本: prometheus-2.12.0.linux-amd64.tar.gz 二进制包安装 1.安装虚拟机 下载镜像 在virtualbox安装虚拟机 配置网络 更换国内源 【CentOS7】yum安装时出现错误[Errno 14] curl#6 - "Could not resolve host: mirrors.aliyuncs.com; Unknown e的解决办法 2.配置 以及 安装依赖 配置网络使用网络地址转换模式 主机名 配置主机名可以快速辨识 时钟 prometheus是个时序数据库,对时间要求极高,所以安装时间同步的工具,设置时区为东八区, Asia/shanghai 资料 #安装服务 > yum install ntp -y #开机启动 > systemctl enable ntpd #设置时区 > timedatectl set-timezone Asia/Shanghai #查看时区 > timedatectl 3.安装prometheus

prometheus安装、使用

眉间皱痕 提交于 2021-01-26 03:38:54
本文主要参考https://songjiayang.gitbooks.io/prometheus/introduction/what.html 二进制包安装 我们可以到 Prometheus 二进制 下载页面 ,选择自己需要的系统版本,下面我们将以 ubuntu server 作为演示。 环境准备 linux amd64 (ubuntu server) prometheus 1.6.2 下载 Prometheus Server 创建下载目录,以便安装过后清理掉 mkdir ~/Download cd ~/Download 使用 wget 下载 Prometheus 的安装包 wget https://github.com/prometheus/prometheus/releases/download/v1.6.2/prometheus-1.6.2.linux-amd64.tar.gz 创建 Prometheus 目录,用于存放所有 Prometheus 相关的运行服务 mkdir ~/Prometheus cd ~/Prometheus 使用 tar 解压缩 prometheus-1.6.2.linux-amd64.tar.gz tar -xvzf ~/Download/prometheus-1.6.2.linux-amd64.tar.gz cd prometheus-1.6.2

常见运维监控系统的技术选型

♀尐吖头ヾ 提交于 2021-01-25 19:41:39
当今监控乃至整个运维行业正处在变更之际,面对诸多变化和不确定性,运维监控的规划应该首先考虑保证技术投资的可持续性,避免锁定在某一具体的架构和方案上,而是立足核心技术要点与诉求,跟随技术潮流,平滑演进,保持技术先进性,在演进过程中分阶段持续输出业务价值。本文将介绍几种常见运维监控系统的技术选型。 监控系统的功能 监控系统是运维系统或平台系统中较为核心的组成部分,它承载了运维工作中数据闭环的部分。从功能角度,监控系统分为数据采集功能、数据上报功能、数据存储功能、告警功能、大屏功能、报表功能等功能模块;从技术场景角度,监控系统又可以分为机房监控、硬件监控、网络监控、操作系统监控、中间件监控、云平台监控、业务监控、拨测监控等垂直技术领域;从业务场景角度,监控系统还可以分为资源类监控、成本类监控、审计类监控、质量类监控、运营类监控、安全类监控等垂直业务领域。 无论从哪个角度划分,监控系统的核心职责是保证平台所有信息的及时采集、正确处理、准确告警和合理展示。 监控系统的工作位置 运维负责支撑业务模块的正常运行,这需要从最底层的云或硬件开始构建运维技术栈,按下图所示,一般来说运维技术栈的职能从下往上依次包括环境(如 IDC 机房)、设备(如云主机、硬盘)、基础软件系统(如 linux)、部署和管理(如 docker、k8s)、中间件(如 mysql 数据库)、业务调度,最终到最上层的业务模块

Prometheus安装及使用

 ̄綄美尐妖づ 提交于 2021-01-25 17:27:25
一、系统环境 [root@prometheus src]# cat /etc/redhat-release CentOS Linux release 7.7.1908 (Core) 配置好主机的/etc/hosts文件和主机时间 二、安装Prometheus系统 1.下载软件 地址: https://prometheus.io/download/ 软件: grafana-7.2.0.linux-amd64.tar.gz #展示 prometheus-2.21.0.linux-amd64.tar.gz #服务端 node-exporter.tar.gz #客户端 2.上传到linux服务器并安装 上传:略... 安装: tar xf prometheus-2.21.0.linux-amd64.tar.gz -C /usr/local/ #解压 mv /usr/local/prometheus-2.21.0.linux-amd64/ /usr/local/prometheus #给文件改个名 /usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" & #使用默认的方式启动【&:代表后台运行,不占用终端窗口】 ss -ntlp | grep :9090 #查看端口是否启用

被集群节点负载不均所困扰?TKE 重磅推出全链路调度解决方案

[亡魂溺海] 提交于 2021-01-24 14:01:25
引言 在 K8s 集群运营过程中,常常会被节点 CPU 和内存的高使用率所困扰,既影响了节点上 Pod 的稳定运行,也会增加节点故障的几率。为了应对集群节点高负载的问题,平衡各个节点之间的资源使用率,应该基于节点的实际资源利用率监控信息,从以下两个策略入手: 在 Pod 调度阶段,应当优先将 Pod 调度到资源利用率低的节点上运行,不调度到资源利用率已经很高的节点上 在监控到节点资源率较高时,可以自动干预,迁移节点上的一些 Pod 到利用率低的节点上 为此,我们提供 动态调度器 + Descheduler 的方案来实现,目前在公有云 TKE 集群内【组件管理】- 【调度】分类下已经提供这两个插件的安装入口,文末还针对具体的客户案例提供了最佳实践的例子。 动态调度器 原生的 Kubernetes 调度器有一些很好的调度策略用来应对节点资源分配不均的问题,比如 BalancedResourceAllocation,但是存在一个问题是这样的资源分配是静态的,不能代表资源真实使用情况,节点的 CPU/内存利用率 经常处于不均衡的状态。所以,需要有一种策略可以基于节点的实际资源利用率进行调度。动态调度器所做的就是这样的工作。 技术原理 原生 K8s 调度器提供了 scheduler extender 机制来提供调度扩展的能力。相比修改原生 scheduler 代码添加策略