我的设置:
version: '2'
services:
prometheus_srv:
build: ./prom_serv
image: prom/prometheus
container_name: prometheus_server
hostname: prometheus_server
prometheus_node:
image: prom/node-exporter
container_name: prom_node_exporter
hostname: prom_node_exporter
depends_on:
- prometheus_srv
prometheus_node2:
image: prom/node-exporter
container_name: prom_node_exporter2
hostname: prom_node_exporter2
depends_on:
- prometheus_node
grafana:
image: grafana/grafana
container_name: grafana_server
hostname: grafana_server
depends_on:
- prometheus_node2
Run Code Online (Sandbox Code Playgroud)
FROM prom/prometheus
ADD prometheus.yml /etc/prometheus/
Run Code Online (Sandbox Code Playgroud)
# Load and evaluate rules in this file eve
scrape_configs:
# Scrape Prometheus itself
- job_name: 'prometheus'
scrape_interval: 10s
scrape_timeout: 10s
static_configs:
- …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Prometheus 容器从 cAdvisor 抓取指标。
这是我的 prometheus.yml:
global:
scrape_interval: 10s
evaluation_interval: 10s
scrape_configs:
- job_name: "prometheus"
static_configs:
- targets: ["localhost:9090"]
- job_name: "docker"
static_configs:
- targets: ['localhost:9323']
- job_name: "cadvisor"
scrape_interval: 5s
static_configs:
- targets: ['localhost:7070']
labels:
alias: "cadvisor"
Run Code Online (Sandbox Code Playgroud)
还有我的 docker-compose.yml:
version: "3.5"
services:
app:
container_name: app
build: "./app"
restart: always
volumes:
- ./app:/app
depends_on:
- db
links:
- db
ports:
- 8080:8080
db:
container_name: db
image: postgres
restart: always
volumes:
- ./data/postgres:/var/lib/postgresql/data
environment:
- POSTGRES_DB=articlesdb
- POSTGRES_USER=dbuser
- POSTGRES_PASSWORD=dbpassword …Run Code Online (Sandbox Code Playgroud) 我会很感激一些关于如何构建堆栈telegraf + InfluxDB + Grafana以监控一组机器的建议。
我已经telegraf + InfluxDB + Grafana在一台我称之为“监控实例”的机器上成功安装了堆栈。
我的系统是一个 API,由一台运行 nodejs 的机器和一个 postgres 实例组成。
我可以从我的 Postgresql 数据库(使用 postgres 的 Telegraf 输入插件)和我的应用程序(我以 prometheus 格式公开一些指标,telegraf 使用 prometheus 输入插件提取)中收集指标。
提前致谢。
从 Kubernetes 集群中的主节点,我可以运行kubectl get nodes并查看集群上任何单个节点的状态,因为kubectl可以找到用于身份验证的集群证书。在我的本地工作站上,假设我的身份验证配置正确,我也可以这样做。
从加入到 Kubernetes master的节点,有没有什么方法可以配置身份验证以便kubectl工作,我可以识别节点是处于Ready还是Not Ready状态?
我正在尝试构建一些驻留在节点本身上的监控工具,我想避免设置服务帐户等只是为了检查节点状态,以防万一我可以通过某种方式识别它kubelet、日志、节点上某处的文件、命令等...
我想知道如何更改kubectl top监视 Pod 的时间间隔。目前它的更新速度非常慢(我认为超过 15 秒),我希望获得 pod 资源使用情况的最新值。
我知道我可以使用其他一些工具,例如 grafana、prometheus 等。但是当我在终端中工作时,我喜欢在同一环境中运行一些简单的监控工具。
我无法在这里找到使用 Java VM (JVM) 参数来记录类卸载的 Web 搜索工作方式。
这里http://www.herongyang.com/JVM/ClassLoader-JVM-Option-verbose-class.html建议调用java -verbose:class -version,但据说是为了加载,并且只给出了加载的日志。
-XX:-TraceClassUnloading 跟踪类的卸载。-XX:-TraceClassLoading 跟踪类的加载。
java -XX:-TraceClassUnloading -version
不输出有关课程的信息:
[0.004s][warning][arguments] -XX:-TraceClassUnloading is deprecated. Will use -Xlog:class+unload=off instead.
java version "13" 2019-09-17
Java(TM) SE Runtime Environment (build 13+33)
Java HotSpot(TM) 64-Bit Server VM (build 13+33, mixed mode, sharing)
Run Code Online (Sandbox Code Playgroud)
和:
java -XX:-TraceClassLoading -version
[0.002s][warning][arguments] -XX:-TraceClassLoading is deprecated. Will use -Xlog:class+load=off instead.
java version "13" 2019-09-17
Java(TM) SE Runtime Environment (build 13+33)
Java HotSpot(TM) 64-Bit …Run Code Online (Sandbox Code Playgroud) 我有 3 个节点在单独的 Docker 容器中运行,我想使用 Prometheus 监控它们。我已经部署了带有 Prometheus 服务器的 docker 容器,但需要在容器中安装节点导出器以将指标导出到服务器。这些容器是使用 Ubuntu 映像构建的,并且在每个容器中运行一个 .jar。
我正在研究分布跟踪工具。
发现有两个很受欢迎。
它们之间的主要区别是什么?您会推荐哪一款?您会推荐其他开源分布式跟踪工具吗?
我正在使用 Prometheus Probe CRD 和 Blackbox 导出器来抓取静态目标。但是,当我检查 Blackbox Exporter 时,我根本没有看到指定的目标被探测。
我能够使用 Blackbox 导出器和 Prometheus 导出器值文件中的additionalScrapeConfigs 来探测目标,但它不能与 Probe CRD 一起使用。
这是我的探针自定义对象配置,
kind: Probe
metadata:
name: probe-crd
namespace: prometheus
spec:
jobName: probe-crd
prober:
url: prometheus-blackbox-exporter:9115
targets:
staticConfig:
static:
- https://www.google.com
Run Code Online (Sandbox Code Playgroud)
Blackbox 导出器服务正在端口 9115 上运行。有人可以让我知道我在这里缺少什么吗?
monitoring kubernetes prometheus prometheus-operator prometheus-blackbox-exporter
请考虑以下情况: - 我正在使用Linux.我怀疑我的应用程序崩溃了.我没有启用核心转储.日志中没有信息.
我怎么能确定,在系统重新启动后我的应用程序启动了,但现在它没有运行,因为它已经崩溃了.
我的应用程序配置为服务,用C/C++编写.
在某种程度上:如何获得自系统启动以来执行的所有进程/服务名称?它甚至可能吗?
我知道,我可以启用日志记录并再次启动进程以获取崩溃.
monitoring ×10
prometheus ×4
docker ×3
kubernetes ×3
grafana ×2
kubectl ×2
c ×1
c++ ×1
cadvisor ×1
cpu-usage ×1
debugging ×1
influxdb ×1
java ×1
jvm ×1
jvm-hotspot ×1
linux ×1
opentracing ×1
prometheus-blackbox-exporter ×1
telegraf ×1
zipkin ×1