פריסה במספר אזורים ב-Compute Engine

Last reviewed 2025-08-11 UTC

במסמך הזה מוצגת ארכיטקטורת הפניה לאפליקציה מרובת-שכבות שפועלת במכונות וירטואליות ב-Compute Engine בכמה אזורים ב- Google Cloud. אתם יכולים להשתמש בארכיטקטורת ההפניה הזו כדי לבצע אירוח מחדש (lift and shift) יעיל של אפליקציות מקומיות בענן, עם שינויים מינימליים באפליקציות. בנוסף, במסמך מתוארים שיקולי התכנון שכדאי לקחת בחשבון כשיוצרים ארכיטקטורה מרובת-אזורים לאפליקציות בענן. המסמך מיועד לאדריכטי ענן.

ארכיטקטורה

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

ארכיטקטורה רב-אזורית באמצעות מאזן עומסים גלובלי

הארכיטקטורה מבוססת על מודל הענן של תשתית כשירות (IaaS). אתם מקצים את משאבי התשתית הנדרשים (מחשוב, רשת ואחסון) ב- Google Cloud, ושומרים על שליטה מלאה במערכת ההפעלה, בתוכנת הביניים ובשכבות הגבוהות יותר של מחסנית האפליקציות, ועל האחריות עליהן. מידע נוסף על IaaS ומודלים אחרים של ענן זמין במאמר PaaS לעומת IaaS לעומת SaaS לעומת CaaS: מה ההבדלים?

התרשים שלמעלה כולל את הרכיבים הבאים:

רכיב מטרה
מאזן עומסים גלובלי חיצוני

מאזן העומסים החיצוני הגלובלי מקבל בקשות משתמשים ומפיץ אותן לאפליקציה. מאזן העומסים החיצוני הגלובלי מפרסם כתובת IP אחת של anycast, אבל הוא מיושם כמספר גדול של שרתי proxy בממשקי קצה של Google‏ (GFE). בקשות של לקוחות מופנות לממשק הקצה של Google שהכי קרוב ללקוח.

קבוצות של מופעי מכונה מנוהלים (MIG) אזוריים לשכבת האינטרנט

שכבת האינטרנט של האפליקציה נפרסת במכונות וירטואליות של Compute Engine ששייכות לקבוצות אזוריות של מכונות מנוהלות (MIG). קבוצות ה-MIG האלה הן קצה עורפי של מאזן העומסים הגלובלי.

כל קבוצת MIG מכילה מכונות וירטואליות של Compute Engine בשלושה אזורים שונים. כל מכונה וירטואלית מארחת מופע עצמאי של שכבת האינטרנט של האפליקציה.

מאזני עומסים פנימיים אזוריים

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

קבוצות אזוריות של מכונות וירטואליות מנוהלות (MIG) לשכבת האפליקציה

שכבת האפליקציה פרוסה במכונות וירטואליות של Compute Engine שמהוות חלק מקבוצות אזוריות של מכונות מנוהלות (MIG). ה-MIG בכל אזור הוא הבק-אנד של מאזן העומסים הפנימי באותו אזור.

כל קבוצת MIG מכילה מכונות וירטואליות של Compute Engine בשלושה אזורים שונים. כל מכונה וירטואלית מארחת מופע עצמאי של שכבת האפליקציה.

מסד נתונים של צד שלישי שנפרס במכונות וירטואליות ב-Compute Engine

הארכיטקטורה שמוצגת במסמך הזה כוללת מסד נתונים של צד שלישי (כמו PostgreSQL) שנפרס במכונות וירטואליות של Compute Engine בשני האזורים. אפשר להגדיר שכפול בין אזורים למסדי הנתונים, ולהגדיר את מסד הנתונים בכל אזור כך שיבצע מעבר לגיבוי במקרה של כשל למסד הנתונים באזור השני. יכולות השכפול והמעבר לגיבוי תלויות במסד הנתונים שבו אתם משתמשים.

