当前位置: 首页 > news >正文

k8s record 20240710 监控

不是adaptor 是opetator 案例
监控有了,日志搜集呢?

一、kubelet 的小弟

kubelet — 负责维护容器的生命周期,节点和集群其他部分通信

  1. cAdvisor 集成在 Kubernetes 的 kubelet 中,能够自动发现和监控集群中所有的容器。
  2. dockershim 允许 kubelet 与 docker 守护进程通信,管理容器。k8s 1.24 版本后,Dockershim被弃,被 CRI 容器运行时接口代替,比如 containerd、CRI-O
  3. Garbage Collection 是 kubelet 的一个过程,用于清理不再需要的资源
  4. syncLoop 是一个持续的循环,定期从 API Server 获取 pod的期望状态和 节点的pod对比,发现差异,采取行动恢复与期望一致

Prometheus 部分

  1. ceph的metrics获取通过ceph mgr。也就是说Prometheus获取数据的地址,exporter的地址
  2. ceph自带 Prometheus,在Prometheus界面上的alert里面可以找到问题

TCP 和 UDP 可以同时使用相同的端口号,因为它们的协议栈在操作系统中是分离的。这意味着操作系统可以区分同一端口号上的 TCP 和 UDP 流量。

 netstat -tlunp |grep alertmanager
tcp6       0      0 :::9093                 :::*                    LISTEN      4182/alertmanager
tcp6       0      0 :::9094                 :::*                    LISTEN      4182/alertmanager
udp6       0      0 :::9094                 :::*                                4182/alertmanager

端口 9094 可以用于集群通信或 HTTP/2 gRPC 服务。
集群通信:在 Alertmanager 集群中,多个 Alertmanager 实例之间需要通信来共享告警状态和信息。这种通信可以使用 TCP 或 UDP 协议。
HTTP/2 gRPC 服务:某些高级通信需求可能会使用 HTTP/2 协议,这通常基于 TCP 实现。

Alertmanager 通常使用 TCP 端口 9093 来接收来自 Prometheus 的告警。
Prometheus 发送告警到 Alertmanager 时,会通过 HTTP 请求使用 TCP 端口 9093。

在 alertmanager.yml 那里配置发送告警给谁。然后在Prometheus.yml 里配置9093 也就是alertmanager的端口和 ip

3. 自动化运维

Ansible是不需要在其他节点安装客户端,只要能连进去就行,成百上千的机器方便。它是在一台机器上起10到20个进程去批量地做。
Saltstack 其他机器需要安装 minimal 服务,从master节点拿任务执行。它就被ansible的部署方式快很多

通过这些做运维平台,通过平台管理成百上千的机器。这就是所谓的运维开发。
在这里插入图片描述
Puppet 由于是 R 语言编写的,用的比较少,多用于数据分析。它能够轻松管理上万台节点

4. 日志收集

  1. Logstash 功能虽然强大,但是它依赖 Java. 数据量大的时候消耗系统资源大,影响性能
    Filebeat 基于Go 语言,无依赖,轻量级,性能好。版本7.7.1

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • CCSI: 数据无关类别增量学习的持续类特定印象| 文献速递-基于深度学习的多模态数据分析与生存分析
  • Milvus 核心设计(1) ---- 数据一致性的等级及使用场景
  • linux nethogs网络监控程序(端口监控、流量监控、上传流量、下载流量、进程监控进程网络)
  • Linux程序替换
  • NAT地址转换+多出口智能选路,附加实验内容
  • unity 2020版本packManager没有AssetBundles
  • stm32h743 NetXduo 实现http server CubeIDE+CubeMX
  • 深度学习和NLP中的注意力和记忆
  • Redis的一个典型应用
  • TensorFlow系列:第四讲:MobileNetV2实战
  • SpringBoot:SpringBoot中如何实现对Http接口进行监控
  • Python爬虫:基础爬虫架构及爬取证券之星全站行情数据!
  • spring管理bean源码解析
  • [GICv3] 3. 物理中断处理(Physical Interrupt Handling)
  • 【 香橙派 AIpro评测】烧系统到运行并使用Jupyter Lab 界面体验 AI 应用样例(新手福音)
  • 【140天】尚学堂高淇Java300集视频精华笔记(86-87)
  • 【Leetcode】104. 二叉树的最大深度
  • AHK 中 = 和 == 等比较运算符的用法
  • CentOS 7 防火墙操作
  • HTML5新特性总结
  • js数组之filter
  • KMP算法及优化
  • PHP变量
  • rabbitmq延迟消息示例
  • Unix命令
  • 给第三方使用接口的 URL 签名实现
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • 用jQuery怎么做到前后端分离
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • ​configparser --- 配置文件解析器​
  • #AngularJS#$sce.trustAsResourceUrl
  • ()、[]、{}、(())、[[]]命令替换
  • (24)(24.1) FPV和仿真的机载OSD(三)
  • (day 12)JavaScript学习笔记(数组3)
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (pojstep1.1.1)poj 1298(直叙式模拟)
  • (二十六)Java 数据结构
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • (力扣题库)跳跃游戏II(c++)
  • (小白学Java)Java简介和基本配置
  • (源码分析)springsecurity认证授权
  • (转)ObjectiveC 深浅拷贝学习
  • (转载)VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)
  • .Net CoreRabbitMQ消息存储可靠机制
  • .NET Core跨平台微服务学习资源
  • .NET 项目中发送电子邮件异步处理和错误机制的解决方案
  • .NET/C# 推荐一个我设计的缓存类型(适合缓存反射等耗性能的操作,附用法)
  • .NET处理HTTP请求
  • .NET高级面试指南专题十一【 设计模式介绍,为什么要用设计模式】
  • .NET轻量级ORM组件Dapper葵花宝典
  • .net中生成excel后调整宽度
  • @Bean, @Component, @Configuration简析
  • @SuppressWarnings注解
  • [4]CUDA中的向量计算与并行通信模式
  • [AI 大模型] 百度 文心一言