Logo GH

ד "ר אסטרטגיות ו ־ RTO/RPO

1) עקרונות בסיסיים

1. מטרות לפני אמצעים. ראשית, אנחנו מנסחים RTO/RPO ותרחישים קריטיים, ואז בוחרים את הטכנולוגיה.
2. מקטע לפי חשיבות. לא כל השירותים דורשים ”זהב”; הפרד בביקורתיות עסקית.
3. הנתונים הם הליבה של ד "ר עקביות, שכפול, גילוי שחיתות ונקודת שיקום חשובים יותר מחומרה.
4. אוטומציה ואימות. ד "ר חסר משמעות בלי איי-איי-סי, בדיקות רגרסיה וטלמטריה.
5. תורות וראיות. תוכנית ללא ”יום משחק” רגיל היא אשליה של מוכנות.
6. בטיחות וציות. הצפנה, בידוד, גיבויים בלתי ניתנים לשינוי, DPA/תחום שיפוט.

2) תנאים והתכתבויות

RTO - זמן מרגע האירוע עד שהשירות יחזור להיות ”נורמלי”.
RPO הוא ”הגיל” של נקודת המידע הבריאה האחרונה בהתאוששות.
(RELLO (Recovery Level Objective - רמת הפונקציונליות שיש לשחזר (מינימום שירות בר קיימא).
MTD (זמן השבתה נסבל מקסימלי) - הסף שאחריו סובל העסק מנזק בלתי מתקבל על הדעת.
RTA/RPA - נקודת זמן/התאוששות ממנהגים.

תקשורת: RTO (ראשי תיבות של MTD); RPA מפוקפק RPO. הפער בין מטרות לעובדה הוא הנושא שלאחר המוות ושיפור.

3) שיעורי אסטרטגיה ד "ר (רמות מוכנות)

רמתתיאורRTO/RPO טיפוסיעלותיישום
גיבוי/שחזוררק גיבויים ותמונת סביבהשעות-ימים, אר-פי-או: שעות$מערכות לא קריטיות, דיווח
אור טייס”ניצוץ”: הערימה המינימלית מורמת, הנתונים משוכפליםרטו: עשרות דקות-שעות, אר-פי-או: דקות-שעות$$ביקורתיות בינונית, חיסכון
המתנה חמהעמדה חמה: כמעט מוכנה, עומס נמוךרטו: דקות - <שעה, רפ "ו: דקות$$$ליבת B2C, שערי תשלום
פעיל/פסיבישיבוט פסיבי מלא, הילובר אוטומטירטו: דקות, אר-פי-או: שניות-דקות$$$$אפי משימה קריטיים
פעיל/פעילשני האתרים במכירותRTO 0, RPO 0-sec. $$$$$אקסטרים SLOs, מוצרים גלובליים
💡 חוק: בחר את הרמה המינימלית המתאימה לסיכון העסקי.

4) תרחישים נגדם אנו מגנים

אובדן אזור/ענן/מרכז נתונים (חשמליות, רשת, ספק).
שגיאת שחיתות/אופרטור (מחיקה, העתקים שבורים, שחיתות לוגית).
תוכנות זדוניות/תוכנות כופר.
פגם בשחרור/הגדרות (הפסקת מסה).
התמוטטות התמכרות (KMS, DNS, סודות, ספק תשלומים).
אירועים משפטיים (חסימה, איסור על ייצוא נתונים מתחום השיפוט).

לכל תרחיש, ציין את RTO/RPO, רמת DR, ספר משחקים, אנשים אחראים.

5) אסטרטגיות מידע (מפתח ל ־ RPO)

5. 1 גיבויים

רישומי העברה מלאים + אינקרמנטליים (עבור DB).
חסימות בלתי ניתנות לשינוי/תולעת ועותקים לא מקוונים (”air-goapped”).
קטלוג גיבויים עם מטא-נתונים וחתימות קריפטו; שחזור מבחן מתוכנן.

5. 2 שכפול

Synchronous (RPO נמוך, latentnost, סיכון להתפשטות קלוקלת).
Asynchronous (השפעה נמוכה על Perf, RPO> 0; לשלב עם ילד השלל).
CDC (ליכוד נתונים שינוי) להזרמת שכפול ושחזור מצב.

5. 3 הגנה מפני שחיתות לוגית