התקנה וניהול של מסד נתונים של צד שלישי דורשים מאמץ נוסף ועלות תפעולית לשכפול, להחלת עדכונים, למעקב ולהבטחת זמינות. כדי להימנע מהתקנה וניהול של מסד נתונים של צד שלישי, אפשר להשתמש במסד נתונים מנוהל כמו מופע Spanner במספר אזורים, וליהנות מתכונות מובנות של זמינות גבוהה (HA).

רשת של ענן וירטואלי פרטי (VPC) ותת-רשתות

כל Google Cloud המשאבים בארכיטקטורה משתמשים ברשת VPC אחת עם תת-רשתות בשני אזורים שונים.

בהתאם לדרישות שלכם, אתם יכולים לבנות ארכיטקטורה שמשתמשת בכמה רשתות VPC ותת-רשתות. מידע נוסף זמין במאמר האם כדאי ליצור כמה רשתות VPC.

קטגוריות של Cloud Storage באזורים כפולים

גיבויים של מסדי נתונים מאוחסנים בקטגוריות של Cloud Storage בשני אזורים. לחלופין, אפשר להשתמש ב-שירות Backup and DR כדי ליצור, לאחסן ולנהל את הגיבויים של מסדי הנתונים.

המוצרים שהשתמשו בהם

ארכיטקטורת ההפניה הזו כוללת את המוצרים הבאים Google Cloud :

  • Compute Engine: שירות מחשוב מאובטח וניתן להתאמה אישית שמאפשר ליצור ולהריץ מכונות וירטואליות בתשתית של Google.
  • Cloud Load Balancing: חבילה של מאזני עומסים גלובליים ואזוריים, בעלי ביצועים גבוהים וניתנים להתאמה.
  • Cloud Storage: מאגר אובייקטים ללא הגבלה בעלות נמוכה, לשימוש עם סוגים שונים של נתונים. אפשר לגשת לנתונים מתוך Google Cloudומחוץ לו, והם משוכפלים במיקומים שונים כדי ליצור יתירות.
  • ענן וירטואלי פרטי (VPC): מערכת וירטואלית שמספקת פונקציונליות של רשתות גלובליות וניתנות להרחבה עבור עומסי העבודה שלכם ב- Google Cloud . ‫VPC כולל קישור בין רשתות VPC שכנות (peering),‏ Private Service Connect, גישה לשירותים פרטיים ו-VPC משותף.

תרחישים לדוגמה

בקטע הזה מתוארים תרחישי שימוש שבהם פריסה במספר אזורים ב-Compute Engine היא בחירה מתאימה.

העברה יעילה של אפליקציות מקומיות

אתם יכולים להשתמש בארכיטקטורת ההפניה הזו כדי ליצור טופולוגיה של Google Cloud העברה מחדש (lift and shift) של אפליקציות מקומיות לענן, עם שינויים מינימליים באפליקציות. כל הרמות של האפליקציה בארכיטקטורת ההפניה הזו מתארחות במכונות וירטואליות של Compute Engine. הגישה הזו מאפשרת להעביר ביעילות אפליקציות מקומיות לענן וליהנות מיתרונות העלות, האמינות, הביצועים והפשטות התפעולית ש- Google Cloudמספקת.

זמינות גבוהה למשתמשים שמפוזרים גיאוגרפית

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

זמן טעינה קצר למשתמשי האפליקציה

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

עיצוב חלופי

הארכיטקטורה שלמעלה משתמשת במאזן עומסים גלובלי, שתומך בתכונות מסוימות לשיפור המהימנות של הפריסות, כמו שמירה במטמון קצה באמצעות Cloud CDN. בקטע הזה מוצגת ארכיטקטורה חלופית שמשתמשת במאזני עומסים אזוריים וב-Cloud DNS. הארכיטקטורה החלופית הזו תומכת בתכונות הנוספות הבאות:

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

מידע נוסף על ההבדלים בין מאזני עומסים אזוריים לבין מאזני עומסים גלובליים זמין במאמרים איזון עומסים גלובלי לעומת איזון עומסים אזורי ומצבי פעולה.

