系列文章
第一章:✨ k8s入门:裸机部署 k8s 集群
第二章:✨ k8s入门:部署应用到 k8s 集群
第三章:✨ k8s入门:service 简单使用
第四章:✨ k8s入门:StatefulSet 简单使用
第五章:✨ k8s入门:存储(storage)
第六章:✨ K8S 配置 storageclass 使用 nfs 动态申领本地磁盘空间
第七章:✨ k8s入门:配置 ConfigMap & Secret
第八章:✨ k8s入门:k8s入门:Helm 构建 MySQL
第九章:✨ k8s入门:kubernetes-dashboard 安装
第十章:✨ k8s入门:kube-prometheus-stack 全家桶搭建(Grafana + Prometheus)
Artifact Hub 官网:https://artifacthub.io/packages/helm/prometheus-community/kube-prometheus-stack
一、简介
安装 kube-prometheus 堆栈、Kubernetes 清单、Grafana 仪表板和 Prometheus 规则的集合,并结合文档和脚本,使用Prometheus Operator 通过 Prometheus 提供易于操作的端到端 Kubernetes 集群监控。
二、安装
1、helm 安装
helm 安装 kube-prometheus-stack
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
helm install prometheus-community/kube-prometheus-stack --generate-name
2、yaml 清单安装
上面可能网络原因安装失败,可以从 GitHub 上下载文件安装
GitHub 下载地址:https://github.com/prometheus-operator/kube-prometheus
使用 manifests 文件夹创建 kube-prometheus-stack
kubectl apply --server-side -f manifests/setup
until kubectl get servicemonitors --all-namespaces ; do date; sleep 1; echo ""; done
kubectl apply -f manifests/
想要删除 manifests 文件夹创建的 kube-prometheus-stack 可使用如下命令
kubectl delete --ignore-not-found=true -f manifests/ -f manifests/setup
3、查看资源
使用 manifests 文件夹创建成功会创建一个 namespace/monitoring,以及所需的 service、StatefulSet、Deployment、Secret、ConfigMap 等等…(下面图是错误解决的截图)
4、解决错误 Error: ImagePullBackOff
错误如下,拉去镜像失败
查看 monitorin 命名空间下的所有资源 kubectl get all -n monitoring
,发现有两个资源镜像拉去错误
解决方法
- 方法一:从 dockerHub 上拉去镜像,在使用 docker tag 复制一份镜像与上面拉去镜像名保持一致(需要将镜像下载指定的 node 节点,即 pod 部署哪个节点,哪个节点就需要有该镜像)
# dockerHub 上拉去镜像
docker pull willdockerhub/prometheus-adapter:v0.9.1
docker pull bitnami/kube-state-metrics:2.5.0
# 镜像重命名
docker tag willdockerhub/prometheus-adapter:v0.9.1 k8s.gcr.io/prometheus-adapter/prometheus-adapter:v0.9.1
docker tag bitnami/kube-state-metrics:2.5.0 k8s.gcr.io/kube-state-metrics/kube-state-metrics:v2.5.0
- 方法二:在
kubernetes-dashboard
修改配置文件并重启,没安装的可参考我上一篇文章
如果你没有安装 kubernetes-dashboard,则可以单个 yaml 文件去修改,然后重新部署即可
5、安装成功
重启过后,如下,所有资源启动成功
如上安装完成所有 service 都是ClusterIP 类型,所有资源只能集群内部相互访问,下面修改 service 类型为 NodePort 类型,保证物理节点可访问
三、访问测试
1、grafana 物理节点访问
kubernetes-dashboard
修改 grafana 服务配置,添加物理节点端口 nodePort=13000
访问测试 http://192.168.25.100:13000/ 默认用户名密码 admin/admin
2、Prometheus 物理节点访问
kubernetes-dashboard
修改 prometheus-k8s 配置,添加物理节点端口 nodePort=19090
文章来源:https://www.toymoban.com/news/detail-481983.html
访问测试 http://192.168.25.100:19090/
文章来源地址https://www.toymoban.com/news/detail-481983.html
到了这里,关于k8s入门:kube-prometheus-stack 全家桶搭建(Grafana + Prometheus)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!