<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SRE 架构 on SRE &amp; AI 实践录</title><link>https://sre-ai-blog.pages.dev/zh/categories/sre-%E6%9E%B6%E6%9E%84/</link><description>Recent content in SRE 架构 on SRE &amp; AI 实践录</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Sun, 26 Jul 2026 01:29:48 +0800</lastBuildDate><atom:link href="https://sre-ai-blog.pages.dev/zh/categories/sre-%E6%9E%B6%E6%9E%84/index.xml" rel="self" type="application/rss+xml"/><item><title>深度学习在 SRE 智能运维中的实践探索</title><link>https://sre-ai-blog.pages.dev/zh/posts/aiops-practice/</link><pubDate>Mon, 20 Jul 2026 10:00:00 +0800</pubDate><guid>https://sre-ai-blog.pages.dev/zh/posts/aiops-practice/</guid><description>&lt;h2 id="一传统-sre-运维的痛点与-ai-引入背景"&gt;一、传统 SRE 运维的痛点与 AI 引入背景&lt;/h2&gt;
&lt;p&gt;在现代大型分布式系统中，SRE 团队每天需要面对成千上万条监控指标以及海量的日志数据。传统的报警规则依赖于人工设定的静态阈值，极易引发&amp;quot;告警风暴&amp;quot;或出现漏报现象。&lt;/p&gt;
&lt;h2 id="二基于时间序列分析的异常检测模型"&gt;二、基于时间序列分析的异常检测模型&lt;/h2&gt;
&lt;p&gt;针对 KPI 时间序列的周期性与突发性，我们采用了结合 Transformer 与 LSTM 的混合神经网络模型。&lt;/p&gt;</description></item><item><title>云原生混沌工程落地指南</title><link>https://sre-ai-blog.pages.dev/zh/posts/chaos-engineering/</link><pubDate>Thu, 18 Jun 2026 10:00:00 +0800</pubDate><guid>https://sre-ai-blog.pages.dev/zh/posts/chaos-engineering/</guid><description>&lt;h2 id="一混沌工程简介"&gt;一、混沌工程简介&lt;/h2&gt;
&lt;p&gt;混沌工程是一种在分布式系统上进行的实验性方法，旨在建立对系统抵御生产环境中不可预测条件的信心。&lt;/p&gt;
&lt;h2 id="二chaos-mesh-实践"&gt;二、Chaos Mesh 实践&lt;/h2&gt;
&lt;p&gt;我们基于 Chaos Mesh 构建了完整的混沌工程平台，覆盖了网络、Pod、节点三个维度的故障注入。&lt;/p&gt;
&lt;h3 id="核心示例网络延迟故障注入"&gt;核心示例：网络延迟故障注入&lt;/h3&gt;




&lt;div class="code-block-wrapper" x-data="{ copied: false }"&gt;
 &lt;template data-code&gt;apiVersion: chaos-mesh.org/v1alpha1
kind: NetworkChaos
metadata:
 name: network-delay