ארכיטקטורה רב-אזורית באמצעות מאזני עומסים אזוריים ו-DNS.

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

שיקולים לגבי העיצוב

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

Google Cloud

כשיוצרים ארכיטקטורה לעומס העבודה, כדאי לפעול לפי השיטות המומלצות וההמלצות שמפורטות בGoogle Cloud Well-Architected Framework.

עיצוב המערכת

בקטע הזה מוסבר איך לבחור Google Cloud אזורים לפריסה במספר אזורים ואיך לבחור Google Cloud שירותים מתאימים. Google Cloud

בחירת אזור

כשבוחרים את Google Cloud האזורים שבהם צריך לפרוס את האפליקציות, חשוב לקחת בחשבון את הגורמים והדרישות הבאים:

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

תשתית מחשוב

הארכיטקטורה לדוגמה במסמך הזה משתמשת במכונות וירטואליות של Compute Engine לרמות מסוימות של האפליקציה. בהתאם לדרישות של האפליקציה, אפשר לבחור מבין שירותי מחשוב אחרים של Google Cloud :

  • קונטיינרים: אתם יכולים להריץ אפליקציות בקונטיינרים באשכולות של Google Kubernetes Engine‏ (GKE). ‫GKE הוא מנוע לתזמור קונטיינרים שמבצע אוטומטית פריסה, התאמה לעומס וניהול של אפליקציות בקונטיינרים.
  • Serverless: אם אתם מעדיפים להתמקד בנתונים ובאפליקציות שלכם במקום בהגדרה ובהפעלה של משאבי תשתית, אתם יכולים להשתמש בשירותים serverless כמו Cloud Run.

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

שירותי אחסון

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

Google Cloud Hyperdisk מספק ביצועים טובים יותר, גמישות ויעילות בהשוואה ל-Persistent Disk. עם Hyperdisk Balanced, אתם יכולים להקצות IOPS וקצב העברת נתונים בנפרד ובאופן דינמי, וכך להתאים את נפח האחסון למגוון רחב של עומסי עבודה.

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

  • הנתונים בקטגוריות אזוריות משוכפלים באופן סינכרוני באזורים שונים באותו אזור.
  • נתונים בקטגוריות של שני אזורים או מספר אזורים מאוחסנים ביתירות בשני מיקומים גיאוגרפיים נפרדים לפחות. מטא-נתונים נכתבים באופן סינכרוני באזורים שונים, והנתונים משוכפלים באופן אסינכרוני. בקטגוריות בשני אזורים אפשר להשתמש ברפליקציה בקצב טורבו, שמבטיחה שאובייקטים ישוכפלו בין זוגות אזורים, עם יעד להתאוששות מאסון (RPO) של 15 דקות. מידע נוסף זמין במאמר בנושא זמינות ועמידות של נתונים.

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

אם מסד הנתונים שלכם הוא Microsoft SQL Server, מומלץ להשתמש ב-Cloud SQL ל-SQL Server. בתרחישים שבהם Cloud SQL לא תומך בדרישות ההגדרה שלכם, או אם אתם צריכים גישה למערכת ההפעלה, אתם יכולים לפרוס מכונה של אשכול יתירות כשל (FCI) של Microsoft SQL Server. בתרחיש הזה, אפשר להשתמש ב-Google Cloud NetApp Volumes, שירות מנוהל לחלוטין, כדי לספק אחסון SMB עם זמינות רציפה (CA) למסד הנתונים.

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

שירותי מסדי נתונים

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

כדי להימנע מהמאמץ ומהעלות של התקנה וניהול של מסד נתונים של צד שלישי, אפשר להשתמש בשירות מנוהל של מסד נתונים כמו Cloud SQL,‏ AlloyDB ל-PostgreSQL,‏ Bigtable,‏ Spanner או Firestore. שירותי מסד הנתונים האלה של Google Cloud מספקים הסכמי רמת שירות (SLA) לזמן פעולה, והם כוללים יכולות ברירת מחדל למדרגיות ולניטור.

