אפשר להגדיר תבנית של תהליך עבודה בקובץ 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מוגדר למחרוזת ריקה ('') כדי לאפשר ל-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"). משאב התבנית עם אותו שם תבנית יוחלף (יעודכן) ומספר הגרסה שלו יגדל. אם לא קיימת תבנית עם אותו שם, המערכת תיצור אותה.