Versioning/” points in time” (PITR) עם חלון של N ימים.
חתימות אינווריאנטיות (מאזנות, סכומים, צ 'קסומים) הן איתור מוקדם של מידע ”שבור”.
ערוצי שכפול ”איטיים” (עיכוב של 15-60 דקות) כחוצץ נגד שחיתות מיידית.

סקיצה לבחירת נקודת התאוששות:
python def pick_restore_point(pitr, anomaly_signals, max_age):
healthy = [p for p in pitr if not anomaly_signals. after(p. time)]
return max(healthy, key=lambda p: p. time if now()-p. time <= max_age else -1)

6) יישום, מצב, מטמון

שכבות חסרות מעמד ומתחילות מחדש בכל אזור (תמונה/תרשים/מניפסוס בגיט).
מצב (DB/caches/kew): מקור האמת הוא אחד מה-DBs; כאבים ואינדקסים הם ניתנים לגידול יתר.
אידמפוטנטיות וכונן מחדש-משלוח מחדש של אירועים מותר; השתמש בתיבת דואר אלקטרוני, dedup, וגרסאות.

7) רשת ונקודת כניסה

GSLB/DNS-feilover: latency/health-based, TTL קצר לחלון התרסקות.
Anycast/L7 ייפוי כוח: איי-פי אחד, ניתוב רפואי אזורי.
תחומים אזוריים ומדיניות שיפוטית (geo-pinning for PII).
קובץ תעודה/KMS: שרשראות רזרביות, דו-מפתח.

פיילובר פסאודו-קוד:
python if slo_breach("region-a") or health("region-a")==down:
route. shift(traffic, from_="region-a", to="region-b", step=20) # канарим enable_readonly_if_needed()

8) מודל הפעלה ואוטומציה

IAC/GitOps: תשתית אזור שני = קוד, פריסת ”כפתור אחד”.
מדיניות כקוד: שער ”אין מניפסטים/גיבויים/התראות DR - אין שחרור”.
הוראות שלב אחר שלב ו ”כפתור אדום” זהה לשני האזורים.
סודות: קרדיטים קצרי-ימים, פדרציית OIDC, פשרה/תוכנית החזרה.

שער (רעיון):
rego package dr deny["Missing PITR ≥ 7d"] {
input. db. pitr_window_days < 7
}
deny["No restore test in 30d"] {
now() - input. db. last_restore_test > 3024h
}

9) תרגילים ומבחנים (ימי משחק)

טבלת תרחיש: אובדן בסיס נתונים, מידע ”שבור”, כשל KMS, ירידה באזור, הגבלת יציאה פתאומית.
תדר: רבעון למשימה קריטית; פעם בחצי שנה, בשביל השאר.
תרגיל מדדים: RTA/RPA נגד מטרות, פרופורציה של שלבים אוטומטיים, מספר התערבויות ידניות, שגיאות בספר משחקים.
כאוס-עשן בשחרורים: השפלת התלות לא צריך ”לשבור” נתיבי DR.

דוגמה למיני-תרגיל:

T0: cut off the primary database (firewall drop)
T + 2m: GSLB shift 20% of traffic, then 100% at SLO_ok
T + 6m: checking business invariants and lag replication
T + 10m: post-drill: fixing RTA/RPA, playbook improvements

10) ספרי משחק (תבנית קנונית)

yaml playbook: "dr-failover-region-a-to-b"
owner: "platform-sre"
rto: "15m"
rpo: "5m"
triggers:
- "health(region-a)==down"
- "slo_breach(payments)"
prechecks:
- "backup_catalog ok; last_restore_test < 30d"
- "pitr_window >= 7d"
steps:
- "Announce incident; open war-room; assign IC"
- "Freeze writes in region-a (flag write_readonly)"
- "Promote db-b to primary; verify replication stopped cleanly"
- "Shift GSLB 20%→50%→100%; monitor p95/error"
- "Enable compensations and re-drive queues"
validation:
- "Business invariants (balances, duplicate_checks)"
- "Synthetic tests green; dashboards stable 30m"
rollback:
- "If db-b unhealthy: revert traffic; engage restore from PITR T-Δ"
comms:
- "Status updates each 15m; external note if SEV1"

11) מדדי יכולת תצפית ד "ר

Replica lag (שנייה), RPO-drift (הבדל בין המטרה לבין RPO בפועל).
שחזור SLI: זמן התאוששות קר/חם על ידי הסביבה.
סיקור:% מהשירותים עם חוברות השמעה/גיבויים/PITR ו ־ N ימים.
ציון מקדחה: פרופורציה של שלבים אוטומטיים, התפלגות RTA, שיעור שגיאה.
חוסר תזוזה:% הגיבויים בתולעת/פעור אוויר.
מדדי אירוע: תור אורך/מחדש מהירות הנעה לאחר הזיוף.

12) עלות וחילופים