spec:
 action: delay
 mode: one
 selector:
 namespaces: [&amp;#34;production&amp;#34;]
 labelSelectors:
 app: payment-service
 delay:
 latency: &amp;#34;500ms&amp;#34;
 jitter: &amp;#34;100ms&amp;#34;
 duration: &amp;#34;5m&amp;#34;&lt;/template&gt;
 
 &lt;div class="code-block-header"&gt;
 &lt;div class="flex items-center gap-2"&gt;
 &lt;span class="w-3 h-3 rounded-full bg-red-500"&gt;&lt;/span&gt;
 &lt;span class="w-3 h-3 rounded-full bg-yellow-500"&gt;&lt;/span&gt;
 &lt;span class="w-3 h-3 rounded-full bg-green-500"&gt;&lt;/span&gt;
 &lt;/div&gt;
 &lt;div class="flex items-center gap-3 ml-auto"&gt;
 &lt;span class="text-xs text-slate-400 font-mono"&gt;yaml&lt;/span&gt;
 &lt;button
 @click="
 navigator.clipboard.writeText($el.closest('.code-block-wrapper').querySelector('template').content.textContent).then(() =&gt; {
 copied = true;
 setTimeout(() =&gt; copied = false, 2000);
 })
 "
 class="flex items-center gap-1 text-xs text-slate-400 hover:text-white transition-colors px-2 py-1 rounded hover:bg-white/10"
 &gt;
 &lt;svg class="w-3.5 h-3.5" fill="none" stroke="currentColor" viewBox="0 0 24 24"&gt;
 &lt;path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"/&gt;
 &lt;/svg&gt;
 &lt;span x-text="copied ? '已复制' : '复制'"&gt;&lt;/span&gt;
 &lt;/button&gt;
 &lt;/div&gt;
 &lt;/div&gt;
 
 &lt;div class="code-block-body"&gt;
 &lt;div class="code-block-inner"&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;apiVersion&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;chaos-mesh.org/v1alpha1&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;kind&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;NetworkChaos&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;metadata&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;network-delay&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;spec&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;delay&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;mode&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;one&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;selector&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;namespaces&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;production&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;labelSelectors&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;app&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;payment-service&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;delay&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;latency&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;500ms&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;jitter&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;100ms&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;duration&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;5m&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;/div&gt;
 &lt;/div&gt;
&lt;/div&gt;</description></item><item><title>Prometheus + eBPF 构建毫秒级可观测系统</title><link>https://sre-ai-blog.pages.dev/zh/posts/ebpf-observability/</link><pubDate>Fri, 10 Jul 2026 00:00:00 +0000</pubDate><guid>https://sre-ai-blog.pages.dev/zh/posts/ebpf-observability/</guid><description>&lt;h2 id="一为什么需要-ebpf-可观测性"&gt;一、为什么需要 eBPF 可观测性&lt;/h2&gt;
&lt;p&gt;传统可观测性方案依赖应用埋点和 sidecar 代理，存在明显性能开销和盲区。eBPF（Extended Berkeley Packet Filter）允许在内核中安全执行沙箱程序，在不修改应用代码、不引入额外延迟的前提下，捕获系统调用、网络包和文件操作等底层事件。&lt;/p&gt;
&lt;h2 id="二基于-ebpf-的三层监控体系"&gt;二、基于 eBPF 的三层监控体系&lt;/h2&gt;
&lt;p&gt;我们将可观测性拆分为网络、存储和应用三层。网络层通过 eBPF 追踪 TCP 连接延迟与重传率；存储层监控文件 I/O 与页缓存命中率；应用层则利用 eBPF uprobe 捕获关键函数调用链。&lt;/p&gt;</description></item><item><title>Kubernetes 集群高可用与故障自动愈合实践</title><link>https://sre-ai-blog.pages.dev/zh/posts/kubernetes-ha/</link><pubDate>Thu, 25 Jun 2026 00:00:00 +0000</pubDate><guid>https://sre-ai-blog.pages.dev/zh/posts/kubernetes-ha/</guid><description>&lt;h2 id="一控制面多活部署"&gt;一、控制面多活部署&lt;/h2&gt;
&lt;p&gt;Kubernetes 控制面的高可用是所有上层服务稳定的基石。我们采用三节点多活部署模式，通过负载均衡器分发 API Server 请求，etcd 集群以 Raft 协议保证数据一致性。&lt;/p&gt;
&lt;h2 id="二etcd-集群调优"&gt;二、etcd 集群调优&lt;/h2&gt;
&lt;p&gt;etcd 是集群状态存储的核心，其性能直接关系到集群恢复速度。实践中我们将 etcd 的数据目录部署在 NVMe SSD 上，调整 &lt;code&gt;--quota-backend-bytes&lt;/code&gt; 至 8GB，并开启客户端侧压缩。&lt;/p&gt;</description></item><item><title>GitOps 工作流在 Kubernetes 集群管理中的最佳实践</title><link>https://sre-ai-blog.pages.dev/zh/posts/gitops-workflow/</link><pubDate>Sat, 25 Jul 2026 00:00:00 +0000</pubDate><guid>https://sre-ai-blog.pages.dev/zh/posts/gitops-workflow/</guid><description>&lt;h2 id="一gitops-概述"&gt;一、GitOps 概述&lt;/h2&gt;
&lt;p&gt;GitOps 是一种以 Git 仓库为单一事实来源的运维模型，通过声明式配置和自动化同步机制，确保集群状态始终与仓库中的期望状态一致。在 Kubernetes 环境中，GitOps 已经成为管理多集群、多环境部署的事实标准。&lt;/p&gt;
&lt;h2 id="二argocd-最佳实践"&gt;二、ArgoCD 最佳实践&lt;/h2&gt;
&lt;p&gt;推荐使用 ApplicationSet 管理多集群部署，结合 Kustomize 实现环境差异化配置。ArgoCD 提供的自动同步、自动修复和漂移检测功能，可以大幅降低运维负担。&lt;/p&gt;</description></item></channel></rss>