אם עומס העבודה שלכם צריך מסד נתונים של Oracle, אתם יכולים לפרוס את מסד הנתונים במכונה וירטואלית של Compute Engine או להשתמש ב-Oracle Database@Google Cloud. מידע נוסף זמין במאמר בנושא עומסי עבודה של Oracle ב- Google Cloud.

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

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

עיצוב רשת

חשוב לבחור עיצוב רשת שעונה על הדרישות העסקיות והטכניות שלכם. אתם יכולים להשתמש ברשת VPC אחת או בכמה רשתות VPC. מידע נוסף זמין במאמרי העזרה הבאים:

אבטחה, פרטיות ותאימות

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

הגנה מפני איומים חיצוניים

כדי להגן על האפליקציה מפני איומים כמו התקפות מניעת שירות מבוזרות (DDoS) ופרצת אבטחה XSS‏ (cross-site scripting), אפשר להשתמש במדיניות אבטחה של Google Cloud Armor. כל מדיניות היא קבוצה של כללים שמציינים תנאים מסוימים שצריך להעריך ופעולות שצריך לבצע כשהתנאים מתקיימים. לדוגמה, כלל יכול לציין שאם כתובת ה-IP של המקור של תעבורת הנתונים הנכנסת תואמת לכתובת IP ספציפית או לטווח CIDR, צריך לדחות את תעבורת הנתונים. אפשר גם להחיל כללים מוגדרים מראש של חומת אש ליישומי אינטרנט (WAF). מידע נוסף זמין במאמר בנושא סקירה כללית של מדיניות אבטחה.

גישה חיצונית למכונות וירטואליות

בארכיטקטורת ההפניה שמתוארת במסמך הזה, המכונות הווירטואליות ב-Compute Engine לא צריכות גישה נכנסת מהאינטרנט. לא מקצים כתובות IP חיצוניות למכונות הווירטואליות. Google Cloud משאבים שיש להם רק כתובת IP פנימית פרטית עדיין יכולים לגשת לשירותים ולממשקי Google API מסוימים באמצעות Private Service Connect או גישה פרטית ל-Google. מידע נוסף זמין במאמר אפשרויות גישה פרטיות לשירותים.

כדי לאפשר חיבורים יוצאים מאובטחים מ Google Cloud משאבים שיש להם רק כתובות IP פרטיות, כמו מכונות וירטואליות של Compute Engine בארכיטקטורת ההפניה הזו, אפשר להשתמש ב-Secure Web Proxy או ב-Cloud NAT.

הרשאות בחשבון שירות

עבור ה-VMs של Compute Engine בארכיטקטורה, במקום להשתמש בחשבונות השירות שמוגדרים כברירת מחדל, מומלץ ליצור חשבונות שירות ייעודיים ולציין את המשאבים שחשבון השירות יכול לגשת אליהם. לחשבון השירות שמוגדר כברירת מחדל יש מגוון רחב של הרשאות, כולל כאלה שאולי לא נחוצות. אתם יכולים להתאים את חשבונות השירות הייעודיים כך שיהיו להם רק ההרשאות החיוניות. למידע נוסף, ראו הגבלת ההרשאות של חשבון שירות.

אבטחת SSH

כדי לשפר את האבטחה של חיבורי SSH למכונות וירטואליות ב-Compute Engine בארכיטקטורה שלכם, כדאי להטמיע את Identity-Aware Proxy‏ (IAP) ואת Cloud OS Login API. ‫IAP מאפשר לכם לשלוט בגישה לרשת על סמך זהות המשתמשים ומדיניות ניהול הזהויות והרשאות הגישה (IAM). ‫Cloud OS Login API מאפשר לכם לשלוט בגישת SSH ל-Linux על סמך זהות המשתמש ומדיניות IAM. מידע נוסף על ניהול גישה לרשת זמין במאמר שיטות מומלצות לשליטה בגישה להתחברות באמצעות SSH.

הצפנת דיסק

