גרסאות של תמונות של אשכולות ב-Managed Service for Apache Spark

‫Managed Service for Apache Spark באשכולות משתמש בתמונות כדי לקשר בין מחברים שימושיים Google Cloud ורכיבי Apache Spark ו-Apache Hadoop לחבילה אחת שאפשר לפרוס באשכול Managed Service for Apache Spark. קובצי האימג' האלה מכילים את מערכת ההפעלה הבסיסית (Debian או Ubuntu) של האשכול, יחד עם רכיבי ליבה ורכיבים אופציונליים שנדרשים להרצת משימות, כמו Spark,‏ Hadoop ו-Hive. התמונות האלה משודרגות מעת לעת כדי לכלול שיפורים ותכונות חדשים. בעזרת Managed Service for Apache Spark versioning אתם יכולים לבחור קבוצות של גרסאות תוכנה כשאתם יוצרים אשכולות.

איך מתבצע ניהול גרסאות

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

version_major.version_minor.version_sub_minor-os_distribution

הפצות מערכת ההפעלה הבאות נתמכות:

קוד ההפצה של מערכת ההפעלה OS Distribution
debian12 ‫Debian 12
debian10 ‫Debian 10
debian11 ‫Debian 11
rocky8 Rocky Linux 8
rocky9 Rocky Linux 9
ubuntu18 Ubuntu 18.04 LTS
ubuntu20 ‫Ubuntu 20.04 LTS
ubuntu22 ‫Ubuntu 22.04 LTS

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

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

בחירת גרסאות

כשיוצרים אשכול חדש של Managed Service for Apache Spark, המערכת משתמשת כברירת מחדל בגרסה האחרונה של תמונת Debian שזמינה. כשיוצרים אשכול, אפשר לבחור גרסת תמונה של Debian,‏ Rocky Linux או Ubuntu (ראו את רשימת גרסאות התמונות של Managed Service for Apache Spark). כשמציינים תמונות מבוססות Debian, אפשר להשמיט את הסיומת של קוד הפצת מערכת ההפעלה, למשל על ידי ציון 2.0 כדי לבחור את התמונה 2.0-debian10. חובה להשתמש בסיומת של מערכת ההפעלה כדי לבחור תמונה שמבוססת על Rocky Linux או על Ubuntu, למשל על ידי ציון 2.0-ubuntu18.

מסוףGoogle Cloud

פותחים את הדף Create cluster. בקטע Define your cluster (הגדרת האשכול), בשדה הנפתח Image type and version (סוג התמונה והגרסה), מוצגת התמונה שתשמש ליצירת האשכול. בתחילה, נבחרת תמונת ברירת המחדל, שהיא הגרסה האחרונה של Debian שזמינה. לוחצים על השדה כדי לבחור מתוך רשימה של תמונות רגילות זמינות או כדי לבחור תמונה בהתאמה אישית.

פקודה ב-CLI של gcloud

כשמשתמשים בפקודה gcloud dataproc clusters create, אפשר להשתמש בארגומנט --image-version כדי לציין גרסת תמונה עבור האשכול החדש.

דוגמה לתמונת Debian:

gcloud dataproc clusters create CLUSTER_NAME \
    --image-version=2.0 \
    --region=REGION

דוגמה לתמונה של Ubuntu:

gcloud dataproc clusters create CLUSTER_NAME \
    --image-version=2.0-ubuntu18 \
    --region=REGION

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

אפשר לבדוק את הגרסה הנוכחית באמצעות Google Cloud CLI.

gcloud dataproc clusters describe CLUSTER_NAME \
    --region=REGION

‫API בארכיטקטורת REST

אפשר לציין את השדה SoftwareConfig imageVersion כחלק מבקשת API של cluster.create.

דוגמה

