داشبورد زیرساخت ها
1) چرا شما به آن نیاز دارید
یک تصویر واحد از دولت: از خوشه ها و شبکه ها به پایگاه داده ها و صف ها.
RCA سریع و پس از مرگ: یک دسته از معیارها ↔ سیاهههای مربوط ↔ ردیابی.
SLO توسط سرویس و پلت فرم: کنترل در دسترس بودن و تاخیر.
شفافیت FinOps: حجم/هزینه توسط خدمات، مستاجر و محیط.
انطباق/امنیت: وضعیت تکه ها/آسیب پذیری ها، دسترسی ها، ناهنجاری ها.
روش ها: سیگنال های طلایی (تاخیر، ترافیک، خطاها، اشباع)، RED (نرخ، خطاها، مدت زمان) برای درخواست ها، استفاده (استفاده، اشباع، خطاها) برای منابع.
2) اصول داشبورد خوب
عملی - هر پانل به «چه کاری باید انجام دهد» پاسخ می دهد.
سلسله مراتب: بررسی اجمالی → دامنه → شیرجه عمیق → خام.
قالب ها/متغیرها: «خوشه»، «فضای نام»، «سرویس»، «مستاجر»، «env».
واحد یکنواخت: ms برای تاخیر،٪، RPS، ops/sec، بایت.
تایمر ثابت: به طور پیش فرض 1-6 ساعت، ایستگاه از پیش تنظیم سریع 5m/15m/24h.
Drilldown: از پانل به سیاهههای مربوط (Loki/ELK) و آهنگ (Tempo/Jaeger).
مالکیت: مالک در داشبورد، SLO، runbook، تماس در هنگام تماس نشان داده می شود.
3) ساختار پوشه و نقش
00_Overview - نمای کلی سطح بالا از پلت فرم.
10_Kubernetes - خوشه ها، گره ها، حجم کار، HPA/VPA، ظروف.
20_Network_Edge - ورود/نماینده/Nginx، LB، DNS، CDN، WAF.
30_Storage_DB - PostgreSQL/MySQL، Redis، Kafka/RabbitMQ، ذخیره سازی شی.
40_CICD_Runner - خطوط لوله، عوامل، مصنوعات، رجیستری.
50_Security_Compliance - آسیب پذیری ها، تکه ها، RBAC، رویدادهای حسابرسی.
60_FinOps_Cost - هزینه هر سرویس/مستاجر/خوشه، دفع.
99_Runbooks - لینک به دستورالعمل ها و کارت های SLO.
نقش ها: بستر های نرم افزاری-SRE (دسترسی کامل), خدمات مالک (فضاهای خود), امنیت/انطباق, امور مالی/FinOps, نمایش فقط.
4) داشبورد نمای کلی پلت فرم (فرود)
هدف: در ≤30 ثانیه برای درک اینکه آیا همه چیز درست است.
پانل های توصیه شده:- پلت فرم SLO (لبه در دسترس بودن API): ارزش هدف، واقعی، دوران خطاها، نرخ سوختگی.
- P50/P95/P99 تاخیر توسط نقاط ورود عمده.
- خطاهای 4xx/5xx و نقاط پایانی بالا با رگرسیون.
- اشباع منابع (CPU، RAM، شبکه، دیسک) - p95 بر اساس خوشه.
- رخدادها/هشدارها (فعال) و انتشارهای اخیر.
- هزینه/ساعت (تقریبی) و روند هفته.
قالبهای متغیر: «env»، «region»، «cluster»، «tenant».
5) Kubernetes: خوشه ها و کارگاه های آموزشی
گروه های کلیدی:1. خوشه/گرهها
دفع CPU/حافظه، فشار (حافظه/پردازنده)، دیسک IO، inode.
زیر سیستم ها: kube-api، etcd، کنترل کننده ها ؛ سلامتی کوبلت.
2. کامیون ها
RPS/RPM، P95 تاخیر، میزان خطا، راه اندازی مجدد، کاهش، OOMKills.
اهداف HPA در مقابل معیارهای واقعی.
3. مسیر شبکه در خوشه
eBPF/Netflow: بلندگوهای بالا، قطره، انتقال مجدد.
4. K8s رویدادها
نرخ по هشدار/خرابی برنامه ریزی/برگشت.
نمونه هایی از PromQL:promql
API (5xx) errors by sum by (service) (rate (http_requests_total{status=~"5"..}[5m]))
Latency p95 histogram_quantile (0. 95, sum by (le, service) (rate(http_request_duration_seconds_bucket[5m])))
Throttling CPU контейнеров sum by (namespace, pod) (rate(container_cpu_cfs_throttled_seconds_total[5m]))
6) لبه، شبکه و DNS
پانل ها:- ورود/فرستاده/Nginx: RPS، p95، 4xx/5xx، upstream_errors، active_conns.
- LB/Anycast: توزیع ترافیک توسط مناطق، رویدادهای شکست خورده.
- DNS: تاخیر رزولوشن، نرخ NXDOMAIN/SERVFAIL، کش نسبت ضربه.
- CDN/WAF: مسدود شده توسط قوانین، ترافیک غیر طبیعی (رباتها/scrappers).
promql sum(rate(nginx_http_requests_total[5m])) by (status)
7) پایگاه داده ها و ذخیره سازی
PostgreSQL/MySQL: qps، تاخیر، انتظار قفل، تاخیر تکرار، پشتیبان گیری/شکست.
Redis: نسبت ضربه، اخراج، حافظه، دستورات آهسته.
Kafka/RabbitMQ: تأخیر توسط گروه های مصرف کننده، تعادل مجدد، پیام های بارگیری نشده.
ذخیره سازی شیء: نمایش داده ها، خطاها، خروج، lat p95.
promql
Replication lag in seconds max by (replica) (pg_replication_lag_seconds)
Slow Queries> 1s rate (pg_stat_activity_longqueries_total[5m])
کافکا (مثال):
promql
Lag by group max by (topic, group) (kafka_consumergroup_lag)
8) CI/CD و مصنوعات
مرور کلی خط لوله: موفقیت/زمان اجرا، صف دونده.
سلامت استقرار: نسخه ها، وضعیت قناری/آبی سبز، زمان گرم شدن.
ثبت تصویر: اندازه، آخرین فشار "و، دفع.
promql
Rate (ci_pipeline_success_total[1h] )/rate (ci_pipeline_total[1h]) success rate
9) ایمنی و انطباق
پچ ها و آسیب پذیری ها: نسبت گره ها/تصاویر با CVE های بحرانی، میانگین «زمان برای پچ».
RBAC و اسرار: تلاش های دسترسی ناموفق، دسترسی به اسرار
رویدادهای حسابرسی: ورودی/تغییرات در اجزای حیاتی، رانش.
تجدید نظر WAF/DLP/PII: قفل قانون، اشتباهات پوشش.
10) سیاهههای مربوط و مسیرهای پیاده روی: پایان به پایان نقد و بررسی
خلاصه خطاها از لاگها (Loki/ELK): استثنائات بالا، امضاهای جدید.
دکمه «برو به سیاهههای مربوط با فیلتر» (پرس و جو LogQL/ES).
ردیابی: دهانه آهسته بالا، درصد درخواست بدون زمینه ردیابی.
{app="api", level="error"} = "NullReference"
{app="nginx"} json status="5.." count_over_time([5m])
11) FinOps: هزینه و دفع
هزینه توسط خدمات/مستاجران/خوشه (با توجه به صدور صورت حساب/صادر کنندگان).
گره های داغ/سرد: منابع بیکار، توصیه های حقوقی (CPU/Mem).
خروج داده ها، درخواست L7 و هزینه آنها.
دینامیک: هفته/ماه، پیش بینی.
- ، ،
- فاکتور کارایی: 'RPS/$' یا 'SLO-minutes/$'.
12) SLO، اشکالات و میزان سوختگی
کارت SLO در هر داشبورد دامنه: هدف، دوره، اشتباهات (بودجه).
هشدار نرخ سوختگی (دو سرعت: سریع/آهسته).
promql
Bad budget: 5xx as a fraction of sum (rate (http_requests_total{status=~"5"..}[5m])) traffic
/
sum(rate(http_requests_total[5m]))
Burn-rate (fast channel ~ 1h)
(
sum(rate(http_requests_total{status=~"5.."}[1m])) /
sum(rate(http_requests_total[1m]))
) / (1 - SLO) > 14. 4
13) استانداردهای تجسم
انواع پانل: سری زمانی برای سری، آمار برای KPI، جدول برای بالا N، heatmap برای تاخیر.
افسانه ها و واحدها: مورد نیاز ؛ برچسب های کوتاه، فرمت SI.
مناطق رنگ: سبز/زرد/قرمز توسط SLO/آستانه (یکنواخت).
توضیحات پنل: آنچه ما اندازه گیری می کنیم، منبع، لینک runbook، مالک.
14) قالب های پانل (شروع سریع)
(الف) بررسی اجمالی API
KPI: «RPS»، «p95»، «5xx٪»، «error _ budget _ remaining».
نقاط پایانی بالا با خطا/تاخیر.
Drilldown در 'trace _ id = $ trace' سیاهههای مربوط.
(B) سلامت گره
CPU/حافظه/دیسک/شبکه - p95 بر اساس گره، لیست «داغ».
فشار، فشار، افت بسته.
(C) سلامت DB
TPS, latency p95, locks, replication lag, query های کند
وضعیت پشتیبان/آخرین موفقیت.
(D) تاخیر کافکا
تاخیر در گروه، میزان مصرف در مقابل تولید، تعادل.
(E) هزینه و Util
هزینه/ساعت توسط خدمات،٪ بیکار، نکات حقوقی، پیش بینی.
15) متغیرها و برچسب ها (مجموعه توصیه شده)
'env' (prod/stage/dev)
'region '/' az'
«جذاب تر»
'namespace '/' service '/' workload'
«ده»
'component' (edge/db/cache/queue)
«تبدیل» (release/git_sha)
16) ادغام با هشدار و مدیریت حوادث
قوانین در Alertmanager/Graphana هشدار با لینک به داشبورد مورد نظر و متغیرهای جایگزین شده است.
P1/P2 با معیارهای SLO، خودکار را به تماس اختصاص دهید.
حاشیه نویسی از انتشار/حوادث در نمودار.
17) کیفیت داشبورد: چک لیست
- مالک و رابط
- SLO/آستانه مستند شده است.
- متغیرها کار می کنند و اندازه پرس و جو را محدود می کنند.
- همه پانل ها با واحدها و افسانه.
- Drilldown به سیاهههای مربوط/آهنگ.
- پانل ها به 2-3 «صفحه نمایش» (بدون پیمایش در هر کیلومتر) مناسب است.
- زمان پاسخ ≤2 -3 ثانیه (کش، downsample).
- بدون پانل های مرده و معیارهای تخریب شده.
18) عملکرد و هزینه داشبورد خود
قوانین Downsampling/ضبط برای تجمع سنگین.
ذخیره سازی (query-frontend/repeater) و محدوده/محدودیت گام.
آشیانه تست: بار بر روی TSDB/خوشه برای درخواست داشبورد معمولی.
پاکسازی برچسب (کاردینالیتی کم)، رها کردن کارت های وحشی.
19) برنامه پیاده سازی (تکرار)
1. هفته 1: فرود + بررسی K8s/Edge، SLO های اساسی، صاحبان.
2. هفته 2: DB/صف، ورود به سیستم و ردیابی ادغام (drilldown)، هشدار سوختگی نرخ.
3. هفته 3: داشبورد FinOps، توصیه های حقوقی، گزارش هزینه.
4. هفته 4 +: امنیت/انطباق، تولید خودکار کارت SLO، آزمون رگرسیون داشبورد.
20) مینی سوالات متداول
چند داشبورد نیاز دارید ؟
حداقل 1 بررسی + یک در هر دامنه (K8s، Edge، DB، صف، CI/CD، امنیت، هزینه). بقیه اش به خاطر بلوغ است.
چه چیزی مهمتر است - معیارها یا سیاههها ؟
معیارهای علائم و SLO، سیاهههای مربوط به علل. بسته نرم افزاری از طریق «ردیابی _ id» و برچسب های سازگار.
چگونه «غرق» نشویم ؟
سلسله مراتب، صاحبان صریح، بهداشت متریک، بررسی منظم و حذف پانل های «مرده».
مجموع
داشبوردهای زیرساختی «نمودارهای زیبا» نیستند، بلکه یک ابزار مدیریتی هستند: کنترل SLO، RCA سریع و FinOps آگاهانه. استاندارد سازی متغیرها، الگوهای بصری و صاحبان ؛ ارائه drilldown به سیاهههای مربوط/آهنگ و به طور خودکار هشدار سوختگی نرخ. این قابلیت پیش بینی، سرعت واکنش و شفافیت هزینه در سطح کل پلت فرم را فراهم می کند.