כברירת מחדל, הנתונים שמאוחסנים בדיסקים לאחסון מתמיד מוצפנים באמצעותGoogle-owned and Google-managed encryption keys. כדי להוסיף שכבת הגנה נוספת, אתם יכולים להצפין את Google-owned and managed key באמצעות מפתחות שבבעלותכם ושאתם מנהלים ב-Cloud Key Management Service‏ (Cloud KMS). מידע נוסף זמין במאמרים בנושא הצפנת דיסקים לכרכים של Hyperdisk והצפנת נתונים באמצעות מפתחות הצפנה בניהול הלקוח.

אבטחת רשת

כדי לשלוט בתעבורת הרשת בין המשאבים בארכיטקטורה, צריך להגדיר מדיניות מתאימה של Cloud Next Generation Firewall (NGFW).

שיקולים לגבי מיקום הנתונים

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

שיקולי אבטחה נוספים

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

אמינות

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

עמידות בפני הפסקות חשמל בתשתית

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

אם מתרחשת הפסקה זמנית בשירות באזור, מאזן העומסים לא מושפע כי הוא משאב אזורי. הפסקה זמנית בשירות באזור עשויה להשפיע על מכונות וירטואליות בודדות ב-Compute Engine. אבל האפליקציה נשארת זמינה ומגיבה כי המכונות הווירטואליות נמצאות בקבוצת MIG אזורית. קבוצת MIG אזורית מבטיחה שמכונות וירטואליות חדשות נוצרות באופן אוטומטי כדי לשמור על המספר המינימלי של מכונות וירטואליות שהוגדר. אחרי ש-Google פותרת את הבעיה של הפסקה זמנית בשירות באזור, צריך לוודא שהאפליקציה פועלת כמצופה בכל האזורים שבהם היא נפרסה.

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

אם יש הפסקות זמניות בשני האזורים בארכיטקטורה הזו, האפליקציה לא תהיה זמינה. צריך להמתין עד ש-Google תפתור את ההפסקה הזמנית בשירות, ואז לוודא שהאפליקציה פועלת כצפוי.

התאמה אוטומטית לעומס (autoscaling) של MIG

כשמריצים את האפליקציה על כמה קבוצות של מכונות וירטואליות לניהול מופעים (MIG) באזורים שונים, האפליקציה נשארת זמינה במהלך הפסקות חשמל באזורים מבודדים או באזורים. היכולת של התאמה אוטומטית לעומס ב-MIGs בלי שמירת מצב מאפשרת לשמור על זמינות וביצועים של האפליקציה ברמות צפויות.

כדי לשלוט בהתנהגות של התאמה אוטומטית לעומס בקבוצות MIG בלי שמירת מצב, אפשר לציין מדדי ניצול משאבים של יעד, כמו ניצול ממוצע של מעבד (CPU). אפשר גם להגדיר התאמה אוטומטית לעומס שמבוססת על תזמון לקבוצות MIG בלי שמירת מצב. אי אפשר להגדיר התאמה אוטומטית לעומס בקבוצות MIG עם שמירת מצב. למידע נוסף, אפשר לעיין במאמר בנושא התאמה אוטומטית לעומס של קבוצות מופעים.

מגבלת הגודל של MIG

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

תיקון אוטומטי של מכונות וירטואליות

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

מיקום ה-VM

בארכיטקטורה שמתוארת במסמך הזה, רמת האפליקציה ורמת האינטרנט פועלות במכונות וירטואליות של Compute Engine שמפוזרות על פני כמה אזורים. ההפצה הזו מבטיחה שהאפליקציה שלכם תהיה עמידה בפני הפסקות חשמל באזורים.

כדי לשפר את החוסן של הארכיטקטורה, אפשר ליצור מדיניות מיקום מפוזר ולהחיל אותה על תבנית ה-MIG. כשקבוצת ה-MIG יוצרת מכונות וירטואליות, היא ממקמת אותן בכל אזור בשרתים פיזיים שונים (שנקראים מארחים), כך שהמכונות הווירטואליות עמידות בפני כשלים של מארחים ספציפיים. מידע נוסף זמין במאמר בנושא יצירה והחלה של מדיניות בנושא מיקום מודעות במכונות וירטואליות.

