[02] 尝试在非K8s环境下引入Prometheus… 引入Promtheus和Grafana
总结一下
由於職場 “非 K8s 環境”,我們選擇了一種異常的方式來引入 Prometheus,並進行了調查和導入評估。
此外,在工作场所的“非K8s环境”中,已经引入了“Zabbix 4.0”,但是似乎想要通过使用Prometheus来为未来做准备。
所以,在本地环境中,使用docker-compose搭建了Prometheus服务器,以下是步骤记录。
另外,也可以附上一些Zabbix用户的评论。
请帮我用中文将以下内容改写,只需要一种选项:
环境
主机(物理电脑)
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04.4 LTS"
$ hostname -I
192.168.10.47
构建环境
步骤
1. 文件结构
文件结构如下。
$ tree . --charset=C --dirsfirst
.
|-- PV
| |-- etc
| | `-- prometheus
| | `-- prometheus.yml ..... 後述
| `-- var
| `-- lib
| `-- grafana ............ 現時点では空っぽのディレクトリである
`-- docker-compose.yml
创建docker-compose.yml文件。
根据规定的 Dockerfile,创建docker-compose.yml文件。
9090 番被報告与「Cockpit(Linux 服务器管理工具)」发生冲突,因此将其更改为 49090。
另外,由于可能与Rails等3000号发生冲突,所以我已经将其改为43003号。
并且,端口9090对应于Zabbix中的端口10051。
(服务器端监听的端口)
version: '3.7'
services:
prometheus:
image: prom/prometheus:v2.30.3
container_name: myprometheus_v2_30_3
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "7"
ports:
- 49090:9090
volumes:
- ./PV/etc/prometheus/:/etc/prometheus/
grafana:
image: grafana/grafana:8.2.0-ubuntu
container_name: mygrafana_v8_2_0
ports:
- '43003:3000'
user: 'root'
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "7"
volumes:
- './PV/var/lib/grafana:/var/lib/grafana'
2. 创建 Prometheus 配置文件
在Zabbix中对应的文件是/etc/zabbix/zabbix_server.conf。
请根据需要自行更改下列物理主机的IP地址192.168.10.47。
PV/etc/prometheus/prometheus.yml的中文意思是”PV/etc/prometheus/prometheus.yml”。
global:
# How frequently to scrape targets by default.
scrape_interval: 15s
# How frequently to evaluate rules.
evaluation_interval: 15s
# A list of scrape configurations.
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['192.168.10.47:49090'] #?適宜読み替えること.
3. 运行容器
3-1. 启动
与Zabbix不同,不需要单独引入数据库。
而且也不需要进行在Zabbix中进行PHP的设置。
就安装方面来说,Prometheus明显更加轻松。
$ docker-compose up -d
3-2. 检查工作状态确认
使用命令行界面进行确认。
$ docker-compose ps
Name Command State Ports
---------------------------------------------------------------------------------------
mygrafana_v8_2_0 /run.sh Up 0.0.0.0:43003->3000/tcp
myprometheus_v2_30_3 /bin/prometheus --config.f ... Up 0.0.0.0:49090->9090/tcp
使用WEB-UI进行确认
访问 http://:49090/ 确认 Prometheus 的UI 是否显示。
请访问http://:43003,确认Grafana的用户界面是否显示出来。
4. 将Grafana与Prometheus连接起来。
4-1. 登录Grafana WEB-UI
这里是http://:43003。
首次登录的ID和密码是”admin”和”admin”。
注册 Prometheus
选择《DATA SOURCES》中的Prometheus。
设置运行 Prometheus 的机器的 IP 和端口为 4-2-2。
只需要一个选项,用中国本地语言释义如下:
只要在屏幕底部执行“保存并测试”,并显示“数据源已更新”,即可。
尝试在 Grafana 仪表盘中注册监控项目。
6. 活动后的文件组织
$ tree . --charset=C --dirsfirst
.
|-- PV
| |-- etc
| | `-- prometheus
| | `-- prometheus.yml
| `-- var
| `-- lib
| `-- grafana
| |-- csv [error opening dir]
| |-- plugins
| |-- png [error opening dir]
| `-- grafana.db
`-- docker-compose.yml
请用汉语将下列内容进行同义改述,只需给出一个选项:
请使用中文进行同义改述。
以上的内容。
参考信息
・Zabbix統合監視実践入門(改訂3版)(技術評論社)
・https://kazuhira-r.hatenablog.com/entry/2019/04/29/025816
・Prometheus官方网站
・CentOS 8 实践指南(服务器搭建篇)
・Kubernetes实践指南:支持云原生应用的技术
・使用Prometheus监视Kubernetes的书籍(电子版)
请以母语中文进行再表述,只需提供一种选择。
一种处理工单的方法是按优先级处理,高优先级的工单先处理,而低优先级的工单稍后处理。