אפשר להגדיר תבנית של תהליך עבודה בקובץ YAML, ואז ליצור מופע של התבנית כדי להריץ את תהליך העבודה. אפשר גם לייבא ולייצא קובץ YAML של תבנית תהליך עבודה כדי ליצור ולעדכן משאב של תבנית תהליך עבודה של Managed Service for Apache Spark.
הפעלת תהליך עבודה באמצעות קובץ YAML
כדי להריץ תהליך עבודה בלי ליצור קודם משאב של תבנית תהליך עבודה, משתמשים בפקודה gcloud dataproc workflow-templates instantiate-from-file.
- מגדירים את תבנית תהליך העבודה בקובץ YAML. קובץ ה-YAML חייב לכלול את כל שדות החובה של WorkflowTemplate, חוץ מהשדה
id. בנוסף, הוא לא יכול לכלול את השדהversionואת כל השדות שמוגדרים כפלט בלבד. בדוגמה הבאה של תהליך העבודה, הרשימהprerequisiteStepIdsבשלבterasortמבטיחה שהשלבterasortיתחיל רק אחרי שהשלבteragenיושלם בהצלחה.jobs: - hadoopJob: args: - teragen - '1000' - hdfs:///gen/ mainJarFileUri: file:///usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar stepId: teragen - hadoopJob: args: - terasort - hdfs:///gen/ - hdfs:///sort/ mainJarFileUri: file:///usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar stepId: terasort prerequisiteStepIds: - teragen placement: managedCluster: clusterName: my-managed-cluster config: gceClusterConfig: zoneUri: us-central1-a - מריצים את תהליך העבודה:
gcloud dataproc workflow-templates instantiate-from-file \ --file=TEMPLATE_YAML \ --region=REGION
יצירת מופע של תהליך עבודה באמצעות קובץ YAML עם Managed Service for Apache Spark Auto Zone Placement
- מגדירים את תבנית תהליך העבודה בקובץ YAML. קובץ ה-YAML הזה זהה לקובץ ה-YAML הקודם, אבל השדה
zoneUriמוגדר למחרוזת ריקה ('') כדי לאפשר ל-Auto Zone Placement ב-Managed Service for Apache Spark לבחור את האזור עבור האשכול.jobs: - hadoopJob: args: - teragen - '1000' - hdfs:///gen/ mainJarFileUri: file:///usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar stepId: teragen - hadoopJob: args: - terasort - hdfs:///gen/ - hdfs:///sort/ mainJarFileUri: file:///usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar stepId: terasort prerequisiteStepIds: - teragen placement: managedCluster: clusterName: my-managed-cluster config: gceClusterConfig: zoneUri: '' - מריצים את תהליך העבודה. כשמשתמשים במיקום אוטומטי, צריך להעביר אזור לפקודה
gcloud.gcloud dataproc workflow-templates instantiate-from-file \ --file=TEMPLATE_YAML \ --region=REGION
ייבוא וייצוא של קובץ YAML של תבנית זרימת עבודה
אתם יכולים לייבא ולייצא קובצי YAML של תבניות זרימת עבודה. בדרך כלל, מייצאים תבנית של תהליך עבודה כקובץ YAML, עורכים את קובץ ה-YAML ואז מייבאים את קובץ ה-YAML הערוך כדי לעדכן את התבנית.
מייצאים את תבנית זרימת העבודה לקובץ YAML. במהלך פעולת הייצוא, השדות
idו-versionוכל השדות שהם רק לפלט מסוננים מהפלט ולא מופיעים בקובץ ה-YAML המיוצא. אפשר להעביר לפקודה את WorkflowTemplategcloud dataproc workflow-templates export TEMPLATE_ID or TEMPLATE_NAME \ --destination=TEMPLATE_YAML \ --region=REGION
idאו את משאב התבנית המוגדר במלואוname("projects/PROJECT_ID/regions/REGION/workflowTemplates/TEMPLATE_ID").עורכים את קובץ ה-YAML באופן מקומי. שימו לב ששדות
id,versionושדות פלט בלבד, שסוננו מקובץ ה-YAML כשייצאתם את התבנית, אסורים בקובץ ה-YAML המיובא.ייבוא קובץ ה-YAML של תבנית זרימת העבודה המעודכנת:
אפשר להעביר לפקודה את WorkflowTemplategcloud dataproc workflow-templates import TEMPLATE_ID or TEMPLATE_NAME \ --source=TEMPLATE_YAML \ --region=REGION
idאו את משאב התבנית המוגדר במלואוname("projects/PROJECT_ID/regions/region/workflowTemplates/TEMPLATE_ID"). משאב התבנית עם אותו שם של תבנית יוחלף (יעודכן) ומספר הגרסה שלו יוגדל. אם לא קיימת תבנית עם אותו שם, היא תיווצר.