תכנון הקיבולת של מכונות וירטואליות

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

אחסון שומר מצב (Stateful)

שיטה מומלצת בתכנון אפליקציות היא להימנע מהצורך בדיסקים מקומיים עם שמירת מצב. אבל אם הדרישה קיימת, אתם יכולים להגדיר את הדיסקים המתמידים כך שיהיו בעלי מצב כדי להבטיח שהנתונים יישמרו כשמכונות ה-VM יתוקנו או ייצרו מחדש. עם זאת, מומלץ להשאיר את דיסקי האתחול בלי שמירת מצב, כדי שתוכלו לעדכן אותם לתמונות העדכניות ביותר עם גרסאות חדשות ותיקוני אבטחה. מידע נוסף זמין במאמר בנושא הגדרת דיסקים קשיחים מתמידים עם שמירת מצב בקבוצות של מכונות וירטואליות לניהול מופעים (MIG).

עמידות הנתונים

אתם יכולים להשתמש ב-Backup and DR כדי ליצור גיבויים של מכונות וירטואליות ב-Compute Engine, לאחסן אותם ולנהל אותם. שירות Backup and DR מאחסן נתוני גיבוי בפורמט המקורי שניתן לקריאה על ידי האפליקציה. כשנדרש, אתם יכולים לשחזר את עומסי העבודה שלכם לסביבת הייצור באמצעות נתונים מאחסון גיבוי לטווח ארוך, בלי שתצטרכו להכין או להעביר נתונים.

‫Compute Engine מספק את האפשרויות הבאות כדי לעזור לכם לוודא שהנתונים שמאוחסנים בכרכים של Persistent Disk יהיו עמידים:

  • אתם יכולים להשתמש בתמונות מצב כדי לתעד את המצב של נפחי אחסון של דיסקים קשיחים בנקודת זמן מסוימת. תמונות המצב מאוחסנות באופן יתיר באזורים רבים, עם סכומי ביקורת אוטומטיים כדי להבטיח את שלמות הנתונים. כברירת מחדל, תמונות המצב הן מצטברות, כך שהן תופסות פחות נפח אחסון ואתם חוסכים כסף. תמונות המצב מאוחסנות במיקום ב-Cloud Storage שאתם יכולים להגדיר. לקבלת המלצות נוספות לגבי שימוש בתמונות מצב וניהול שלהן, אפשר לעיין במאמר שיטות מומלצות לשימוש בתמונות מצב של דיסקים ב-Compute Engine.
  • כדי לוודא שהנתונים ב-Persistent Disk יישארו זמינים אם תתרחש הפסקה זמנית בשירות באזור, אפשר להשתמש ב-Regional Persistent Disk או ב-Hyperdisk Balanced High Availability. הנתונים בסוגי הדיסקים האלה משוכפלים באופן סינכרוני בין שני אזורים באותו אזור. מידע נוסף זמין במאמר מידע על שכפול סינכרוני של דיסקים.

זמינות מסד הנתונים

כדי להטמיע מעבר לגיבוי במקרה של כשל (failover) בין אזורים במסד נתונים שפרוס במכונה וירטואלית ב-Compute Engine, צריך מנגנון לזיהוי כשלים במסד הנתונים הראשי ותהליך למעבר לגיבוי למסד הנתונים המשני. הפרטים הספציפיים של מנגנון המעבר לגיבוי תלויים במסד הנתונים שבו אתם משתמשים. אתם יכולים להגדיר מופע של observer כדי לזהות כשלים במסד הנתונים הראשי ולתזמן את המעבר לגיבוי. כדי להימנע ממצב של פיצול מוח ולמנוע מעבר גיבוי מיותר, צריך להגדיר את כללי היתירות כשל בצורה מתאימה. לדוגמאות לארכיטקטורות שאפשר להשתמש בהן כדי להטמיע יתירות כשל למסדי נתונים של PostgreSQL, אפשר לעיין במאמר ארכיטקטורות לזמינות גבוהה של אשכולות PostgreSQL ב-Compute Engine.

