k8s 安装 prometheus 过程记录

开始以为只要安装 prometheus-operator 就行了。

git clone https://github.com/coreos/prometheus-operator.git
cd prometheus-operator
sed 's/namespace: default/namespace: monitoring/g' bundle.yaml | kubectl apply -f -

安装后发现只有一个 prometheus-operator pod 。

$ kubectl get pods -n monitoring
NAME                                  READY   STATUS    RESTARTS   AGE
prometheus-operator-99dccdc56-qq5lm   1/1     Running   0          20m

这时才发现真正要安装的是 kube-prometheus

https://github.com/coreos/kube-prometheus.git
cd kube-prometheus
kubectl create -f manifests/setup
until kubectl get servicemonitors --all-namespaces ; do date; sleep 1; echo ""; done
kubectl create -f manifests/

kube-prometheus 中包含了 prometheus 监控所用到的所有组件,当然也包含 prometheus-operator 。

$ kubectl get pods -n monitoring
NAME                                  READY   STATUS    RESTARTS   AGE
alertmanager-main-0                   2/2     Running   0          112m
grafana-58dc7468d7-pv256              1/1     Running   0          112m
kube-state-metrics-769f4fd4d5-4hfpk   3/3     Running   0          112m
node-exporter-4grdx                   2/2     Running   0          112m
prometheus-adapter-5cd5798d96-6zq6f   1/1     Running   0          112m
prometheus-k8s-0                      3/3     Running   1          112m
prometheus-operator-99dccdc56-vqq7m   1/1     Running   0          112m

安装 prometheus 之前,运行 kubectl top 命令会报错 。

$ kubectl top node
Error from server (NotFound): the server could not find the requested resource (get services http:heapster:)

这是由于没有安装 metrics-server ,在 kube-prometheus 的 readme 中有这样一段说明文字:

The kube-prometheus stack includes a resource metrics API server, so the metrics-server addon is not necessary. Ensure the metrics-server addon is disabled on minikube.

从而知道 kube-prometheus 中包含了 resource metrics API server ,所以安装好 kube-prometheus 之后 kubectl top node 也能正常执行了。

ubectl top nodes
NAME          CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%
k8s-master0   1715m        85%    1001Mi          26%
k8s-master1   347m         17%    972Mi           25%
k8s-master2   286m         14%    1016Mi          26%
k8s-node4     373m         9%     1550Mi          19% 

安装好 prometheus 之后通过 kubectl port-forward 命令暴露端口,可以通过浏览器分别访问 Prometheus, Grafana, AlertManager 控制台了,控制台效果见 Kubernetes Monitoring with Prometheus

kubectl --namespace monitoring port-forward svc/prometheus-k8s 9090 --address 10.0.1.81
kubectl port-forward $(kubectl get  pods --selector=app=grafana -n  monitoring --output=jsonpath="{.items..metadata.name}") -n monitoring 3000 --address 10.0.1.81
kubectl port-forward -n monitoring alertmanager-main-0 9093 --address 10.0.1.81

注:上面的 10.0.1.81 换成你的服务器 IP 地址,如果不指定 --address ,只能通过 localhost 访问。

原文地址:https://www.cnblogs.com/dudu/p/12146344.html

时间: 2024-09-28 23:46:54

k8s 安装 prometheus 过程记录的相关文章

redhat6.0 安装ORACLE11GR2过程记录

vawaretools安装 我的是8.0vm 1,vm=>install vmtools 2,会在redhat里出现一个虚拟光驱图标. 3,复制里面的文件到root目录下. 4,解压缩文件 tar -XXXXX 5,打开终端用命令进入相应目录. 6,执行./vmwareXXXXXX,注意./后面没有空格 7,一路回车, 最后安装成功. 挂载光盘 查看磁盘情况如下: [[email protected] ~]# df -h Filesystem            Size  Used Avai

Python 安装pyMySQL过程记录

