PrometheusServer怎么安装

这篇文章给大家分享的是有关Prometheus Server怎么安装的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

专注于为中小企业提供网站制作、做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业吉阳免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了1000多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

 简介

Prometheus是Golang写的,编译后就是一个二进制文件,不依赖于第三方运行库。这样子就可以让我们很方便的部署。

下载安装

Golang的交叉编译,可以很容易实现跨平台。

如果是测试实验可以在下载windows版本的就可以了。

Prometheus Server怎么安装

我这边都是Linux环境,直接下载Linux版本

wget -c https://github.com/prometheus/prometheus/releases/download/v2.23.0/prometheus-2.23.0.linux-amd64.tar.gz tar zxvf prometheus-2.23.0.linux-amd64.tar.gz

运行

解压后,就可以执行二进制文件prometheus

./prometheus

默认配置文件是当前目录下的prometheus.yml

默认配置文件里面只有拉取prometheus自己的指标。

帮助

./prometheus --help

prometheus 提供了很多参数可以进行配置,根据实际情况进行设置即可。

usage: prometheus []  The Prometheus monitoring server  Flags:   -h, --help                     Show context-sensitive help (also try --help-long and --help-man).       --version                  Show application version.       --config.file="prometheus.yml"                                    Prometheus configuration file path.       --web.listen-address="0.0.0.0:9090"                                    Address to listen on for UI, API, and telemetry.       --web.read-timeout=5m      Maximum duration before timing out read of the request, and closing idle connections.       --web.max-connections=512  Maximum number of simultaneous connections.       --web.external-url=   The URL under which Prometheus is externally reachable (for example, if Prometheus is served via a reverse proxy). Used for generating relative and absolute links back to                                  Prometheus itself. If the URL has a path portion, it will be used to prefix all HTTP endpoints served by Prometheus. If omitted, relevant URL components will be derived                                  automatically.       --web.route-prefix=  Prefix for the internal routes of web endpoints. Defaults to path of --web.external-url.       --web.user-assets=   Path to static asset directory, available at /user.       --web.enable-lifecycle     Enable shutdown and reload via HTTP request.       --web.enable-admin-api     Enable API endpoints for admin control actions.       --web.console.templates="consoles"                                    Path to the console template directory, available at /consoles.       --web.console.libraries="console_libraries"                                    Path to the console library directory.       --web.page-title="Prometheus Time Series Collection and Processing Server"                                    Document title of Prometheus instance.       --web.cors.origin=".*"     Regex for CORS origin. It is fully anchored. Example: 'https?://(domain1|domain2)\.com'       --storage.tsdb.path="data/"                                    Base path for metrics storage.       --storage.tsdb.retention=STORAGE.TSDB.RETENTION                                    [DEPRECATED] How long to retain samples in storage. This flag has been deprecated, use "storage.tsdb.retention.time" instead.       --storage.tsdb.retention.time=STORAGE.TSDB.RETENTION.TIME                                    How long to retain samples in storage. When this flag is set it overrides "storage.tsdb.retention". If neither this flag nor "storage.tsdb.retention" nor                                  "storage.tsdb.retention.size" is set, the retention time defaults to 15d. Units Supported: y, w, d, h, m, s, ms.       --storage.tsdb.retention.size=STORAGE.TSDB.RETENTION.SIZE                                    [EXPERIMENTAL] Maximum number of bytes that can be stored for blocks. A unit is required, supported units: B, KB, MB, GB, TB, PB, EB. Ex: "512MB". This flag is experimental and                                  can be changed in future releases.       --storage.tsdb.no-lockfile                                    Do not create lockfile in data directory.       --storage.tsdb.allow-overlapping-blocks                                    [EXPERIMENTAL] Allow overlapping blocks, which in turn enables vertical compaction and vertical query merge.       --storage.tsdb.wal-compression                                    Compress the tsdb WAL.       --storage.remote.flush-deadline=                                    How long to wait flushing sample on shutdown or config reload.       --storage.remote.read-sample-limit=5e7                                    Maximum overall number of samples to return via the remote read interface, in a single query. 0 means no limit. This limit is ignored for streamed response types.       --storage.remote.read-concurrent-limit=10                                    Maximum number of concurrent remote read calls. 0 means no limit.       --storage.remote.read-max-bytes-in-frame=1048576                                    Maximum number of bytes in a single frame for streaming remote read response types before marshalling. Note that client might have limit on frame size as well. 1MB as                                  recommended by protobuf by default.       --rules.alert.for-outage-tolerance=1h                                    Max time to tolerate prometheus outage for restoring "for" state of alert.       --rules.alert.for-grace-period=10m                                    Minimum duration between alert and restored "for" state. This is maintained only for alerts with configured "for" time greater than grace period.       --rules.alert.resend-delay=1m                                    Minimum amount of time to wait before resending an alert to Alertmanager.       --alertmanager.notification-queue-capacity=10000                                    The capacity of the queue for pending Alertmanager notifications.       --alertmanager.timeout=10s                                    Timeout for sending alerts to Alertmanager.       --query.lookback-delta=5m  The maximum lookback duration for retrieving metrics during expression evaluations and federation.       --query.timeout=2m         Maximum time a query may take before being aborted.       --query.max-concurrency=20                                    Maximum number of queries executed concurrently.       --query.max-samples=50000000                                    Maximum number of samples a single query can load into memory. Note that queries will fail if they try to load more samples than this into memory, so this also limits the                                  number of samples a query can return.       --log.level=info           Only log messages with the given severity or above. One of: [debug, info, warn, error]       --log.format=logfmt        Output format of log messages. One of: [logfmt, json]

注册成服务

目前linux大部分的发行版本都是使用systemd管理系统服务了,我们可以直接编辑一个systemd的service文件,来部署prometheus服务。

Prometheus Server怎么安装
vim /etc/systemd/system/prometheus.service

如果没有设置--storage.tsdb.path,记得设置好工作目录WorkingDirectory,不然所有数据都会保存到家目录里面。

[Unit] Description=prometheus After=network.target  [Service] Type=simple WorkingDirectory=/opt/prometheus/prometheus ExecStart=/opt/prometheus/prometheus/prometheus --config.file="/opt/prometheus/prometheus/prometheus.yml" LimitNOFILE=65536 PrivateTmp=true RestartSec=2 StartLimitInterval=0 Restart=always  [Install] WantedBy=multi-user.target

使用systemctl加载文件、控制服务

systemctl daemon-reload  systemctl enable prometheus systemctl start prometheus

WebUI

启动之后,默认监听是9090端口,浏览器直接访问即可

http://[ip]:9090

感谢各位的阅读!关于“Prometheus Server怎么安装”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


文章标题:PrometheusServer怎么安装
文章起源:http://hbruida.cn/article/jsegdd.html