SS00007.EBpositions——|Hadoop&EbProjec电商实时数仓项目.v07|——|EbProject.v07|可视化&Prometheus部署|

一、prometheus部署:安装go语言环境
### --- 下载版本包并解压

~~~     # 由于Prometheus 是用golang开发的,所以首先安装一个go环境,Go语言是跨平台,支持Windows、Linux、
~~~     # Windows :go1.8.3.windows-amd64.msi (78MB)
~~~     Linux :      go1.8.3.linux-amd64.tar.gz (86MB)
~~~     Mac :        go1.8.3.darwin-amd64.tar.gz (85MB)
~~~     Source:  go1.8.3.src.tar.gz (15MB)
~~~     # 下载go语言版本包:https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz
[root@hadoop00 software]# wget -c https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz

~~~     # 解压go语言版本包
[root@hadoop00 software]# tar -zxvf go1.8.3.linux-amd64.tar.gz -C ../servers/
### --- 配置go语言环境变量

~~~     # 配置go语言环境变量
[root@hadoop00 ~]# vim /etc/profile
## GO_HOME
export GO_HOME=/opt/yanqi/servers/go
export PATH=:$GO_HOME/bin:$PATH
export GOROOT=/opt/yanqi/servers/go
export PATH=:$GOROOT/bin:$PATH
~~~     # 使环境变量生效

[root@hadoop00 ~]# source /etc/profile
### --- 验证go语言环境是否生效

~~~     # 验证go语言环境版本
[root@hadoop00 ~]# go version
go version go1.8.3 linux/amd64
二、prometheus部署
### --- 下载prometheus版本包

~~~     # 下载prometheus版本包
[root@hadoop00 software]# wget -c https://github.com/prometheus/prometheus/releases/download/v2.22.1/prometheus-2.22.1.linux-amd64.tar.gz
### --- 解压prometheus版本包

~~~     # 加压prometheus版本包
[root@hadoop00 software]# tar -zxvf prometheus-2.22.1.linux-amd64.tar.gz -C ../servers/
~~~     # 修改版本包名称
[root@hadoop00 ~]# cd /opt/yanqi/servers/
[root@hadoop00 servers]# mv prometheus-2.22.1.linux-amd64/ prometheus
~~~     # 修改目录权限

[root@hadoop00 ~]# chown -R root:root /opt/yanqi/servers/prometheus/
### --- 修改prometheus配置文件

~~~     # 修改prometheus版本包名称
[root@hadoop00 ~]# vim /opt/yanqi/servers/prometheus/prometheus.yml
 ~~~    # 第21~45行:配置如下参数
 scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: 'prometheus'

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
    - targets: ['hadoop00:9090']

  - job_name: 'bigdata-hadoop00'
    static_configs:
    - targets: ['hadoop00:9100']

  - job_name: 'bigdata-hadoop01'
    static_configs:
    - targets: ['hadoop01:9100']

  - job_name: 'bigdata-hadoop02'
    static_configs:
    - targets: ['hadoop02:9100']

  - job_name: 'bigdata-hadoop03'
    static_configs:
    - targets: ['hadoop03:9100']

  - job_name: 'bigdata-pushgateway'
    static_configs:
    - targets: ['hadoop00:9091']
### --- 启动prometheus服务

~~~     # 启动prometheus服务:启动之前同步时间:ntpdate -u ntp.api.bz
[root@hadoop00 ~]# /opt/yanqi/servers/prometheus/prometheus  --config.file=/opt/yanqi/servers/prometheus/prometheus.yml
三、通过web_UI访问prometheus:
### --- 通过web_UI访问prometheus:

~~~     通过web_UI访问prometheus:http://hadoop00:9090/graph
~~~     查看监控到的主机
附录一:报错处理一:
### --- 报错现象:

[root@hadoop00 ~]# /opt/yanqi/servers/prometheus/prometheus  --config.file=/opt/yanqi/servers/prometheus/prometheus.yml
~~~输出报错信息:
level=warn ts=2021-11-30T08:50:49.794Z caller=scrape.go:1091 component="scrape manager" scrape_pool=bigdata-pushgateway target=http://hadoop00:9091/metrics msg="Appending scrape report failed" err="out of bounds"
level=warn ts=2021-11-30T08:50:50.466Z caller=scrape.go:1091 component="scrape manager" scrape_pool=bigdata-hadoop03 target=http://hadoop03:9100/metrics msg="Appending scrape report failed" err="out of bounds"
level=warn ts=2021-11-30T08:50:51.664Z caller=scrape.go:1091 component="scrape manager" scrape_pool=bigdata-hadoop01 target=http://hadoop01:9100/metrics msg="Appending scrape report failed" err="out of bounds"
level=warn ts=2021-11-30T08:50:53.331Z caller=scrape.go:1091 component="scrape manager" scrape_pool=bigdata-hadoop02 target=http://hadoop02:9100/metrics msg="Appending scrape report failed" err="out of bounds"
level=warn ts=2021-11-30T08:52:54.730Z caller=scrape.go:1091 component="scrape manager" scrape_pool=prometheus target=http://hadoop00:9090/metrics msg="Appending scrape report failed" err="out of bounds"
### --- 报错分析:

~~~     是时间跳变导致的,与Prometheus 机制有关;prometheus和grafana都会获取不到数据
~~~     猜测如下,vmotion后操作系统时间发生了向后跳变,vmotion从跳变时间开始取数,grafna当前当前时间显示无数据,修改操作系统时间后与Prometheus最后取数时间发生冲突,报“Error on ingesting samples that are too old or are too far into the future”无法取数。
~~~     # 解决方法:
~~~     清空prometheus2.0.0.data.metrics 文件后重启prometheus 数据正常。
### --- 解决方案:
~~~     删除prometheus下的data.metrics目录,并重启prometheus服务

[root@hadoop00 ~]# rm -rf /opt/yanqi/servers/prometheus/data/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yanqi_vip

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值