在使用 PyMySQL 之前,我们需要确保 PyMySQL 已安装. PyMySQL 下载地址:https://github.com/PyMySQL/PyMySQL. 如果还未安装,我们可以使用以下命令安装最新版的 PyMySQL: $ pip3 install PyMySQL 如果你的系统不支持 pip 命令,可以使用以下方式安装: 1.使用 git 命令下载安装包安装(你也可以手动下载): $ git clone https://github.com/PyMySQL/PyMySQL $ cd

阿里云云服务器 centos 7.4 安装mysql 过程记录

写在前面 1.centos中service指令被systemctl指令所取代,查看各服务的运行状态需要换systemctl来做 2.mysql使用systemctl的方式启动没有成功,是用mysqld --defaults-file=/path --user=mysql指令启动成功的 3.在linux中安装的版本应该是linux generic版本,所以去mysql下载的时候,就选linux generic版本 4.centos中的防火墙不再是iptables,被替换成了firewalld 5.

vim安装 YCM 过程记录

YCM(YouComplateMe) 属于Vim中大神级的插件,提供了类似于巨硬爸爸的VS中的代码补全,但是其安装方式也是比较复杂,因此特意写下一篇记录,记录下我自己如何安装这一插件的过程: 检查自己的vim版本是否在7.9版本之上.是否支持Pthon很幸运我的vim版本是8.0 vim --version #查看vim版本以及是否支持Python 支持的话会在前方出现一个‘+’字符 2.  安装各类可能需要的环境 编译 YouCompleteMe 插件时需要依赖 cmake 构建 Makefi

VirtualBox中安装CentOS7过程记录

在开发过程中常常需要进行一些预研,而有些操作对操作系统可能具有破坏性且是不可恢复的,或者需要在不同的操作系统中去观察结果,虽然在某些场合下Ghost可以解决一部分问题,但是有时候很繁琐,因此在虚拟机中进行测试不失为一种不错的选择.自2011年以来,一直在学习一些有关Linux下的知识,包括Mono+XSP运行ASP.NET程序,搭建Hadoop学习环境.Nginx测试环境等.在虚拟机软件方面先后尝试过VMware.Hyper-V及VirtualBox,最终选择了VirtualBox,理由是开源免

cygwin 安装openresty过程记录

步骤: 1,cygwin最新版本. 2,cygwin安装模块:gcc, make, openssl, pcre, readline, perl, wget, unzip, sqlite.(应该是全的,在后面编译安装软件的时候会提示缺少的模块或命令,后续可以再装的) 3,cygwin手工下载源码编译安装:luarocks, lua5.1.5, 然后运行luarocks install xx命令安装其他模块(如 lsqlite3)等. 4,ngx_openresty1.7.10.2编译安装.参照(h

安装scikit-learn过程记录

环境:Windows 10 X64企业版. 安装python2.7: 官网下载python-2.7.12.amd64.msi安装文件,过程不赘述.安装完成后在PATH环境变量中加入%PYTHON_HOME% 安装pip: 把D:\Python27\Scripts也加到PATH环境变量. easy_install和pip easy_insall的作用和perl中的cpan,ruby中的gem类似,都提供了 在线一键安装模块的傻瓜方便方式,而pip是easy_install的改进版,提供更好的提示信

CentOS 6.5 安装mysql 过程记录

下载的时候一定选对应的版本, el6 还是el7 或者其他版本,不然会出现意向不到的惊喜 比如:我刚开始的时候下载的 el7 版本的 mysql , 然后安装的时候 就会出现: libc.so.6(GLIBC_2.14)(64bit) is needed by MySQL-server-5.5.62-1.el7.x86_64 libc.so.6(GLIBC_2.17)(64bit) is needed by MySQL-server-5.5.62-1.el7.x86_64 然后我根据这个线索,去

安装rabbitMQ过程记录

C:\Users\flycatony> cd C:\Program Files\RabbitMQ Server\rabbitmq_server-3.8.2\sbinC:\Program Files\RabbitMQ Server\rabbitmq_server-3.8.2\sbin>rabbitmq-plugins enable rabbitmq_management Enabling plugins on node [email protected]: rabbitmq_management