הגדרת Redis Sentinel לזמינות גבוהה

מאסטר ה-Redis קרס, והיישום שלך מושבת בזמן שאתה מעביר ידנית ל-replica? אנחנו מגדירים Redis Sentinel, מערכת שמזהה תקלות אוטומטית ומנתבת תנועה ל-replica חדש תוך שניות. הצוות שלנו מספק פתרון turnkey, מביקורת תצורה ועד הגדרת ניטור ותמיכה שוטפת, כך שה-cache שלך פועל באמינות ללא הפרעות.

פיתוח ותחזוקה של כל סוגי האתרים:

אתרי מידע או יישומי אינטרנט
אתרי תדמית, דפי נחיתה, אתרי חברה, קטלוגים מקוונים, חידונים, אתרי קידום, בלוגים, מקורות חדשות, פורטלי מידע, פורומים, אגרגטורים
אתרי מסחר אלקטרוני או יישומי אינטרנט
חנויות מקוונות, פורטלי B2B, שווקים, בורסות מקוונות, אתרי קאשבק, בורסות, פלטפורמות דרופשיפינג, מנתחי מוצרים
יישומי אינטרנט לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, פורטלים ארגוניים, מערכות ניהול ייצור, מנתחי מידע
אתרי שירות אלקטרוני או יישומי אינטרנט
פלטפורמות מודעות, בתי ספר מקוונים, בתי קולנוע מקוונים, בוני אתרים, פורטלים לשירותים אלקטרוניים, פלטפורמות אירוח וידאו, פורטלים נושאיים

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

השירותים שאנו מציעים
מציג 1 מתוך 1כל 2062 השירותים
הגדרת Redis Sentinel לזמינות גבוהה
בינוני
~2-3 ימים

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית ווב עבור FEEDME
    פיתוח אפליקציית ווב עבור FEEDME
    1365
  • פיתוח חנות מקוונת לחברת FURNORO
    פיתוח חנות מקוונת לחברת FURNORO
    1330
  • פיתוח אפליקציית ווב עבור Enviok
    פיתוח אפליקציית ווב עבור Enviok
    1077
  • פיתוח CRM עבור Chasseurs
    פיתוח CRM עבור Chasseurs
    1113
  • פיתוח אתר עבור SBH Partners
    פיתוח אתר עבור SBH Partners
    1201
  • פיתוח אתר עבור Red Pear
    פיתוח אתר עבור Red Pear
    619

לעתים קרובות אנו נתקלים במצב: מאסטר ה-Redis נופל, והאפליקציה מאבדת קאש או סשנים למשך מספר דקות. מעבר ידני ל-replica אורך 5–15 דקות של downtime, טרנזקציות אבודות וסטרס. ללא אוטומציה, יש צורך להתחבר ידנית לשרת, להריץ SLAVEOF NO ONE, ולבצע קונפיגורציה מחדש של יישומי הלקוח. זה גוזל זמן ומועד לשגיאות, במיוחד בלילות או בסופי שבוע. הפתרון הוא Redis Sentinel: מערכת שמזהה אוטומטית כשל במאסטר, מקדמת מאסטר חדש, ומודיעה ללקוחות. Sentinel מהיר פי 10 ממעבר ידני—ה-failover אורך 10-20 שניות. ספריות לקוח כמו phpredis ו-predis תומכות בהפנייה אוטומטית למאסטר החדש ללא שינויי קוד. עם קונפיגורציה נכונה, האפליקציה מאבדת לכל היותר 20 שניות של חיבור לפני שהיא מתחדשת עם ה-replica החדש.

למה שלושה Sentinels?

Sentinel משתמש באלגוריתם הצבעה: כאשר הקשר עם המאסטר אובד, כל Sentinel מציע לקדם replica. החלטה מתקבלת רק עם quorum—רוב קולות. עם שני Sentinels, תיתכן תופעת split-brain (כל אחד מחשיב את המועמד שלו כמאסטר). שלושה שרתים עם quorum = 2 מבטיחים failover תקין.

כיצד להגדיר Redis Master ו-Replica ב-6 שלבים

  1. התקן Redis על כל שלושת השרתים (גרסה זהה, לדוגמה 7.2).
  2. הגדר את המאסטר—הגדר סיסמאות, מגבלת זיכרון, אפשר AOF.
  3. הגדר replicas—הוסף פרמטר replicaof <master-ip> 6379.
  4. הגדר Sentinel—צור sentinel.conf עם הגדרות monitor, סיסמה ו-timeout.
  5. הפעל Sentinel על כל השרתים עם redis-sentinel /etc/redis/sentinel.conf.
  6. בדוק את הסטטוס—הרץ SENTINEL masters כדי לוודא שהמאסטר מזוהה.

דוגמה לקונפיגורציית מאסטר (/etc/redis/redis.conf):

bind 0.0.0.0
port 6379
requirepass RedisPassword123
masterauth RedisPassword123
maxmemory 4gb
maxmemory-policy volatile-lru
appendonly yes
appendfsync everysec
protected-mode no