שיקולים נוספים בנושא מהימנות

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

הוזלת עלויות

בקטע הזה מוסבר איך לבצע אופטימיזציה של העלות של הגדרת טופולוגיה Google Cloud רב-אזורית והפעלתה, שנוצרת באמצעות ארכיטקטורת ההפניה הזו.

סוגי מכונות וירטואליות

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

מודל הקצאת הרשאות ל-VM

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

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

ניצול משאבים של מכונות וירטואליות

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

רישוי צד שלישי

כשמעבירים עומסי עבודה של צד שלישי אל Google Cloud, אפשר להקטין את העלויות באמצעות שימוש ברישיונות קיימים (BYOL). לדוגמה, כדי לפרוס מכונות וירטואליות של Microsoft Windows Server, במקום להשתמש בתמונה בתשלום שכוללת עלות נוספת עבור הרישיון של צד שלישי, אפשר ליצור ולהשתמש בתמונה מותאמת אישית של Windows BYOL. לאחר מכן משלמים רק על תשתית המכונות הווירטואליות שבהן משתמשים ב- Google Cloud. האסטרטגיה הזו עוזרת לכם להמשיך ליהנות מהערך של ההשקעות הקיימות ברישיונות של צד שלישי. אם מחליטים להשתמש בגישת BYOL, ההמלצות הבאות יכולות לעזור להקטין את העלויות:

  • כדי להקצות את מספר ליבות המעבד הנדרש באופן עצמאי מהזיכרון, אפשר להשתמש בסוגי מכונות בהתאמה אישית. כך אפשר להגביל את עלות הרישוי של הצד השלישי למספר ליבות המעבד שנדרשות.
  • כדי להקטין את מספר המעבדים הווירטואליים לכל ליבה מ-2 ל-1, משביתים את הריבוי משימות סימולטני (SMT).

אם פורסים מסד נתונים של צד שלישי כמו Microsoft SQL Server במכונות וירטואליות של Compute Engine, צריך לקחת בחשבון את עלויות הרישיון של תוכנת הצד השלישי. כשמשתמשים בשירות מסד נתונים מנוהל כמו Cloud SQL, עלויות הרישיון של מסד הנתונים כלולות בחיובים על השירות.

שיקולי עלות נוספים

כשיוצרים את הארכיטקטורה של עומס העבודה, כדאי גם לעיין בשיטות המומלצות ובהמלצות הכלליות שמופיעות במאמר Google Cloud Well-Architected Framework: הוזלת העלויות.

יעילות תפעולית

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

עדכונים בהגדרות של מכונות וירטואליות

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

תמונות VM

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

תבניות מכונה דטרמיניסטיות

אם תבניות של הגדרות מכונה שבהן אתם משתמשים ב-MIG כוללות סקריפטים לטעינה בזמן ההפעלה כדי להתקין תוכנות של צד שלישי, חשוב לוודא שהסקריפטים מציינים באופן מפורש פרמטרים של התקנת תוכנה, כמו גרסת התוכנה. אחרת, כשקבוצת ה-MIG יוצרת את מכונות ה-VM, יכול להיות שהתוכנה שמותקנת במכונות ה-VM לא תהיה עקבית. לדוגמה, אם תבנית של הגדרות מכונה כוללת סקריפט לטעינה בזמן ההפעלה כדי להתקין את Apache HTTP Server 2.0 (החבילה apache2), צריך לוודא שהסקריפט מציין את הגרסה המדויקת של apache2 שצריך להתקין, כמו גרסה 2.4.53. מידע נוסף זמין במאמר בנושא תבניות מופעים דטרמיניסטיות.

שיקולים תפעוליים נוספים