POST /v1/projects/project-id/regions/us-central1/clusters/
{
  "projectId": "project-id",
  "clusterName": "example-cluster",
  "config": {
    "configBucket": "",
    "gceClusterConfig": {
      "subnetworkUri": "default",
      "zoneUri": "us-central1-b"
    },
    "masterConfig": {
      ...
      }
    },
    "workerConfig": {
      ...
      }
    },
    "softwareConfig": {
      "imageVersion": "2.0"
    }
  }
}
  

כשנוצרות גרסאות חדשות

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

  • מהדורות חשובות של:
    • ‫Spark,‏ Hadoop ורכיבים אחרים של Big Data
    • Google Cloud מחברים
  • שינויים או עדכונים משמעותיים בפונקציונליות של Managed Service for Apache Spark

גרסאות בטא חדשות (עם הסיומת -RC) מתפרסמות לפני הפרסום של גרסה ראשית חדשה:

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

גרסאות משניות חדשות נוצרות מעת לעת כדי לשלב בהן את אחד או יותר מהשינויים הבאים:

  • עדכונים וגרסאות משנה ל:
    • ‫Spark,‏ Hadoop ורכיבים אחרים של Big Data
    • Google Cloud מחברים
  • שינויים או עדכונים קלים בפונקציונליות של Managed Service for Apache Spark

כשנוצרת גרסה משנית חדשה, קובץ האימג' של Debian שלה הופך לברירת המחדל של הגרסה הראשית, והוא מייצג את הגרסה האחרונה של הגרסה הראשית.

מעת לעת נוצרות גרסאות משניות חדשות כדי לשלב בהן אחד או יותר מהשינויים הבאים:

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

גרסת התמונה והתמיכה ב-Managed Service for Apache Spark

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

גרסאות ישנות של תמונות

הפצות של מערכות הפעלה שנתמכו בעבר

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

קוד ההפצה של מערכת ההפעלה OS Distribution תיקון אחרון (סיום התמיכה)
debian9 Debian 9 ‫10 ביולי 2020
deb8 ‫Debian 8 ‫26 באוקטובר 2018

גרסאות תמונה ללא הפצה מפורשת למערכת הפעלה

לפני 16 באוגוסט 2018, גרסאות התמונות נבנו באמצעות Debian 8, ולא כללו את קוד ההפצה של מערכת ההפעלה. הם מצוינים בפורמט הבא:

version_major.version_minor.version_sub_minor

גרסאות 0.1 ו-0.2

גרסאות של תמונות שפורסמו כגרסאות אלפא או בטא לפני הזמינות הכללית של גרסה 1.0 של Managed Service for Apache Spark לא כפופות למדיניות התמיכה של Managed Service for Apache Spark.

הערות חשובות לגבי ניהול גרסאות

  • גרסאות התמונות מכילות את הרכיבים הבאים:
  • האשכולות שלכם ב-Managed Service for Apache Spark לא מתעדכנים אוטומטית כשגרסאות חדשות של תמונות מתפרסמות.
    • המלצות:
    • הפעלת אשכולות עם גרסת המשנה האחרונה של האימג'. המטא-נתונים של התמונה כוללים תווית previous-subminor, שמוגדרת כ-true אם האשכול לא משתמש בגרסה המשנית האחרונה של התמונה.
      • כדי לראות את המטא-נתונים של תמונה:
        1. מריצים את הפקודה הבאה gcloud compute images list --filter כדי להציג את שם המשאב של תמונה של Managed Service for Apache Spark.
          gcloud compute images list --project=PROJECT_NAME --filter="labels.goog-dataproc-version ~ ^IMAGE_VERSION (such as 2.2.16-debian12)"
          
        2. מריצים את הפקודה הבאה של gcloud compute images describe כדי להציג את המטא-נתונים של התמונה.
          gcloud compute images describe --project=PROJECT_NAME IMAGE_NAME"
          
    • חשוב לבדוק ולאמת שהאפליקציות פועלות בהצלחה באשכולות שנוצרו באמצעות גרסאות חדשות של תמונות, במיוחד כשמשתמשים בגרסאות חדשות של תמונות.