קונפיגורציית ה-Replica זהה אך יש להוסיף bind 0.0.0.0 port 6379 requirepass RedisPassword123 masterauth RedisPassword123 maxmemory 4gb maxmemory-policy volatile-lru appendonly yes appendfsync everysec protected-mode no ו-replicaof <master-ip> 6379.

דוגמה לקונפיגורציית Sentinel (replica-read-only yes על כל שרת, רק /etc/redis/sentinel.conf משתנה):

port 26379
daemonize yes
logfile /var/log/redis/sentinel.log
sentinel monitor mymaster <master-ip> 6379 2
sentinel auth-pass mymaster RedisPassword123
sentinel down-after-milliseconds mymaster 5000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 60000
sentinel notification-script mymaster /opt/redis/notify.sh
sentinel announce-ip <server-ip>
sentinel announce-port 26379

איך לבדוק failover ללא סיכון?

אנו ממליצים לדמות לפני הייצור:

  1. עצור את המאסטר: sentinel announce-ip.
  2. צפה בלוגים של Sentinel—ה-failover אמור להתחיל תוך 5–15 שניות.
  3. בדוק את המאסטר החדש: port 26379 daemonize yes logfile /var/log/redis/sentinel.log sentinel monitor mymaster <master-ip> 6379 2 sentinel auth-pass mymaster RedisPassword123 sentinel down-after-milliseconds mymaster 5000 sentinel parallel-syncs mymaster 1 sentinel failover-timeout mymaster 60000 sentinel notification-script mymaster /opt/redis/notify.sh sentinel announce-ip <server-ip> sentinel announce-port 26379 —השדה systemctl stop redis ישתנה.
  4. הפעל שוב את המאסטר הישן: SENTINEL master mymaster—הוא יהפוך אוטומטית ל-replica של המאסטר החדש.

טעויות נפוצות בבדיקות:

  • סיסמאות לא מאומתות—failover עלול להיכשל עקב auth-pass.
  • ערך גדול מדי של down-after-milliseconds—עיכוב עד 30 שניות.
  • חסר notification-script—לא תדע על שינוי מאסטר.
מה לעשות אם Sentinel לא מצליח להגיע ל-quorum? בדוק קישוריות רשת בין השרתים (פורטים 26379 חייבים להיות פתוחים). ודא שהקונפיגורציה כוללת `sentinel announce-ip` נכון. אם השרתים מאחורי NAT, ייתכן שיידרשו כתובות IP חיצוניות מפורשות. לניפוי באגים, השתמש ב-`SENTINEL ckquorum mymaster`.

השוואה: Sentinel מול Redis Cluster

קריטריון Redis Sentinel Redis Cluster
נפח נתונים נכנס לזיכרון של שרת אחד עולה על זיכרון של שרת אחד
סבילות לתקלות Failover אוטומטי Failover אוטומטי ו-resharding
מיקום כתיבה רק מאסטר כל צומת (sharding)
מורכבות הגדרה נמוכה גבוהה
פעולות multi-key תמיכה מלאה מוגבל לאותו slot

עבור 90% מהפרויקטים עם נפחי נתונים עד 64 GB, Sentinel הוא הבחירה האופטימלית.

השוואת זמני downtime

שיטה זמן downtime ממוצע
מעבר ידני 10 דקות
Redis Sentinel 15 שניות

על ידי אוטומציה, אתה חוסך עשרות שעות בשנה ומבטל שגיאות אנוש.

מה כלול בהתקנת turnkey

אנו מספקים:

  • קונפיגורציה של Master+Replica+Sentinel על 3 שרתים
  • אימות מנגנון quorum ו-failover
  • הגדרת התראות (Telegram, אימייל) על שינוי מאסטר
  • סקריפט לבדיקת failover
  • אינטגרציית לקוח (Laravel, Symfony, PHP רגיל)
  • תיעוד תפעולי

יישמנו Sentinel ביותר מ-50 פרויקטים—הניסיון מראה ש-80% מהתקלות נפתרות אוטומטית ללא התערבות מהנדס. לפי התיעוד הרשמי של Redis Sentinel, קונפיגורציה זו מבטיחה זמינות של 99.9% כשהיא מוגדרת כראוי.

לוח זמנים ואחריות

התקנה סטנדרטית של Sentinel עם שלושה שרתים, בדיקת failover ואינטגרציה אורכת 1 עד 2 ימי עסקים. העלות מחושבת באופן אישי. ההשקעה מחזירה את עצמה דרך הפחתת downtime. אנו מציעים אחריות ל-30 יום על פעולה תקינה של מנגנון הסבילות לתקלות.

הזמן התקנת Redis Sentinel—ותשכח ממעברים ידניים. קבל ייעוץ מהנדס להערכת עלות לפרויקט שלך.

הערה: בקונפיגורציות שלמעלה, השתמש בסיסמה ובכתובות IP משלך. אל תשכח לפתוח פורטים 6379 (Redis) ו-26379 (Sentinel) בחומת האש.