כשיוצרים את הארכיטקטורה של עומס העבודה, כדאי לקחת בחשבון את השיטות המומלצות הכלליות ואת ההמלצות ליעילות תפעולית שמתוארות במאמר Google Cloud Well-Architected Framework: Operational excellence.

אופטימיזציה של הביצועים

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

ביצועי מחשוב

‫Compute Engine מציע מגוון רחב של סוגי מכונות מוגדרים מראש וניתנים להתאמה אישית לעומסי העבודה שמופעלים במכונות וירטואליות. כדאי לבחור סוג מכונה מתאים בהתאם לדרישות הביצועים שלכם. למידע נוסף, אפשר לעיין במאמר משפחות של מכונות – משאבים ומדריך השוואה.

ריבוי שרשורים ב-VM

כל מעבד וירטואלי (vCPU) שמוקצה למכונה וירטואלית ב-Compute Engine מיושם כריבוי נימים (multithreading) של חומרה יחידה. כברירת מחדל, שני מעבדים וירטואליים חולקים ליבה פיזית של מעבד. ביישומים שכוללים פעולות מקבילות מאוד או שמבצעים חישובים של נקודה צפה (כמו ניתוח רצפים גנטיים ומודלים של סיכונים פיננסיים), אפשר לשפר את הביצועים על ידי הקטנת מספר השרשורים שפועלים בכל ליבת CPU פיזית. מידע נוסף זמין במאמר בנושא הגדרת מספר השרשורים לכל ליבה.

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

Network Service Tiers

מסלולי שירות הרשת מאפשרים לכם לבצע אופטימיזציה של עלות הרשת והביצועים של עומסי העבודה. אפשר לבחור במסלול פרימיום או במסלול רגיל. במסלול פרימיום, תעבורת הנתונים עוברת דרך רשת הליבה הגלובלית של Google כדי להשיג איבוד מינימלי של מנות וזמן אחזור נמוך. במסלול הרגיל, תעבורת הנתונים מועברת באמצעות קישור בין רשתות שכנות (peering), ספקי אינטרנט (ISP) או רשתות העברה בנקודת קצה PoP שהכי קרובה לאזור שבו פועלת עומס העבודה שלכם Google Cloud . כדי לשפר את הביצועים, מומלץ להשתמש במסלול פרימיום. כדי לבצע אופטימיזציה של העלות, מומלץ להשתמש במסלול הרגיל.

ביצועי הרשת

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

ב-Compute Engine יש מגבלה לכל מכונה וירטואלית על רוחב פס של רשת ליציאה. המגבלה הזו תלויה בסוג המכונה הווירטואלית ובשאלה אם תעבורת הנתונים מנותבת דרך אותה רשת VPC כמו המכונה הווירטואלית של המקור. במכונות וירטואליות עם סוגים מסוימים של מכונות, כדי לשפר את ביצועי הרשת, אפשר להגדיל את רוחב הפס המקסימלי ליציאה על ידי הפעלת רשת Tier_1.

שמירה במטמון

אם האפליקציה שלכם מציגה נכסים סטטיים של אתרים, והארכיטקטורה שלכם כוללת מאזן עומסים חיצוני גלובלי של אפליקציות (ALB), אתם יכולים להשתמש ב-Cloud CDN כדי לשמור במטמון תוכן סטטי שמתבצעת אליו גישה באופן קבוע, בקרבת המשתמשים. Cloud CDN יכול לעזור לכם לשפר את הביצועים של המשתמשים, לצמצם את השימוש במשאבי התשתית בבק-אנד ולהפחית את העלויות של העברת נתונים ברשת. מידע נוסף זמין במאמר שיפור הביצועים של אתרים והגנה על אתרים באמצעות איזון עומסים.

שיקולי ביצועים נוספים

כשיוצרים את הארכיטקטורה של עומס העבודה, כדאי לפעול לפי השיטות המומלצות וההמלצות הכלליות שמופיעות במאמר Google Cloud Well-Architected Framework: Performance optimization.

המאמרים הבאים

שותפים ביצירת התוכן

מחברים:

תורמי תוכן אחרים: