arptables介绍arptables是linux中用于管理arp包过滤规则的工具,也基于netfilter框架
arp协议本身非常简单,缺乏安全验证机制,因此容易遭受攻击
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647# arptables应用场景1.防御arp欺骗攻击者伪造arp应答包,导致受害者的arp缓存被污染,将本应发送给合法主机的流量发送给了攻击者arptables可以桂枝规则,只允许来自可信MAC地址的arp应答包2.防御arp泛洪攻击者发送大量伪造...
iptables防火墙语法表用以对功能进行分组,最常用的有:
filter表 默认表,负责过滤数据包(常用
nat表 负责网络地址转换
mangle表 用以修改数据包头(不常用
raw表 决定是否对数据包进行状态跟踪(不常用
security表 最不常用的表,与selinux相关,用于MAC(强制访问控制)网络规则
这几张表的处理顺序是:raw→mangle→nat→filter→security
链
规则的有序集合,数据包在经过netfilter时,会进入对应的链进行检查
input 处理入栈请求的包
output 处理出栈包
forward 处理转发数据包,实现不同网段间通信
...
Netfilter介绍Linux内核防火墙基于netfilter框架实现,通过在内核网络协议栈中嵌入钩子点(链),来允许内核模块在数据包处理的关键阶段对其进行检查、修改、拦截或转发
链
NF_IP_PRE_ROUTING 数据包进入网络层后,路由决策前DNAT
NF_IP_LOCAL_IN 数据包被路由到本地主机
NF_IP_FORWARD 数据包要转发到其他主机
NF_IP_LOCAL_OUT 本地主机生成的数据包SNAT
NF_IP_POST_ROUTING 路由后,数据包即将离开本机SNAT
表
为了阻止复杂的过滤逻辑,netfilter定义了不同表:
filter表:用于数...
Prometheus-client模块自定义metrics指标
特征维度
SDK(直接暴露)
Exporter(转换代理)
Pushgateway(推送中转)
数据流向
拉取 (Pull)
拉取 (Pull)
推送 → 暂存 → 拉取 (Push → Pull)
侵入性
高(需改代码)
无(独立进程)
低(调用推送API即可)
适用对象
可控的、自研的服务
不可控的、第三方的服务
生命周期短、无法被拉取的任务
模型契合度
完全契合 Prometheus 拉模型
完美契合,是拉模型的延伸
妥协方案,破坏了部分语义(如实例状态)
123456789101112131...
环境准备123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354# 使用kind部署k8s集群,版本v1.31,有代理curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.31.0/kind-linux-amd64chmod +x ./kindsudo mv ./kind /usr/local/bin/kindcat > kind-config.yaml <<EOFkind: Cluster...
在大规模监控场景下如果只用一个Prometheus server采集数据,可能跨数据中心,延迟大,配置复杂,同时单个Prometheus压力大,容易性能瓶颈
分布式采集:每个数据中心独立 Prometheus 负责本地采集
集中聚合:中心 Prometheus 通过 /federate 拉取部分指标
降低压力:避免单个 Prometheus 采集全网数据。
标签保真:honor_labels: true 保留原始标签,方便分析来源
灵活选择:match[] 决定上游拉哪些数据,不浪费带宽。
部署下级Prometheus123456789101112131415161718...
概述之前学习普罗米修斯的时候还是个初学者,现在工作了几年,因为接触了很多其他领域的知识,对Prometheus有更深的理解了,
所以我就以现在的角度重新整理一遍Prometheus相关的知识点
exporter官网:Exporters and integrations | Prometheus
特点数据特点
数据 = 指标(metric)+标签(labels)+时间序列(time series)
指标:要监控的具体项,比如CPU用户态使用率、CPU等待时间、可用内存等 标签:要为指标附加的维度信息,用来区分不同业务、环境等,同k8s的labels 时间序列:指标随时间变化的数值...
本文基于上一篇《Zabbix7使用docker-compose部署》
集成deepseek
准备zabbix如果需要执行一个脚本,而我们的zabbix-server使用的是docker-compose的方式部署的,所以就需要在容器中/usr/lib/zabbix/alertscripts/目录中存放脚本文件。所以我们可以在docker-compose文件中修改,让本地某一目录挂载到脚本目录中
那么先在本地创建一个目录用以存放脚本文件的123456mkdir -p /root/zabbix-docker-compose/zabbix-scr...
Docker Compose部署zabbix-server
单文件管理所有服务
依赖关系清晰
一键启停/重建
版本控制友好
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970# 参考文档https://github.com/zabbix/zabbix-dockermkdir zabbix-docker-composecd zabbix-docker-compose/g...
最简单的自定义监控项12345678910111213141516171819# 配置文件位置/etc/zabbix/zabbix_agent2.conf# 子配置文件位置/etc/zabbix/zabbix_agent2.d/*.conf# 创建子配置文件vim /etc/zabbix/zabbix_agent2.d/custom_monitor.conf# 配置文件格式说明UserParameter=<key>,<command>UserParameter=<key[*]>,<command $1 $2 ...><key>:...