CapEx/OpEX: הדוכן החם זול יותר מהפעיל/פעיל אך יקר יותר מהאור הפיילוט.
שכפול בין אזורי/בין עננים עולה כסף; מטמון/דחיסה/אגרגטים מקומיים.
RTO/RPO נגד $: כל ”תשע” של זמינות ושנייה של RPO הם פי כמה יותר יקרים - בתיאום עם העסק.
חלונות ירוקים: שכפול אצווה בשעות זולות/” ירוקות”.

13) בטיחות וציות

הצפנה ”במנוחה” ו ”במעבר”, הפרדה בין תחומי KMS לאזור.
גיבויים בלתי ניתנים לשינוי, הגנה על תוכנות כופר: 3-2-1 (3 עותקים, 2 מדיה, 1 לא מקוון), MFA-מחק.
תחום שיפוט: Geo-Pinning עבור PII, מיקום גיבויים, Ligal Hold על גבי TTL.
גישת זמן: תפקידים זמניים למבצעי ד "ר, יומן ביקורת.

14) אנטי דפוסים

"בואו נכתוב תוכנית מאוחר יותר" - ד "ר בלי תרגילים.
שכפול ללא הגנה מפני שחיתות לוגית - יכפיל את השגיאה באופן מיידי.
אזור אחד של KMS/סודות, אין סכנה אפשרית.

גיבויים ללא שחזור רגיל - "שרדינגר" ד "ר

עסקאות סינכרוניות הקשורות קשר הדוק בין אזורים הן נפילה/נפילה.
אין עדיפות: אותה רמת ד "ר לכל דבר (יקר וחסר תועלת).

15) רשימת אדריכלים

1. מוגדר RTO/RPO/RLO על ידי שירות ותרחיש?
2. נתונים מסווגים: מקור האמת, PITR/window, WORM/immutable?
3. האם נבחר DR (גיבוי/שחזור, פיילוט, חם, A/P, A/A) לשירות?
4. רשת: GSLB/Anycast, תעודות/מפתחות עם מרווח, דגלי קריאה בלבד?
5. אפליקציה: אידמפוטנטיות, תיבת דואר אלקטרוני, עסקאות קיזוז?
6. IAC/GitOps/Policy as Code: לחיצה אחת על גלגול האזור השני?
7. תרגיל: לוח זמנים, KPI RTA/RPA, פעילות שלאחר אימון?
8. ניטור: lag, RPO-drift, לשחזר-SLI, קידוח-ציון, גיבויים בלתי ניתנים לשינוי?
9. אבטחה/ציות: KMS Domains, Jurisdents, Legal Hold?
10. עלות: תקציב יציאה, חלונות ירוקים, רמת קול כלכלית?

16) מתכונים קטנים וסקיצות

16. 1 PITR עבור Postgres (רעיון):

bash base backup daily + WAL archive pg_basebackup -D/backups/base/$ (date +% F)
archive_command='aws s3 cp %p s3://bucket/wal/%f --sse'
restore pg_restore --time "2025-10-31 13:21:00Z"...

16. 2 הגנה מפני שחיתות לוגית (העתק מעוכב):

yaml replication:
mode: async apply_delay: "30m" # window to roll back on corruption

16. 3 החלפת תנועה (פסאודו-API):

bash gslb set-weight api. example. com region-a 0 gslb set-weight api. example. com region-b 100

16. 4 סמן אינווריאנטים לאחר הפיילובר (פסאודוקודה):

python assert total_balance(all_accounts) == snapshot_total assert no_duplicates(events_since(t_failover))

סיכום

ד "ר הוא היכולת לקבל החלטות טכניות וארגוניות מהר יותר מהנזק שגדל. זיהוי RTO/RPOS מציאותי, בחירת זמינות מספקת, תשתית אוטומטית ובדיקות, פעילות גופנית באופן קבוע ומדידת RTA/RPAs בפועל. אז התאונה לא תהפוך לאסון, אלא לתקרית מבוקרת עם תוצאה צפויה.

Contact

צרו קשר

פנו אלינו בכל שאלה או צורך בתמיכה.אנחנו תמיד כאן כדי לעזור.

התחלת אינטגרציה

Email הוא חובה. Telegram או WhatsApp — אופציונליים.

השם שלכם לא חובה
Email לא חובה
נושא לא חובה
הודעה לא חובה
Telegram לא חובה
@
אם תציינו Telegram — נענה גם שם, בנוסף ל-Email.
WhatsApp לא חובה
פורמט: קידומת מדינה ומספר (לדוגמה, +972XXXXXXXXX).

בלחיצה על הכפתור אתם מסכימים לעיבוד הנתונים שלכם.