prometheus指南:采集k8s的原理和高可用存储实践
k8s零基础入门运维课程
k8s纯源码解读教程(3个课程内容合成一个大课程)
k8s运维进阶调优课程
k8s管理运维平台实战
k8s二次开发课程
cicd 课程
prometheus全组件的教程
- 01_prometheus零基础入门,grafana基础操作,主流exporter采集配置
- 02_prometheus全组件配置使用、底层原理解析、高可用实战
- 03_prometheus-thanos使用和源码解读
- 04_kube-prometheus和prometheus-operator实战和原理介绍
- 05_prometheus源码讲解和二次开发
- 06_prometheus监控k8s的实战配置和原理讲解,写go项目暴露业务指标
go语言课程
- golang基础课程
- golang实战课,一天编写一个任务执行系统,客户端和服务端架构
- golang运维开发项目之k8s网络探测实战
- golang运维平台实战,服务树,日志监控,任务执行,分布式探测
- golang运维开发实战课程之k8s巡检平台
直播答疑sre职业发展规划
项目说明
这是一个免费的prometheus底层原理课程
主要介绍两大块内容,这也是大家常见的问题
- prometheus采集k8s的原理
- prometheus的高可用存储怎么做
项目github地址
- github地址: prometheus-guidebook
项目简介
- 01 prometheus采集k8s底层原理
- 02 k8s监控指标讲解
- 03 时序监控集群存储m3db
k8s中的prometheus快速部署
部署prometheus statefulset
# 1.监控etcd需要创建 secret kubectl create secret generic etcd-certs --from-file=/etc/kubernetes/pki/etcd/healthcheck-client.crt --from-file=/etc/kubernetes/pki/etcd/healthcheck-client.key --from-file=/etc/kubernetes/pki/etcd/ca.crt -n kube-system # 2. 修改pv.yaml中的节点选择器标签 k8s-node01改为你自己的节点 # 在节点上创建数据目录 mkdir -pv /data/prometheus # 3. 部署kube-stats-metrics kubectl apply -f kube-stats-metrics # 4. 部署prometheus服务 kubectl apply -f prome_k8s_all_pod/ # 5. 使用node的ip:8091即可访问服务
部署grafana
# 1. 修改yaml中的节点选择器标签 k8s-node01改为你自己的节点 # 在节点上创建数据目录 mkdir -pv /data/grafana # 2. 部署grafana kubectl apply -f grafana_k8s.yaml # 3. 访问 节点的 :30000端口 账户密码 : admin/admin # 4. 添加prometheus数据源,如果prometheus是 hostnetwork的,直接写node的ip:port即可
部署单机版m3db
过程
- 依赖文件
m3dbnode
m3dbnode.service
m3dbnode_single.yaml
- 执行
m3db_single_install.sh
注意事项
- 单机版内嵌了etcd进程,如果测试机上有etcd的需要注意下端口冲突
m3dbnode
可以选择是否开启内嵌的m3coordinator
prometheus高可用架构图
监控方向发展指导
1.一线运维人员:学习使用、熟悉配置、掌握调优、升职加薪
- 可以从头到尾熟悉prometheus、各种exporter、alertmanager、grafana、m3db、loki等组件的使用配置
- 熟悉主流exporter(中间件、存储)的告警表达式配置
- 同时能掌握相关组件调优的经验
2.运维开发人员:学习高性能原理,可助⼒斩获⼤⼚监控运维开发offer
- 从源码级别了解prometheus高性能的设计方案
- 掌握二次开发相关组件的能力
- 了解分布式系统高可用改造方案
监控系统和运维开发
监控系统的源码解析,运维开发经验交流
161 声望
56 粉丝
推荐阅读
k8s中查看默认调度器开启的插件以及权重的含义
要点01:软件配置项的来源主要有2块:命令行参数 和 配置文件k8s中的组件一般都是遵循上面的模式我们以kube-scheduler为例命令参数举例 :可以看到--xxx=xxx的传参,当然所有参数都是有默认值的,如果你不传就走...
ning1875阅读 679
突破难关:Docker镜像和容器的区别以及构建的最佳实践
Docker 可谓是开启了容器化技术的新时代,现在无论大中小公司基本上都对容器化技术有不同程度的尝试,或是已经进行了大量容器化的改造。伴随着 Kubernetes 和 Cloud Native 等技术和理念的普及,也大大增加了业务...
张晋涛赞 4阅读 416
使用kubeasz部署高可用kubernetes集群
本实验采用kubeasz作为kubernetes环境部署工具,它是一个基于二进制方式部署和利用ansible-playbook实现自动化来快速部署高可用kubernetes集群的工具,详细介绍请查看kubeasz官方。本实验用到的所有虚拟机默认软...
李朝阳赞 4阅读 781
Jvm调优与微服务资源分配
在没有接触微服务之前,我们的java程序一般都部署在WebLogic、Tomcat这类应用服务器上,这些应用服务器本身也是基于Jvm虚拟机的。一般我们统一对应用服务器做Jvm参数调优(分配多大内存,线程池限制等),而不用...
KerryWu阅读 5.8k
不背锅运维:一文搞清楚应用发布到k8s集群的基本流程
❝关于标签的主要作用:标记、过滤、关联(主要体现在deployment、pod、service,3者标签保持一致),可设定多个标签,建议设定至少2个标签,一个为项目标签,一个为应用标签。❞
不背锅运维赞 1阅读 747
10分钟学会使用 Loki 日志聚合系统
Loki 通过使用类似 Prometheus 的标签索引机制来存储和查询日志数据,这使得它能够快速地进行分布式查询和聚合,而不需要将所有数据都从存储中加载到内存中。Loki还使用了压缩和切割日志数据的方法来减少存储空间...
Rainbond赞 1阅读 486
制作容器镜像的最佳实践
这篇文章主要是我日常工作中的制作镜像的实践, 同时结合我学习到的关于镜像制作的相关文章总结出来的. 包括通用的容器最佳实践, java, nginx, python 容器最佳实践. 最佳实践的目的一方面保证镜像是可复用的, 提...
东风微鸣云原生赞 2阅读 642
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。