יצירת אשכול Dataproc
דרישות:
שם: שם האשכול חייב להתחיל באות קטנה באנגלית, להמשיך עם עד 51 אותיות קטנות, ספרות ומקפים, ולא להסתיים במקף.
אזור האשכול: צריך לציין אזור של Compute Engine לאשכול, כמו
us-east1אוeurope-west1, כדי לבודד את משאבי האשכול, כמו מכונות וירטואליות ומטא-נתונים של האשכול שמאוחסנים ב-Cloud Storage, בתוך האזור.- מידע נוסף על אזורים ב-Compute Engine זמין במאמר בנושא אזור של אשכול.
- מידע על בחירת אזור זמין במאמר אזורים ותחומים זמינים. אפשר גם להריץ את הפקודה
gcloud compute regions listכדי להציג רשימה של האזורים הזמינים.
קישוריות: מכונות וירטואליות (VM) של Compute Engine באשכול Dataproc, שכולל מכונות וירטואליות ראשיות ומכונות וירטואליות של עובדים, צריכות קישוריות מלאה בין רשתות IP פנימיות. רשת ה-VPC
defaultמספקת את הקישוריות הזו (ראו הגדרת רשת של אשכול Dataproc).
gcloud
כדי ליצור אשכול Dataproc בשורת הפקודה, מריצים את הפקודה gcloud dataproc clusters create באופן מקומי בחלון טרמינל או ב-Cloud Shell.
gcloud dataproc clusters create CLUSTER_NAME \ --region=REGION
הפקודה יוצרת אשכול עם הגדרות ברירת המחדל של שירות Dataproc למכונות הווירטואליות הראשיות והמשניות, לגדלים ולסוגים של הדיסקים, לסוג הרשת, לאזור ולמיקום שבו האשכול נפרס ולהגדרות אחרות של האשכול. במאמר בנושא הפקודה gcloud dataproc clusters create מוסבר איך משתמשים בדגלים של שורת הפקודה כדי להתאים אישית את הגדרות האשכול.
יצירת אשכול באמצעות קובץ YAML
- מריצים את הפקודה
gcloudהבאה כדי לייצא את התצורה של אשכול Dataproc קיים לקובץcluster.yaml.gcloud dataproc clusters export EXISTING_CLUSTER_NAME \ --region=REGION \ --destination=cluster.yaml
- יוצרים אשכול חדש על ידי ייבוא של קובץ ה-YAML של התצורה.
gcloud dataproc clusters import NEW_CLUSTER_NAME \ --region=REGION \ --source=cluster.yaml
הערה: במהלך פעולת הייצוא, שדות ספציפיים לאשכול, כמו שם האשכול, שדות פלט בלבד ותוויות שמוחלות באופן אוטומטי, מסוננים. השדות האלה אסורים בקובץ ה-YAML המיובא שמשמש ליצירת אשכול.
REST
בקטע הזה מוסבר איך ליצור אשכול עם הערכים הנדרשים ועם הגדרת ברירת המחדל (1 מאסטר, 2 עובדים).
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- CLUSTER_NAME: שם האשכול
- PROJECT: Google Cloud מזהה הפרויקט
- REGION: אזור זמין ב-Compute Engine שבו ייווצר האשכול.
- ZONE: אזור אופציונלי בתוך האזור שנבחר שבו ייצור האשכול.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://dataproc.googleapis.com/v1/projects/PROJECT/regions/REGION/clusters
תוכן בקשת JSON:
{
"project_id":"PROJECT",
"cluster_name":"CLUSTER_NAME",
"config":{
"master_config":{
"num_instances":1,
"machine_type_uri":"n1-standard-2",
"image_uri":""
},
"softwareConfig": {
"imageVersion": "",
"properties": {},
"optionalComponents": []
},
"worker_config":{
"num_instances":2,
"machine_type_uri":"n1-standard-2",
"image_uri":""
},
"gce_cluster_config":{
"zone_uri":"ZONE"
}
}
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"name": "projects/PROJECT/regions/REGION/operations/b5706e31......",
"metadata": {
"@type": "type.googleapis.com/google.cloud.dataproc.v1.ClusterOperationMetadata",
"clusterName": "CLUSTER_NAME",
"clusterUuid": "5fe882b2-...",
"status": {
"state": "PENDING",
"innerState": "PENDING",
"stateStartTime": "2019-11-21T00:37:56.220Z"
},
"operationType": "CREATE",
"description": "Create cluster with 2 workers",
"warnings": [
"For PD-Standard without local SSDs, we strongly recommend provisioning 1TB ...""
]
}
}
המסוף
פותחים את הדף Create a cluster (יצירת אשכול) של Dataproc במסוף Google Cloud בדפדפן, ואז לוחצים על Create (יצירה) בשורה של האשכול Compute Engine בדף Create a Dataproc cluster on Compute Engine (יצירת אשכול Dataproc ב-Compute Engine). החלונית Set up cluster מסומנת והשדות מלאים בערכי ברירת מחדל. אפשר לבחור כל חלונית ולאשר או לשנות את ערכי ברירת המחדל כדי להתאים אישית את האשכול.
לוחצים על Create (יצירה) כדי ליצור את האשכול. שם האשכול מופיע בדף Clusters, והסטטוס שלו מתעדכן ל-Running אחרי שהאשכול מוקצה. לוחצים על שם האשכול כדי לפתוח את הדף 'פרטי האשכול', שבו אפשר לבדוק משימות, מופעים והגדרות תצורה של האשכול, ולהתחבר לממשקי אינטרנט שפועלים באשכול.
Go
- מתקינים את ספריית הלקוח.
- מגדירים Application Default Credentials.
- מריצים את הקוד.
Java
- מתקינים את ספריית הלקוח.
- מגדירים Application Default Credentials.
- מריצים את הקוד.
Node.js
- מתקינים את ספריית הלקוח.
- מגדירים Application Default Credentials.
- מריצים את הקוד.
Python
- מתקינים את ספריית הלקוח.
- מגדירים Application Default Credentials.
- מריצים את הקוד.