יצירת אשכול Managed Service for Apache Spark zero-scale

במסמך הזה מוסבר איך ליצור אשכול של Managed Service for Apache Spark עם אפס צמתים.

אשכולות של Managed Service for Apache Spark zero-scale הם דרך חסכונית להשתמש באשכולות של Managed Service for Apache Spark. בניגוד לאשכולות רגילים של Managed Service for Apache Spark שנדרשים לפחות שני עובדים ראשיים, באשכולות של Managed Service for Apache Spark zero-scale נעשה שימוש רק בעובדים משניים שאפשר להקטין את מספרם לאפס.

אשכולות Managed Service for Apache Spark עם אפס צמתים מתאימים לשימוש כאשכולות שפועלים לאורך זמן עם תקופות של חוסר פעילות, כמו אשכול שמארח מחברת Jupiter. הם מספקים ניצול משאבים משופר באמצעות שימוש במדיניות של התאמה אוטומטית לעומס ללא שינוי גודל.

מאפיינים ומגבלות

אשכול של Managed Service for Apache Spark zero-scale דומה לאשכול רגיל, אבל יש לו מאפיינים ומגבלות ייחודיים:

  • נדרשת גרסת אימג' 2.2.53 ואילך.
  • תמיכה רק בעובדים משניים, לא בעובדים ראשיים.
  • כולל שירותים כמו YARN, אבל לא תומך במערכת הקבצים HDFS.

    • כדי להשתמש ב-Cloud Storage כמערכת הקבצים שמוגדרת כברירת מחדל, צריך להגדיר את מאפיין האשכול core:fs.defaultFS למיקום של קטגוריה של Cloud Storage ‏(gs://BUCKET_NAME).
    • אם משביתים רכיב במהלך יצירת האשכול, צריך להשבית גם את HDFS.
  • אי אפשר להמיר אותו לאשכול רגיל או מאשכול רגיל.

  • נדרשת מדיניות של התאמה אוטומטית לעומס עבור סוגי אשכולות ZERO_SCALE.

  • צריך לבחור באפשרות מכונות וירטואליות גמישות בתור סוג המכונה.

  • אין תמיכה ברכיב Oozie.

  • אי אפשר ליצור אותם במסוף Google Cloud .

אופציונלי: הגדרת מדיניות של התאמה אוטומטית לעומס

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

  • מגדירים את סוג האשכול ל-ZERO_SCALE.
  • הגדרת מדיניות התאמה לעומס (autoscaling) רק להגדרת העובד המשני.

מידע נוסף זמין במאמר יצירת מדיניות של שינוי גודל אוטומטי.

יצירת אשכול Managed Service for Apache Spark zero-scale

יוצרים אשכול עם אפס צמתים באמצעות ה-CLI של gcloud או Dataproc API.

gcloud

מריצים את הפקודה gcloud dataproc clusters create באופן מקומי בחלון טרמינל או ב-Cloud Shell.

gcloud dataproc clusters create CLUSTER_NAME \
    --region=REGION \
    --cluster-type=zero-scale \
    --autoscaling-policy=AUTOSCALING_POLICY \
    --properties=core:fs.defaultFS=gs://BUCKET_NAME \
    --secondary-worker-machine-types="type=MACHINE_TYPE1[,type=MACHINE_TYPE2...][,rank=RANK]"
    ...other args

מחליפים את מה שכתוב בשדות הבאים:

  • CLUSTER_NAME: שם האשכול של Managed Service for Apache Spark zero-scale.
  • REGION: אזור זמין ב-Compute Engine.
  • AUTOSCALING_POLICY: המזהה או ה-URI של המשאב של מדיניות שינוי הגודל האוטומטי.
  • BUCKET_NAME: שם הקטגוריה ב-Cloud Storage.
  • MACHINE_TYPE: סוג מכונה ספציפי ב-Compute Engine, כמו n1-standard-4 או e2-standard-8.
  • RANK: מגדיר את העדיפות של רשימה של סוגי מכונות.

REST

יוצרים אשכול עם אפס צמתים באמצעות בקשת cluster.create של Managed Service for Apache Spark API בארכיטקטורת REST:

  • מגדירים את ClusterConfig.ClusterType לערך ZERO_SCALE עבור secondaryWorkerConfig.
  • מגדירים את AutoscalingConfig.policyUri עם מזהה מדיניות ההתאמה האוטומטית של גודל הקבוצה ZERO_SCALE.
  • מוסיפים את core:fs.defaultFS:gs://BUCKET_NAME SoftwareConfig.property. מחליפים את BUCKET_NAME בשם של קטגוריית Cloud Storage.

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