אתם יכולים ליצור אשכול Managed Service for Apache Spark עם תמונת מכונה בהתאמה אישית שכוללת את החבילות שהותקנו מראש. בדף הזה מוסבר איך ליצור קובץ אימג' בהתאמה אישית ולהתקין אותו באשכול של Managed Service for Apache Spark.
שיקולים ומגבלות בשימוש
משך החיים של קובץ אימג' בהתאמה אישית: כדי לוודא שהאשכולות מקבלים את עדכוני השירות ותיקוני הבאגים האחרונים, יצירת אשכולות עם קובץ אימג' בהתאמה אישית מוגבלת ל-365 ימים מתאריך היצירה של קובץ האימג' בהתאמה אישית. חשוב לזכור שאשכולות קיימים שנוצרו באמצעות קובץ אימג' בהתאמה אישית יכולים לפעול ללא הגבלת זמן.
אם אתם רוצים ליצור אשכולות עם תמונת OS מותאמת אישית ספציפית לתקופה של יותר מ-365 ימים, יכול להיות שתצטרכו להשתמש באוטומציה. מידע נוסף זמין במאמר יצירת אשכול עם קובץ אימג' מותאם אישית שפג תוקפו.
רק ב-Linux: ההוראות במסמך הזה רלוונטיות רק למערכות הפעלה של Linux. יכול להיות שבגרסאות עתידיות של Managed Service for Apache Spark תהיה תמיכה במערכות הפעלה אחרות.
קובצי אימג' בסיסיים נתמכים: כדי ליצור קובצי אימג' בהתאמה אישית, צריך להתחיל מקובץ אימג' בסיסי של Managed Service for Apache Spark. אפשר להשתמש בתמונות הבסיס הבאות: Debian, Rocky Linux ו-Ubuntu.
- זמינות של קובצי אימג' בסיסיים: קובצי אימג' חדשים שמופיעים בנתוני הגרסה של Managed Service for Apache Spark לא זמינים לשימוש כבסיס לקובצי אימג' בהתאמה אישית עד שבוע מתאריך ההודעה עליהם.
תמונות בסיס בגרסה
2.2וגרסאות קודמות: כברירת מחדל, כל הרכיבים האופציונליים של Managed Service for Apache Spark (חבילות של מערכת ההפעלה והגדרות אישיות) מותקנים בתמונה בהתאמה אישית. אתם יכולים להתאים אישית את הגרסאות וההגדרות של חבילות מערכת ההפעלה.תמונות בסיס מגרסה
2.3ואילך: רק הרכיבים האופציונליים שנבחרו מותקנים בתמונה בהתאמה אישית (ראו הדגלgenerate_custom_image.py--optional-components).לא משנה באיזו תמונת בסיס אתם משתמשים לתמונה בהתאמה אישית, כשאתם יוצרים את האשכול אתם צריכים לבחור רכיבים אופציונליים או להוסיף אותם לרשימה.
דוגמה: פקודה ליצירת אשכול ב-Google Cloud CLI:
gcloud dataproc clusters create CLUSTER_NAME --image=CUSTOM_IMAGE_URI \ --optional-components=COMPONENT_NAME \ ... other flags
אם לא תציינו את שם הרכיב כשתיצרו את האשכול, הרכיב האופציונלי יימחק, כולל כל חבילות מערכת ההפעלה וההגדרות האישיות.
שימוש בתמונות בהתאמה אישית שמתארחות בפרויקט אחר: אם אתם משתמשים בתמונה בהתאמה אישית שמתארחת בפרויקט אחר, חשבון השירות של סוכן השירות של Managed Service for Apache Spark בפרויקט שלכם צריך לקבל את ההרשאה
compute.images.getלתמונה בפרויקט המארח. כדי לתת את ההרשאה הזו, אתם יכולים להקצות את התפקידroles/compute.imageUserבתמונה שמתארחת לחשבון השירות של סוכן השירות של Managed Service for Apache Spark בפרויקט (ראו שיתוף תמונות בהתאמה אישית בתוך הארגון).שימוש בסודות של MOK (מפתח בעלי המכונה) לאתחול מאובטח: כדי להפעיל אתחול מאובטח עם קובץ האימג' בהתאמה אישית של Managed Service for Apache Spark, מבצעים את הפעולות הבאות:
מפעילים את Secret Manager API (
secretmanager.googleapis.com. השירות Managed Service for Apache Spark יוצר ומנהל זוג מפתחות באמצעות השירות Secret Manager.מוסיפים את הדגל
--service-account="SERVICE_ACCOUNT"לפקודהgenerate_custom_image.pyכשיוצרים קובץ אימג' בהתאמה אישית. הערה: צריך להקצות לחשבון השירות את התפקיד "צפייה ב-Secret Manager" (roles/secretmanager.viewer) בפרויקט, ואת התפקיד "גישה ל-Secret Manager" (roles/secretmanager.secretAccessor) בסודות הציבוריים והפרטיים.מידע נוסף ודוגמאות זמינים בקובץ
README.mdובקבצים אחרים בספרייה examples/secure-boot של המאגרGoogleCloudDataproc/custom-imagesב-GitHub.כדי להשבית את האתחול המאובטח: כברירת מחדל, הסקריפטים של קובץ האימג' בהתאמה אישית של Managed Service for Apache Spark יוצרים ומנהלים זוג מפתחות באמצעות Secret Manager כשהם מופעלים מאשכול של Managed Service for Apache Spark. אם אתם לא רוצים להשתמש באתחול מאובטח עם קובץ האימג' בהתאמה אישית, הוסיפו את
--trusted-cert=""(ערך דגל ריק) לפקודהgenerate_custom_image.pyכשאתם יוצרים את קובץ האימג' בהתאמה אישית.
לפני שמתחילים
חשוב להגדיר את הפרויקט לפני שיוצרים את התמונה בהתאמה אישית.
הגדרת הפרויקט
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Dataproc API, Compute Engine API, and Cloud Storage APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Install the Google Cloud CLI.
-
Configure the gcloud CLI to use your federated identity.
For more information, see Sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init - מתקינים את Python 3.11 ואילך
- מכינים סקריפט להתאמה אישית שמתקין חבילות בהתאמה אישית או מעדכן הגדרות, לדוגמה:
#! /usr/bin/bash apt-get -y update apt-get install python-dev apt-get install python-pip pip install numpy
יצירת קטגוריה של Cloud Storage בפרויקט
- במסוף Google Cloud , נכנסים לדף Buckets של Cloud Storage.
- לוחצים על Create.
- ממלאים את פרטי הקטגוריה בדף Create a bucket. כדי לעבור לשלב הבא לוחצים על Continue.
-
בקטע Get started, מבצעים את הפעולות הבאות:
- מזינים שם ייחודי גלובלי שעומד בדרישות למתן שמות של קטגוריות.
- כדי להוסיף תווית לקטגוריה, מרחיבים את הקטע Labels (), לוחצים על add_box Add label ומציינים
keyו-valueבשביל התווית.
-
בקטע Choose where to store your data, מבצעים את הפעולות הבאות:
- בוחרים Location type.
- בתפריט הנפתח Location type, בוחרים את המיקום שבו נתוני הקטגוריה יאוחסנו באופן קבוע.
- אם בוחרים בסוג המיקום בשני אזורים, אפשר גם להפעיל את רפליקציה בקצב טורבו באמצעות תיבת הסימון הרלוונטית.
- כדי להגדיר רפליקציה בין קטגוריות, בוחרים באפשרות Add cross-bucket replication via Storage Transfer Service ופועלים לפי השלבים הבאים:
הגדרת רפליקציה בין קטגוריות
- בתפריט Bucket, בוחרים קטגוריה.
בקטע Replication settings, לוחצים על Configure כדי לקבוע את ההגדרות של משימת הרפליקציה.
מופיעה החלונית Configure cross-bucket replication.
- כדי לסנן אובייקטים לשכפול לפי קידומת של שם האובייקט, מזינים את הקידומת שרוצים לכלול או להחריג אובייקטים ממנה, ואז לוחצים על Add a prefix.
- כדי להגדיר סוג אחסון לאובייקטים שנוצרו ברפליקציה, בוחרים סוג אחסון בתפריט Storage class. אם מדלגים על השלב הזה, האובייקטים המשוכפלים ישתמשו כברירת מחדל בסוג האחסון של קטגוריית היעד.
- לוחצים על סיום.
-
בקטע Choose how to store your data, מבצעים את הפעולות הבאות:
- בוחרים סוג אחסון (storage class) שמוגדר כברירת מחדל לקטגוריה, או בוחרים ב-Autoclass לניהול אוטומטי של סוג האחסון של נתוני הקטגוריה.
- כדי להפעיל מרחב שמות היררכי, בקטע Optimize storage for data-intensive workloads בוחרים באפשרות Enable hierarchical namespace on this bucket.
- בקטע Choose how to control access to objects, בוחרים אם הקטגוריה אוכפת public access prevention או לא, ואז בוחרים access control method לאובייקטים של הקטגוריה.
-
בקטע Choose how to protect object data, מבצעים את הפעולות הבאות:
- בוחרים את האפשרויות שרוצים להגדיר לקטגוריה בקטע הגנה על נתונים.
- כדי להפעיל את האפשרות מחיקה זמנית, לוחצים על תיבת הסימון Soft delete policy (For data recovery) ומציינים את מספר הימים שבהם רוצים לשמור את האובייקטים אחרי המחיקה.
- כדי להגדיר ניהול גרסאות של אובייקטים, לוחצים על תיבת הסימון ניהול גרסאות של אובייקטים (לניהול גרסאות) ומציינים את המספר המקסימלי של גרסאות לכל אובייקט ואת מספר הימים שאחריהם פג התוקף של הגרסאות הלא עדכניות.
- כדי להפעיל את מדיניות שמירת הנתונים על אובייקטים וקטגוריות, לוחצים על תיבת הסימון Retention (For compliance) ואז מבצעים את הפעולות הבאות:
- כדי להפעיל את נעילת שמירת האובייקטים, לוחצים על תיבת הסימון Enable object retention.
- כדי להפעיל את Bucket Lock, לוחצים על תיבת הסימון Set bucket retention policy ובוחרים יחידת זמן ואת משך הזמן של תקופת השמירה.
- כדי לבחור איך להצפין את נתוני האובייקטים, מרחיבים את הקטע Data encryption () ובוחרים שיטה ל-Data encryption.
- בוחרים את האפשרויות שרוצים להגדיר לקטגוריה בקטע הגנה על נתונים.
-
בקטע Get started, מבצעים את הפעולות הבאות:
- לוחצים על יצירה.
יצירת תמונה בהתאמה אישית
כדי ליצור קובץ אימג' בהתאמה אישית של Managed Service for Apache Spark, משתמשים בתוכנית Python שנקראת generate_custom_image.py.
איך זה עובד
התוכנית generate_custom_image.py מפעילה מכונה וירטואלית זמנית של Compute Engine עם קובץ האימג' הבסיסי שצוין של Managed Service for Apache Spark, ואז מריצה את הסקריפט להתאמה אישית בתוך המכונה הווירטואלית כדי להתקין חבילות בהתאמה אישית או לעדכן הגדרות. אחרי שסקריפט ההתאמה האישית מסתיים, הוא משבית את המכונה הווירטואלית ויוצר קובץ אימג' בהתאמה אישית של Managed Service for Apache Spark מהדיסק של המכונה הווירטואלית. המכונה הווירטואלית הזמנית נמחקת אחרי שנוצרת התמונה בהתאמה אישית. התמונה בהתאמה אישית נשמרת ואפשר להשתמש בה כדי ליצור אשכולות של Managed Service for Apache Spark.
התוכנית generate_custom_image.py משתמשת ב-CLI של gcloud כדי להריץ תהליכי עבודה עם כמה שלבים ב-Compute Engine.
מריצים את הקוד
מפצלים או משכפלים את הקבצים ב-GitHub ב-Managed Service for Apache Spark custom images.
אחר כך מריצים את הסקריפט generate_custom_image.py כדי ש-Managed Service for Apache Spark ייצור וישמור את קובץ האימג' בהתאמה אישית.
python3 generate_custom_image.py \ --image-name=CUSTOM_IMAGE_NAME \ [--family=CUSTOM_IMAGE_FAMILY_NAME] \ --dataproc-version=IMAGE_VERSION \ --customization-script=LOCAL_PATH \ --zone=ZONE \ --gcs-bucket=gs://BUCKET_NAME \ [--no-smoke-test]
דגלים נדרשים
--image-name: שם הפלט של קובץ האימג' בהתאמה אישית.
--dataproc-version: גרסת האימג' של Managed Service for Apache Spark שבה רוצים להשתמש באימג' בהתאמה אישית. מציינים את הגרסה בפורמטx.y.z-osאוx.y.z-rc-os, לדוגמה "2.0.69-debian10".
--customization-script: נתיב מקומי לסקריפט שהכלי יריץ כדי להתקין את החבילות בהתאמה אישית או לבצע התאמות אישיות אחרות. הסקריפט הזה פועל כסקריפט לטעינה בזמן ההפעלה של Linux רק ב-VM הזמני שמשמש ליצירת קובץ האימג' בהתאמה אישית. אפשר לציין סקריפט אתחול אחר לפעולות אתחול אחרות שרוצים לבצע כשיוצרים אשכול עם קובץ האימג' בהתאמה אישית.תמונות בכמה פרויקטים: אם אתם משתמשים בתמונה בהתאמה אישית כדי ליצור אשכולות בפרויקטים שונים, יכולה להתרחש שגיאה בגלל המטמון של הפקודה
gcloudאוgsutilשמאוחסן בתמונה. כדי למנוע את הבעיה הזו, אפשר לכלול את הפקודה הבאה בסקריפט ההתאמה האישית כדי לנקות את פרטי הכניסה שנשמרו במטמון.rm -r /root/.gsutil /root/.config/gcloud
--zone: האזור ב-Compute Engine שבוgenerate_custom_image.pyייצור מכונה וירטואלית זמנית כדי ליצור את קובץ האימג' בהתאמה אישית.
--gcs-bucket: URI בפורמטgs://BUCKET_NAMEשמפנה לקטגוריה של Cloud Storage. generate_custom_image.pyכותב קובצי יומן לקטגוריה הזו.
-
--family: משפחת התמונות של התמונה בהתאמה אישית. משפחות של קובצי אימג' משמשות לקיבוץ של קובצי אימג' דומים, ואפשר להשתמש בהן כשיוצרים אשכול כמצביע לקובץ האימג' האחרון במשפחה. לדוגמה,custom-2-2-debian12. -
--no-smoke-test: דגל אופציונלי שמשבית את בדיקת העשן של קובץ האימג' החדש בהתאמה אישית. בדיקת העשן יוצרת אשכול בדיקה של Managed Service for Apache Spark עם קובץ האימג' החדש שנוצר, מריצה משימה קטנה ואז מוחקת את האשכול בסוף הבדיקה. בדיקת העשן פועלת כברירת מחדל כדי לוודא שהאימג' החדש בהתאמה אישית יכול ליצור אשכול Managed Service for Apache Spark תקין. השבתת השלב הזה באמצעות הדגל--no-smoke-testמאיצה את תהליך היצירה של קובץ האימג' בהתאמה אישית, אבל לא מומלץ להשתמש בה. -
--subnet: רשת המשנה שמשמשת ליצירת ה-VM שבונה את קובץ האימג' המותאם אישית של Managed Service for Apache Spark. אם הפרויקט הוא חלק מ-VPC משותף, צריך לציין את כתובת ה-URL המלאה של רשת המשנה בפורמט הבא:projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNET.
--optional-components: הדגל הזה זמין רק כשמשתמשים בגרסאות של קובץ אימג' בסיסי2.3ואילך. רשימה של רכיבים אופציונליים, כמו SOLR, RANGER, TRINO, DOCKER, FLINK, HIVE_WEBHCAT, ZEPPELIN, HUDI, ICEBERG ו-PIG (זמין כרכיב אופציונלי בגרסאות תמונה2.3ואילך), להתקנה בתמונה.דוגמה: פקודה ליצירת אשכול ב-Google Cloud CLI:
gcloud dataproc clusters create CLUSTER_NAME --image=CUSTOM_IMAGE_URI \ --optional-components=COMPONENT_NAME \ ... other flags
רשימה של דגלים אופציונליים זמינים מופיעה בקטע Optional Arguments ב-GitHub.
אם הפקודה generate_custom_image.py בוצעה בהצלחה, ה-imageURI של קובץ האימג' בהתאמה אישית יוצג בפלט של חלון הטרמינל (ה-imageUri המלא מוצג במודגש בהמשך):
...
managedCluster:
clusterName: verify-image-20180614213641-8308a4cd
config:
gceClusterConfig:
zoneUri: ZONE
masterConfig:
imageUri: **https://www.googleapis.com/compute/beta/projects/PROJECT_ID/global/images/CUSTOM_IMAGE_NAME**
...
INFO:__main__:Successfully built Dataproc custom image: CUSTOM_IMAGE_NAME
INFO:__main__:
#####################################################################
WARNING: DATAPROC CUSTOM IMAGE 'CUSTOM_IMAGE_NAME'
WILL EXPIRE ON 2018-07-14 21:35:44.133000.
#####################################################################
תוויות מותאמות אישית לגרסאות תמונה (שימוש מתקדם)
כשמשתמשים בכלי הרגיל ליצירת קובצי אימג' בהתאמה אישית של Managed Service for Apache Spark, הכלי מגדיר את התווית goog-dataproc-version בקובץ האימג' בהתאמה אישית שנוצר. התווית משקפת את יכולות התכונה ואת הפרוטוקולים שבהם Managed Service for Apache Spark משתמש כדי לנהל את התוכנה בתמונה.
שימוש מתקדם: אם אתם משתמשים בתהליך משלכם כדי ליצור קובץ אימג' בהתאמה אישית של Managed Service for Apache Spark, אתם צריכים להוסיף את התווית goog-dataproc-version באופן ידני לקובץ האימג' בהתאמה אישית, באופן הבא:
מחלצים את התווית
goog-dataproc-versionמקובץ האימג' הבסיסי של Managed Service for Apache Spark ששימש ליצירת קובץ האימג' בהתאמה אישית.gcloud compute images describe ${BASE_DATAPROC_IMAGE} \ --project cloud-dataproc \ --format="value(labels.goog-dataproc-version)"מגדירים את התווית בתמונה בהתאמה אישית.
gcloud compute images add-labels IMAGE_NAME --labels=[KEY=VALUE,...]
שימוש בתמונה מותאמת אישית
אתם מציינים את קובץ האימג' בהתאמה אישית כשאתם יוצרים אשכול Managed Service for Apache Spark. תמונה בהתאמה אישית נשמרת ב-Cloud Compute Images, ואפשר להשתמש בה כדי ליצור אשכול Managed Service for Apache Spark במשך 365 ימים מתאריך היצירה שלה (כדי להשתמש בתמונה בהתאמה אישית אחרי שתוקף 365 הימים שלה פג, עיינו במאמר יצירת אשכול עם תמונה בהתאמה אישית שפג תוקפה).
URI של תמונה בהתאמה אישית
מעבירים את ה-imageUri של קובץ האימג' בהתאמה אישית לפעולת יצירת האשכול.
אפשר לציין את ה-URI הזה באחת משלוש דרכים:
- URI מלא:
https://www.googleapis.com/compute/beta/projects/PROJECT_ID/global/images/`gs://`BUCKET_NAME` - URI חלקי:
projects/PROJECT_ID/global/images/CUSTOM_IMAGE_NAME - שם מקוצר: CUSTOM_IMAGE_NAME
אפשר גם לציין תמונות בהתאמה אישית לפי ה-URI של המשפחה שלהן, שתמיד בוחר את התמונה האחרונה במשפחת התמונות.
- URI מלא:
https://www.googleapis.com/compute/beta/projects/PROJECT_ID/global/images/family/CUSTOM_IMAGE_FAMILY_NAME/var> - URI חלקי:
projects/PROJECT_ID/global/images/family/CUSTOM_IMAGE_FAMILY_NAME
איך מוצאים את ה-URI של קובץ האימג' בהתאמה אישית
Google Cloud CLI
מריצים את הפקודה הבאה כדי להציג את השמות של קובצי האימג' בהתאמה אישית.
gcloud compute images list
כדי להציג את ה-URI (selfLink) של קובץ האימג' בהתאמה אישית, מעבירים את השם של קובץ האימג' בהתאמה אישית לפקודה הבאה.
gcloud compute images describe custom-image-name
קטע קוד של פלט:
... name: CUSTOM_IMAGE_NAME selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/images/CUSTOM_IMAGE_NAME ...
מסוףGoogle Cloud
- פותחים את הדף Compute Engine→Images במסוף Google Cloud ולוחצים על שם קובץ האימג'.
אפשר להזין שאילתה בשדה
filter imagesכדי להגביל את מספר התמונות שמוצגות.
- הדף Images details נפתח. לוחצים על Equivalent REST.
- תגובת ה-REST מפרטת מידע נוסף על התמונה, כולל
selfLink, שהוא ה-URI של התמונה.{ ... "name": "my-custom-image", "selfLink": "projects/PROJECT_ID/global/images/CUSTOM_IMAGE_NAME", "sourceDisk": ..., ... }
יצירת אשכול עם קובץ אימג' בהתאמה אישית
יוצרים אשכול באמצעות ה-CLI של gcloud, Dataproc API או מסוףGoogle Cloud .
מסוףGoogle Cloud
- פותחים את הדף Create cluster.
- בקטע Define your cluster, לוחצים על Image type and version, בוחרים באפשרות Custom image, מאשרים או משנים את הפרויקט ובוחרים תמונה זמינה בהתאמה אישית.
CLI של gcloud
יוצרים אשכול Managed Service for Apache Spark עם קובץ אימג' בהתאמה אישית באמצעות הפקודה dataproc clusters create עם הדגל --image.
gcloud dataproc clusters create CLUSTER-NAME \ --image=CUSTOM_IMAGE_URI \ --region=REGION \ ... other flags
API בארכיטקטורת REST
כדי ליצור אשכול עם קובץ אימג' בהתאמה אישית, מציינים את ה-URI של קובץ האימג' בהתאמה אישית בשדה InstanceGroupConfig.imageUri באובייקטים masterConfig, workerConfig ו-secondaryWorkerConfig (אם רלוונטי) שנכללים בבקשת ה-API cluster.create.
דוגמה: בקשת REST ליצירת אשכול סטנדרטי של Managed Service for Apache Spark (מאסטר אחד, שני צומתי עובדים) עם קובץ אימג' בהתאמה אישית.
POST /v1/projects/PROJECT_ID/regions/REGION/clusters/
{
"clusterName": "CLUSTER_NAME",
"config": {
"masterConfig": {
"imageUri": "projects/PROJECT_ID/global/images/CUSTOM_IMAGE_NAME"
},
"workerConfig": {
"imageUri": "projects/PROJECT_ID/global/images/CUSTOM_IMAGE_NAME"
}
}
}
שינוי מאפייני האשכול של Managed Service for Apache Spark באמצעות קובץ אימג' בהתאמה אישית
אתם יכולים להשתמש בתמונות בהתאמה אישית כדי לשנות את מאפייני האשכול שמוגדרים במהלך יצירת האשכול. אם יוצרים אשכול עם קובץ אימג' בהתאמה אישית, ופעולת יצירת האשכול מגדירה מאפיינים עם ערכים שונים מאלה שהוגדרו על ידי קובץ האימג' בהתאמה אישית, ערכי המאפיינים שהוגדרו על ידי קובץ האימג' בהתאמה אישית יקבלו קדימות.
כדי להגדיר מאפייני אשכול באמצעות קובץ האימג' בהתאמה אישית:
בסקריפט ההתאמה האישית של קובץ האימג' בהתאמה אישית, יוצרים קובץ
dataproc.custom.propertiesב-/etc/google-dataprocומגדירים בקובץ את ערכי המאפיינים של האשכול.- קובץ
dataproc.custom.propertiesלדוגמה:
dataproc.conscrypt.provider.enable=VALUE dataproc.logging.stackdriver.enable=VALUE
- קטע קוד לדוגמה ליצירת קובץ סקריפט להתאמה אישית, כדי לשנות שני מאפיינים של אשכול:
cat <<EOF >/etc/google-managed-spark/dataproc.custom.properties dataproc.conscrypt.provider.enable=true dataproc.logging.stackdriver.enable=false EOF
- קובץ
יצירת אשכול עם תמונה מותאמת אישית שפג תוקפה
כברירת מחדל, התוקף של תמונות בהתאמה אישית פג 365 ימים אחרי תאריך היצירה של התמונה. כדי ליצור אשכול שמשתמש בתמונה מותאמת אישית שפג תוקפה, מבצעים את השלבים הבאים.
ניסיון ליצור אשכול Managed Service for Apache Spark עם תמונה מותאמת אישית שפג התוקף שלה או שתוקפה יפוג תוך 10 ימים.
gcloud dataproc clusters create CLUSTER-NAME \ --image=CUSTOM-IMAGE-NAME \ --region=REGION \ ... other flags
ה-CLI של gcloud יציג הודעת שגיאה שכוללת את שם המאפיין
dataproc:dataproc.custom.image.expiration.tokenשל האשכול ואת ערך הטוקן.
dataproc:dataproc.custom.image.expiration.token=TOKEN_VALUE
מעתיקים את המחרוזת TOKEN_VALUE ללוח.
משתמשים ב-CLI של gcloud כדי ליצור מחדש את האשכול של Managed Service for Apache Spark, ומוסיפים את הערך של TOKEN_VALUE שהעתקתם כמאפיין של האשכול.
gcloud dataproc clusters create CLUSTER-NAME \ --image=CUSTOM-IMAGE-NAME \ --properties=dataproc:dataproc.custom.image.expiration.token=TOKEN_VALUE \ --region=REGION \ ... other flags
יצירת האשכול עם האימג' בהתאמה אישית אמורה להצליח.