מאפיינים שקשורים ל-Apache Hadoop YARN, HDFS, Spark
הרכיבים בקוד פתוח שמותקנים באשכולות Dataproc מכילים קובצי תצורה רבים. לדוגמה, ל-Apache Spark ול-Apache Hadoop יש כמה קובצי הגדרה בפורמט XML ובפורמט טקסט פשוט. אפשר להשתמש בדגל ‑‑properties של הפקודה gcloud dataproc clusters create כדי לשנות הרבה קובצי הגדרה נפוצים כשיוצרים אשכול.
עיצוב
הדגל gcloud dataproc clusters create --properties מקבל את פורמט המחרוזת הבא:
file_prefix1:property1=value1,file_prefix2:property2=value2,...
הפרמטר file_prefix ממופה לקובץ תצורה מוגדר מראש, כמו שמוצג בטבלה שלמטה, והפרמטר property ממופה למאפיין בתוך הקובץ.
התו המפריד שמוגדר כברירת מחדל להפרדה בין כמה מאפייני אשכול הוא פסיק (,). עם זאת, אם ערך מאפיין כולל פסיק, צריך לשנות את התו המפריד על ידי ציון '^delimiter^' בתחילת רשימת המאפיינים (מידע נוסף זמין במאמר בנושא gcloud topic escaping).
- דוגמה לשימוש בתו המפריד '#':
--properties ^#^file_prefix1:property1=part1,part2#file_prefix2:property2=value2
- דוגמה לשימוש בתו המפריד '#':
דוגמאות
פקודת gcloud
כדי לשנות את ההגדרה spark.master בקובץ spark-defaults.conf, מוסיפים את הדגל gcloud dataproc clusters create --properties הבא:
--properties 'spark:spark.master=spark://example.com'
אפשר לשנות כמה מאפיינים בבת אחת, בקובץ הגדרה אחד או יותר, באמצעות פסיק להפרדה. כל מאפיין צריך להיות מוגדר בפורמט המלא file_prefix:property=value. לדוגמה, כדי לשנות את ההגדרה spark.master בקובץ spark-defaults.conf ואת ההגדרה dfs.hosts בקובץ hdfs-site.xml, משתמשים בדגל --properties הבא כשיוצרים אשכול:
--properties 'spark:spark.master=spark://example.com,hdfs:dfs.hosts=/foo/bar/baz'
API ל-REST
כדי להגדיר את spark.executor.memory ל-10g, מוסיפים את ההגדרה properties הבאה לקטע SoftwareConfig בבקשת clusters.create:
"properties": {
"spark:spark.executor.memory": "10g"
}
דרך קלה לראות איך ליצור את גוף ה-JSON של בקשת REST של אשכולות Dataproc API היא להפעיל את הפקודה המקבילה gcloud באמצעות הדגל --log-http.
הנה דוגמה לפקודה gcloud dataproc clusters create, שקובעת את מאפייני האשכול באמצעות הדגל --properties spark:spark.executor.memory=10g.
ביומן stdout מוצג גוף בקשת ה-REST שנוצר (קטע הקוד properties מוצג בהמשך):
gcloud dataproc clusters create CLUSTER_NAME \ --region=REGION \ --properties=spark:spark.executor.memory=10g \ --log-http \ other args ...
פלט:
...
== body start ==
{"clusterName": "my-cluster", "config": {"gceClusterConfig": ...
"masterConfig": {... "softwareConfig": {"properties": {"spark:spark.executor.memory": "10g"}},
...
== body end ==
...
חשוב לבטל את הפקודה אחרי שתוכן ה-JSON מופיע בפלט, אם לא רוצים שהפקודה תיכנס לתוקף.
המסוף
כדי לשנות את ההגדרה spark.master בקובץ spark-defaults.conf:
- במסוף Google Cloud , פותחים את הדף Dataproc Create a cluster. לוחצים על החלונית 'התאמה אישית של האשכול' וגוללים לקטע 'מאפייני האשכול'.
- לוחצים על + הוספת מאפיינים. בוחרים באפשרות spark ברשימת הקידומות, ואז מוסיפים את הערך spark.master בשדה Key ואת ההגדרה בשדה Value.
מאפייני אשכול לעומת מאפייני משימה
המאפיינים של Apache Hadoop YARN, HDFS, Spark ומאפיינים אחרים עם קידומת של קובץ מוחלים ברמת האשכול כשיוצרים אשכול. אי אפשר להחיל את הנכסים האלה על אשכול אחרי יצירת האשכול. עם זאת, אפשר להחיל רבים מהמאפיינים האלה גם על משרות ספציפיות. כשמחילים מאפיין על עבודה, הקידומת של הקובץ לא נמצאת בשימוש.
בדוגמה הבאה, הזיכרון של Spark executor מוגדר ל-4g עבור עבודת Spark (הקידומת spark: הושמטה).
gcloud dataproc jobs submit spark \ --region=REGION \ --properties=spark.executor.memory=4g \ other args ...
אפשר לשלוח מאפייני עבודה בקובץ באמצעות הדגל gcloud dataproc jobs submit job-type --properties-file (לדוגמה, אפשר לעיין בתיאור של --properties-file לשליחת עבודה ב-Hadoop).
gcloud dataproc jobs submit JOB_TYPE \ --region=REGION \ --properties-file=PROPERTIES_FILE \ other args ...
PROPERTIES_FILE הוא קבוצה של זוגות key=value שמופרדים בשורות. הנכס שצריך להגדיר הוא key, והערך שצריך להגדיר לנכס הוא value. תיאור מפורט של פורמט קובץ המאפיינים מופיע במאמר בנושא המחלקה java.util.Properties.
הדוגמה הבאה היא של קובץ מאפיינים שאפשר להעביר לדגל --properties-file כששולחים משימת Dataproc.
dataproc:conda.env.config.uri=gs://some-bucket/environment.yaml spark:spark.history.fs.logDirectory=gs://some-bucket spark:spark.eventLog.dir=gs://some-bucket capacity-scheduler:yarn.scheduler.capacity.root.adhoc.capacity=5
טבלת מאפיינים עם קידומת של קובץ
| קידומת של קובץ | קובץ | מטרת הקובץ |
|---|---|---|
| capacity-scheduler | capacity-scheduler.xml | הגדרת הכלי לתזמון קיבולת של Hadoop YARN |
| core | core-site.xml | הגדרה כללית של Hadoop |
| distcp | distcp-default.xml | הגדרות של Hadoop Distributed Copy |
| flink | flink-conf.yaml | הגדרת Flink |
| flink-log4j | log4j.properties | קובץ ההגדרות של Log4j |
| hadoop-env | hadoop-env.sh | משתני סביבה ספציפיים ל-Hadoop |
| hadoop-log4j | log4j.properties | קובץ ההגדרות של Log4j |
| hbase | hbase-site.xml | הגדרת HBase |
| hbase-log4j | log4j.properties | קובץ ההגדרות של Log4j |
| hdfs | hdfs-site.xml | הגדרת Hadoop HDFS |
| כוורת | hive-site.xml | הגדרת כוורת |
| hive-log4j2 | hive-log4j2.properties | קובץ ההגדרות של Log4j |
| hudi | hudi-default.conf | הגדרות של Hudi |
| mapred | mapred-site.xml | הגדרות של Hadoop MapReduce |
| mapred-env | mapred-env.sh | משתני סביבה ספציפיים ל-Hadoop MapReduce |
| חזיר | pig.properties | הגדרת Pig |
| pig-log4j | log4j.properties | קובץ ההגדרות של Log4j |
| פרסטו | config.properties | הגדרת Presto |
| presto-jvm | jvm.config | הגדרות JVM ספציפיות ל-Presto |
| ניצוץ | spark-defaults.conf | הגדרת Spark |
| spark-env | spark-env.sh | משתני סביבה ספציפיים ל-Spark |
| spark-log4j | log4j.properties | קובץ ההגדרות של Log4j |
| tez | tez-site.xml | הגדרת Tez |
| webcat-log4j | webhcat-log4j2.properties | קובץ ההגדרות של Log4j |
| חוט | yarn-site.xml | הגדרה של Hadoop YARN |
| yarn-env | yarn-env.sh | משתני סביבה ספציפיים ל-Hadoop YARN |
| צפלין | zeppelin-site.xml | הגדרת Zeppelin |
| zeppelin-env | zeppelin-env.sh | משתני סביבה ספציפיים ל-Zeppelin (רכיב אופציונלי בלבד) |
| zeppelin-log4j | log4j.properties | קובץ ההגדרות של Log4j |
| מטפל בבעלי חיים | zoo.cfg | הגדרות של Zookeeper |
| zookeeper-log4j | log4j.properties | קובץ ההגדרות של Log4j |
Notes
- חלק מהמאפיינים שמורים ואי אפשר לשנות אותם כי הם משפיעים על הפונקציונליות של אשכול Dataproc. אם תנסו לשנות מאפיין שמור, תקבלו הודעת שגיאה כשתיצרו את האשכול.
- אפשר לציין כמה שינויים ולהפריד ביניהם באמצעות פסיקים.
- אי אפשר להשתמש בדגל
--propertiesכדי לשנות קובצי הגדרה שלא מופיעים למעלה. - השינויים בנכסים יחולו לפני שהדמונים באשכול יתחילו לפעול.
- אם הנכס שצוין קיים, הוא יעודכן. אם המאפיין שצוין לא קיים, הוא יתווסף לקובץ התצורה.
מאפייני שירות Dataproc
המאפיינים שמפורטים בקטע הזה הם ספציפיים ל-Dataproc. אפשר להשתמש במאפיינים האלה כדי להגדיר עוד את הפונקציונליות של אשכול Dataproc.
עיצוב
הדגל gcloud dataproc clusters create --properties מקבל את פורמט המחרוזת הבא:
property_prefix1:property1=value1,property_prefix2:property2=value2,...
תו מפריד ברירת המחדל שמשמש להפרדה בין כמה מאפייני אשכול הוא פסיק (,). עם זאת, אם פסיק נכלל בערך של מאפיין, צריך לשנות את תו המפריד על ידי ציון '^delimiter^' בתחילת רשימת המאפיינים (מידע נוסף זמין במאמר בנושא gcloud topic escaping).
- דוגמה לשימוש בתו המפריד '#':
--properties ^#^property_prefix1:property1=part1,part2#property_prefix2:property2=value2
- דוגמה לשימוש בתו המפריד '#':
לדוגמה:
יוצרים אשכול ומגדירים את מצב הגמישות המשופר לערבוב של עובד ראשי ב-Spark.
gcloud dataproc clusters create CLUSTER_NAME \ --region=REGION \ --properties=dataproc:efm.spark.shuffle=primary-worker \ other args ...
טבלת מאפייני שירות Dataproc
| קידומת לנכס | מאפיין (property) | ערכים | תיאור |
|---|---|---|---|
| dataproc | agent.process.threads.job.min | number |
Dataproc מפעיל במקביל מנהלי משימות של משתמשים במאגר שרשורים. המאפיין הזה קובע את המספר המינימלי של השרשורים במאגר השרשורים להפעלה מהירה, גם כשלא מופעלות משימות (ברירת מחדל: 10). |
| dataproc | agent.process.threads.job.max | number |
Dataproc מפעיל במקביל מנהלי משימות של משתמשים במאגר שרשורים. המאפיין הזה קובע את המספר המקסימלי של השרשורים במאגר השרשורים, ולכן מגביל את מספר המשימות המקסימלי של המשתמשים שיכולות לפעול בו-זמנית. כדי להגדיל את מספר הפעולות המקבילות (ברירת מחדל: 100), צריך להגדיל את הערך הזה. |
| dataproc | am.primary_only | true או false |
מגדירים את המאפיין הזה לערך true כדי למנוע הפעלה של האפליקציה הראשית בעובדים שניתן להפסיק את הפעולה שלהם באשכול Dataproc. הערה: התכונה הזו זמינה רק ב-Dataproc מגרסה 1.2 ואילך. ערך ברירת המחדל הוא false. |
| dataproc | conda.env.config.uri | gs://<path> |
המיקום ב-Cloud Storage של קובץ התצורה של סביבת Conda. סביבת Conda חדשה תיצור ותופעל על סמך הקובץ הזה. מידע נוסף זמין במאמר בנושא שימוש במאפייני אשכול שקשורים ל-Conda. (ברירת מחדל: empty). |
| dataproc | conda.packages | חבילות Conda | המאפיין הזה מקבל רשימה של חבילות Conda מופרדות בפסיקים עם גרסאות ספציפיות להתקנה בסביבת base Conda. מידע נוסף זמין במאמר בנושא שימוש במאפייני אשכול שקשורים ל-Conda. (ברירת מחדל: empty). |
| dataproc | dataproc.allow.zero.workers | true או false |
מגדירים את המאפיין SoftwareConfig לערך true בבקשת Dataproc clusters.create API כדי ליצור אשכול עם צומת יחיד. כך משנים את מספר העובדים שמוגדר כברירת מחדל מ-2 ל-0, וממקמים את רכיבי העובדים במארח הראשי. אפשר גם ליצור אשכול עם צומת יחיד דרך מסוף Google Cloud או באמצעות Google Cloud CLI, על ידי הגדרת מספר העובדים ל-0. |
| dataproc | dataproc.alpha.master.nvdimm.size.gb | 1500-6500 | הגדרת ערך יוצרת Dataproc master עם Intel Optane DC Persistent memory. הערה: אפשר ליצור מכונות וירטואליות של Optane רק באזורי us-central1-f, רק עם סוג המכונה n1-highmem-96-aep ורק בפרויקטים שנכללים ברשימת ההיתרים. |
| dataproc: | dataproc.alpha.worker.nvdimm.size.gb | 1500-6500 | הגדרת ערך יוצרת Dataproc worker עם זיכרון מתמשך של Intel Optane DC. הערה: אפשר ליצור מכונות וירטואליות של Optane רק באזורי us-central1-f, רק עם סוג המכונה n1-highmem-96-aep ורק בפרויקטים שנכללים ברשימת ההיתרים. |
| dataproc: | dataproc.await-new-workers-service-registration | true או false |
המאפיין הזה זמין בתמונות 2.0.49 ומעלה. ערך ברירת המחדל הוא false. מגדירים את המאפיין הזה לערך true כדי להמתין לעובדים ראשיים חדשים שירשמו מובילי שירותים, כמו HDFS NameNode ו-YARN ResourceManager, במהלך יצירת האשכול או הגדלת האשכול (רק שירותי HDFS ו-YARN נמצאים במעקב). אם הערך מוגדר כ-true, ועובד חדש לא מצליח להירשם לשירות, העובד מקבל את הסטטוס FAILED. אם מתרחב מספר הצמתים בקלאסטר, עובד שנכשל מוסר. אם האשכול נוצר, עובד שנכשל יוסר אם הדגל gcloud dataproc clusters create --action-on-failed-primary-workers=DELETE או השדה actionOnFailedPrimaryWorkers=DELETE ב-API צוינו כחלק מהפקודה gcloud או מבקשת יצירת האשכול ב-API. |
| dataproc: | dataproc.beta.secure.multi-tenancy.user.mapping | user-to-service account mappings |
המאפיין הזה מקבל רשימה של מיפויים בין משתמשים לחשבונות שירות. משתמשים ממופים יכולים לשלוח עומסי עבודה אינטראקטיביים לאשכול עם זהויות משתמש מבודדות (ראו Dataproc Service Account Based Secure Multi-tenancy). |
| dataproc: | dataproc.cluster.caching.enabled | true או false |
כשהאפשרות 'שמירת נתונים במטמון של האשכול' מופעלת, האשכול שומר במטמון נתונים של Cloud Storage שניגשים אליהם באמצעות משימות Spark, וכך משפר את ביצועי המשימות בלי לפגוע בעקביות. (ברירת מחדל: false). |
| dataproc | dataproc.cluster-ttl.consider-yarn-activity | true או false |
אם ההגדרה היא true, Cluster Scheduled Deletion לוקח בחשבון את הפעילות של YARN ושל Dataproc Jobs API כשמחשב את זמן ה'בלי פעילות' של האשכול. אם ההגדרה היא false, נלקחת בחשבון רק הפעילות של Dataproc Jobs API. (ברירת מחדל: true). מידע נוסף זמין במאמר חישוב זמן ההמתנה של אשכול. |
| dataproc | dataproc.conscrypt.provider.enable | true או false |
הגדרה של Conscrypt כספק האבטחה הראשי של Java. האפשרויות הן הפעלה (true) או השבתה (false). הערה: Conscrypt מופעל כברירת מחדל ב-Dataproc מגרסה 1.2 ואילך, אבל מושבת בגרסאות 1.0 ו-1.1. |
| dataproc | dataproc.cooperative.multi-tenancy.user.mapping | user-to-service account mappings |
המאפיין הזה מקבל רשימה של מיפויים בין משתמשים לחשבונות שירות, שמופרדים באמצעות פסיקים. אם יוצרים אשכול עם ההגדרה הזו, כשמשתמש שולח משימה, האשכול ינסה להתחזות לחשבון השירות המתאים כשהוא ניגש ל-Cloud Storage דרך המחבר של Cloud Storage. כדי להשתמש בתכונה הזו, צריך מחבר Cloud Storage בגרסה 2.1.4 ואילך. מידע נוסף זמין במאמר Dataproc cooperative multi-tenancy. (ברירת מחדל: empty). |
| dataproc | dataproc.control.max.assigned.job.tasks | 100 |
המאפיין הזה מגביל את מספר המשימות שיכולות לפעול בו-זמנית בצומת הראשי של אשכול. אם מספר המשימות הפעילות חורג ממגבלת המשימות, משימות חדשות יתווספו לתור עד שהמשימות הפועלות יסתיימו והמשאבים יתפנו כדי לאפשר תזמון של משימות חדשות. הערה: לא מומלץ להגדיר מגבלת משימות שחורגת מ-100 (ברירת המחדל), כי זה עלול לגרום למצב של חוסר זיכרון בצומת הראשי. |
| dataproc | dataproc:hudi.version | גרסת Hudi | מגדיר את גרסת Hudi שבה נעשה שימוש עם רכיב Dataproc Hudi האופציונלי. הערה: הגרסה הזו מוגדרת על ידי Dataproc כך שתהיה תואמת לגרסת תמונת האשכול. אם המשתמש מגדיר את הגרסה, יכול להיות שיצירת האשכול תיכשל אם הגרסה שצוינה לא תהיה תואמת לתמונת האשכול. |
| dataproc | dataproc.lineage.enabled | true |
מאפשר שקיפות של מקורות הנתונים באשכול Dataproc למשימות Spark. |
| dataproc | dataproc.localssd.mount.enable | true או false |
האם לטעון כונני SSD מקומיים כספריות זמניות של Hadoop/Spark וכספריות נתונים של HDFS (ברירת מחדל: true). |
| dataproc | dataproc.logging.extended.enabled | true או false |
האפשרות הזו מאפשרת (true) או משביתה (false) יומנים ב-Cloud Logging עבור הפריטים הבאים: knox, zeppelin, ranger-usersync, jupyter_notebook, jupyter_kernel_gateway ו-spark-history-server (ברירת מחדל: true). מידע נוסף זמין במאמר יומני אשכול Dataproc ב-Logging. |
| dataproc | dataproc.logging.stackdriver.enable | true או false |
מפעיל (true) או משבית (false) את Cloud Logging (ברירת מחדל: true). למידע על החיובים המשויכים, ראו תמחור של Cloud Logging. |
| dataproc | dataproc.logging.stackdriver.job.driver.enable | true או false |
הפעלה (true) או השבתה (false) של יומני מנהלי משימות ב-Dataproc ב-Cloud Logging. מידע נוסף זמין במאמר פלט ויומנים של משימות ב-Dataproc (ברירת מחדל: false). |
| dataproc | dataproc.logging.stackdriver.job.yarn.container.enable | true או false |
הגדרה שמאפשרת (true) או משביתה (false) את יומני המאגר של YARN ב-Cloud Logging. אפשרויות הפלט של משימת Spark (ברירת מחדל: false). |
| dataproc | dataproc.logging.syslog.enabled | true או false |
הגדרה להפעלה (true) או להשבתה (false) של יומני מערכת של מכונות וירטואליות ב-Cloud Logging (ברירת מחדל: true). |
| dataproc | dataproc.master.custom.init.actions.mode | RUN_BEFORE_SERVICES או RUN_AFTER_SERVICES |
במקרים של אשכולות תמונות בגרסה 2.0 ומעלה, אם הערך שמוגדר הוא RUN_AFTER_SERVICES, פעולות ההפעלה בשרת הראשי יפעלו אחרי ההפעלה של HDFS ושל כל השירותים שתלויים ב-HDFS. דוגמאות לשירותים שתלויים ב-HDFS: HBase, Hive Server2, Ranger, Solr ושרתי ההיסטוריה של Spark ו-MapReduce. (ברירת מחדל: RUN_BEFORE_SERVICES). |
| dataproc | dataproc.monitoring.stackdriver.enable | true או false |
הפעלה (true) או השבתה (false) של סוכן הניטור (ברירת מחדל: false). המאפיין הזה יצא משימוש. במאמר הפעלת איסוף של מדדים מותאמים אישית מוסבר איך להפעיל את איסוף המדדים של Dataproc OSS ב-Monitoring. |
| dataproc | dataproc.scheduler.driver-size-mb | number |
הזיכרון שבשימוש הממוצע של מנהל ההתקן, שקובע את המספר המקסימלי של משימות מקבילות שירוצו באשכול. ערך ברירת המחדל הוא 1GB. ערך קטן יותר, כמו 256, עשוי להתאים לעבודות Spark. |
| dataproc | dataproc.scheduler.job-submission-rate | number |
אם חורגים מהקצב הזה, המשימות מוגבלות. שיעור ברירת המחדל הוא 1.0 QPS. |
| dataproc | dataproc.scheduler.max-concurrent-jobs | number |
המספר המקסימלי של משימות בו-זמניות. אם הערך הזה לא מוגדר כשיוצרים את האשכול, הגבול העליון של העבודות המקבילות מחושב כ-max((masterMemoryMb - 3584) / masterMemoryMbPerJob, 5). masterMemoryMb נקבע לפי סוג המכונה של ה-VM הראשי. הערך של masterMemoryMbPerJob הוא 1024 כברירת מחדל, אבל אפשר להגדיר אותו כשיוצרים את האשכול באמצעות מאפיין האשכול dataproc:dataproc.scheduler.driver-size-mb. |
| dataproc | dataproc.scheduler.max-memory-used | number |
הכמות המקסימלית של ה-RAM שאפשר להשתמש בה. אם השימוש הנוכחי גבוה מהסף הזה, אי אפשר לתזמן משימות חדשות. ערך ברירת המחדל הוא 0.9 (90%). אם המדיניות מוגדרת לערך 1.0, ויסות הנתונים (throttle) של השימוש בזיכרון הראשי מושבת. |
| dataproc | dataproc.scheduler.min-free-memory.mb | number |
כמות הזיכרון הפנוי המינימלית במגה-בייט שנדרשת למנהל של משימת Dataproc כדי לתזמן משימה נוספת באשכול. ערך ברירת המחדל הוא 256MB. |
| dataproc | dataproc.snap.enabled | true או false |
הגדרה להפעלה או להשבתה של Ubuntu Snap daemon. ערך ברירת המחדל הוא true. אם ההגדרה היאfalse, חבילות Snap שמותקנות מראש בתמונה לא מושפעות, אבל הרענון האוטומטי מושבת. ההגדרה חלה על תמונות של Ubuntu בגרסאות 1.4.71, 1.5.46, 2.0.20 ומעלה. |
| dataproc | dataproc.worker.custom.init.actions.mode | RUN_BEFORE_SERVICES |
באשכולות תמונות מגרסה מוקדמת מ-2.0, המשתנה RUN_BEFORE_SERVICES לא מוגדר, אבל המשתמש יכול להגדיר אותו כשהוא יוצר את האשכול. באשכולות תמונות מגרסה 2.0 ומעלה, המאפיין RUN_BEFORE_SERVICES מוגדר, ואי אפשר להעביר את המאפיין לאשכול (המשתמש לא יכול לשנות אותו). מידע על ההשפעה של ההגדרה הזו זמין במאמר שיקולים חשובים והנחיות – עיבוד אתחול. |
| dataproc | dataproc.yarn.orphaned-app-termination.enable | true או false |
ערך ברירת המחדל הוא true. הערך שמוגדר הוא false כדי למנוע מ-Dataproc להפסיק אפליקציות YARN 'יתומות'. מערכת Dataproc מחשיבה אפליקציית YARN כיתומה אם מנהל המשימות (job driver) ששלח את אפליקציית YARN יצא. אזהרה: אם אתם משתמשים במצב Spark cluster (spark.submit.deployMode=cluster) ומגדירים את spark.yarn.submit.waitAppCompletion=false, מנהל ההתקנים של Spark יוצא בלי לחכות לסיום האפליקציות של YARN. במקרה כזה, צריך להגדיר את dataproc:dataproc.yarn.orphaned-app-termination.enable=false. צריך להגדיר את המאפיין הזה גם לערך false אם שולחים משימות Hive. |
| dataproc | diagnostic.capture.enabled | true או false |
הגדרה שמאפשרת איסוף של נתוני אבחון של נקודות ביקורת (checkpoint) באשכול. (ברירת מחדל: true). |
| dataproc | diagnostic.capture.access | GOOGLE_DATAPROC_DIAGNOSE |
אם הערך הוא GOOGLE_DATAPROC_DIAGNOSE, נתוני אבחון של נקודת ביקורת באשכול, שנשמרים ב-Cloud Storage, משותפים עם צוות התמיכה של Dataproc. (ברירת מחדל: לא מוגדר). |
| dataproc | efm.spark.shuffle | primary-worker |
אם הערך הוא primary-worker, נתוני ערבוב של Spark נכתבים לעובדים הראשיים". מידע נוסף זמין במאמר בנושא מצב גמישות משופר ב-Dataproc. |
| dataproc | job.history.to-gcs.enabled | true או false |
מאפשרת לשמור קבצים של היסטוריית MapReduce ו-Spark בדלי הזמני של Dataproc (ברירת מחדל: true לגרסאות תמונה 1.5 ומעלה). המשתמשים יכולים להחליף את המיקומים של קבצים של היסטוריית משימות באמצעות המאפיינים הבאים: mapreduce.jobhistory.done-dir, mapreduce.jobhistory.intermediate-done-dir, spark.eventLog.dir ו-spark.history.fs.logDirectory. במאמר בנושא שרת היסטוריה מתמשך של Dataproc אפשר לקבל מידע על המאפיינים האלה ועל מאפיינים אחרים של אשכולות שמשויכים להיסטוריית המשימות ולקובצי האירועים של Dataproc. |
| dataproc | jobs.file-backed-output.enable | true או false |
מגדיר את עבודות Dataproc להעברת הפלט שלהן לקבצים זמניים בספרייה /var/log/google-dataproc-job. הערך חייב להיות true כדי להפעיל רישום ביומן של מנהל המשימות ב-Cloud Logging (ברירת מחדל: true). |
| dataproc | jupyter.listen.all.interfaces | true או false |
כדי להקטין את הסיכון להרצת קוד מרחוק דרך ממשקי API לא מאובטחים של שרת מחברות, הגדרת ברירת המחדל לגרסאות תמונות 1.3 ומעלה היא false, שמגבילה את החיבורים ל-localhost (127.0.0.1) כש-Component Gateway מופעל (הפעלת Component Gateway לא נדרשת לתמונות בגרסה 2.0 ומעלה). אפשר לשנות את הגדרת ברירת המחדל הזו על ידי הגדרת המאפיין הזה לערך true כדי לאפשר את כל החיבורים. |
| dataproc | jupyter.notebook.gcs.dir | gs://<dir-path> |
המיקום ב-Cloud Storage לשמירת מחברות Jupyter. |
| dataproc | kerberos.beta.automatic-config.enable | true או false |
אם ההגדרה היא true, המשתמשים לא צריכים לציין את הסיסמה של חשבון ה-principal הראשי של Kerberos באמצעות הדגלים --kerberos-root-principal-password ו---kerberos-kms-key-uri (ברירת המחדל: false). מידע נוסף זמין במאמר הפעלת מצב מאובטח של Hadoop באמצעות Kerberos. |
| dataproc | kerberos.cross-realm-trust.admin-server | hostname/address |
שם המארח או הכתובת של שרת הניהול המרוחק (לרוב זהה לשרת KDC). |
| dataproc | kerberos.cross-realm-trust.kdc | hostname/address |
שם המארח או הכתובת של שרת ה-KDC המרוחק. |
| dataproc | kerberos.cross-realm-trust.realm | realm name |
שמות של תחומים יכולים לכלול כל מחרוזת ASCII באותיות רישיות. בדרך כלל, שם התחום זהה לשם דומיין ה-DNS (באותיות רישיות). דוגמה: אם שם המחשב הוא machine-id.example.west-coast.mycompany.com, התחום המשויך יכול להיות EXAMPLE.WEST-COAST.MYCOMPANY.COM. |
| dataproc | kerberos.cross-realm-trust.shared-password.uri | gs://<dir-path> |
המיקום ב-Cloud Storage של הסיסמה המשותפת שמוצפנת באמצעות KMS. |
| dataproc | kerberos.kdc.db.key.uri | gs://<dir-path> |
המיקום ב-Cloud Storage של הקובץ המוצפן ב-KMS שמכיל את מפתח המאסטר של מסד הנתונים של KDC. |
| dataproc | kerberos.key.password.uri | gs://<dir-path> |
המיקום ב-Cloud Storage של הקובץ המוצפן ב-KMS שמכיל את הסיסמה של המפתח בקובץ של מאגר המפתחות. |
| dataproc | kerberos.keystore.password.uri | gs://<dir-path> |
המיקום ב-Cloud Storage של הקובץ המוצפן ב-KMS שמכיל את הסיסמה של מאגר המפתחות. |
| dataproc | kerberos.keystore.uri1 | gs://<dir-path> |
המיקום ב-Cloud Storage של קובץ מאגר המפתחות שמכיל את אישור התו הכללי ואת המפתח הפרטי שמשמש את צמתי האשכול. |
| dataproc | kerberos.kms.key.uri | KMS key URI |
כתובת ה-URI של מפתח ה-KMS שמשמש לפענוח סיסמת הבסיס, לדוגמה projects/project-id/locations/region/keyRings/key-ring/cryptoKeys/key (ראו מזהה משאב המפתח). |
| dataproc | kerberos.root.principal.password.uri | gs://<dir-path> |
המיקום ב-Cloud Storage של הסיסמה המוצפנת ב-KMS עבור השם הראשי של שירות Kerberos. |
| dataproc | kerberos.tgt.lifetime.hours | hours |
משך החיים המקסימלי של כרטיס הגישה. |
| dataproc | kerberos.truststore.password.uri | gs://<dir-path> |
המיקום ב-Cloud Storage של הקובץ המוצפן ב-KMS שמכיל את הסיסמה לקובץ truststore. |
| dataproc | kerberos.truststore.uri2 | gs://<dir-path> |
המיקום ב-Cloud Storage של קובץ מאגר האישורים המוצפן ב-KMS שמכיל אישורים מהימנים. |
| dataproc | pip.packages | חבילות Pip | המאפיין הזה מקבל רשימה של חבילות Pip מופרדות בפסיקים עם גרסאות ספציפיות, שיוגדרו להתקנה בסביבת base Conda. מידע נוסף זמין במאמר מאפייני אשכול שקשורים ל-Conda. (ברירת מחדל: empty). |
| dataproc | ranger.kms.key.uri | KMS key URI |
כתובת ה-URI של מפתח ה-KMS שמשמש לפענוח הסיסמה של משתמש האדמין ב-Ranger, לדוגמה projects/project-id/locations/region/keyRings/key-ring/cryptoKeys/key (ראו מזהה משאב המפתח). |
| dataproc | ranger.admin.password.uri | gs://<dir-path> |
המיקום ב-Cloud Storage של הסיסמה המוצפנת ב-KMS של משתמש האדמין ב-Ranger. |
| dataproc | ranger.db.admin.password.uri | gs://<dir-path> |
המיקום ב-Cloud Storage של הסיסמה המוצפנת ב-KMS של משתמש האדמין במסד הנתונים של Ranger. |
| dataproc | ranger.cloud-sql.instance.connection.name | cloud sql instance connection name |
שם החיבור של מופע Cloud SQL, לדוגמה project-id:region:name. |
| dataproc | ranger.cloud-sql.root.password.uri | gs://<dir-path> |
המיקום ב-Cloud Storage של הסיסמה המוצפנת ב-KMS של משתמש Root במכונת Cloud SQL. |
| dataproc | ranger.cloud-sql.use-private-ip | true או false |
האם התקשורת בין מופעי האשכול לבין מופע Cloud SQL צריכה להתבצע באמצעות כתובת IP פרטית (ערך ברירת המחדל הוא false). |
| dataproc | solr.gcs.path | gs://<dir-path> |
נתיב Cloud Storage שישמש כספריית הבית של Solr. |
| dataproc | startup.component.service-binding-timeout.hadoop-hdfs-namenode | seconds |
משך הזמן שסקריפט לטעינה בזמן ההפעלה של Dataproc ימתין עד שהשירות hadoop-hdfs-namenode ייקשר ליציאות, לפני שיקבע שההפעלה שלו הצליחה. הערך המקסימלי שניתן לזיהוי הוא 1,800 שניות (30 דקות). |
| dataproc | startup.component.service-binding-timeout.hive-metastore | seconds |
משך הזמן שסקריפט לטעינה בזמן ההפעלה של Dataproc ימתין עד ששירות hive-metastore ייקשר ליציאות, לפני שיקבע שההפעלה שלו הצליחה. הערך המקסימלי שניתן לזיהוי הוא 1,800 שניות (30 דקות). |
| dataproc | startup.component.service-binding-timeout.hive-server2 | seconds |
פרק הזמן שסקריפט לטעינה בזמן ההפעלה של Dataproc ימתין עד ש-hive-server2 יקשר ליציאות, לפני שיקבע שההפעלה שלו הצליחה. הערך המקסימלי שניתן לזיהוי הוא 1,800 שניות (30 דקות). |
| dataproc | user-attribution.enabled | true או false |
מגדירים את המאפיין הזה לערך true כדי לשייך משימת Dataproc לזהות של המשתמש ששלח אותה (ערך ברירת המחדל הוא false). |
| dataproc | yarn.docker.enable | true או false |
מגדירים את הערך true כדי להפעיל את התכונה Dataproc Docker on YARN (ערך ברירת המחדל הוא false). |
| dataproc | yarn.docker.image | docker image |
כשמפעילים את התכונה Dataproc Docker on YARN (dataproc:yarn.docker.enable=true), אפשר להשתמש במאפיין האופציונלי הזה כדי לציין את תמונת ה-Docker (לדוגמה, dataproc:yarn.docker.image=gcr.io/project-id/image:1.0.1). אם מציינים תמונה, היא מורדת ונשמרת במטמון בכל הצמתים של האשכול במהלך יצירת האשכול. |
| dataproc | yarn.log-aggregation.enabled | true או false |
מאפשר (true) להפעיל את צבירת היומנים של YARN ב-temp bucket של האשכול. שם הקטגוריה הוא מהצורה הבאה: dataproc-temp-<REGION>-<PROJECT_NUMBER>-<RANDOM_STRING>. (ברירת מחדל: true לגרסאות תמונות 1.5 ומעלה). הערה: מאגר זמני של אשכול לא נמחק כשמחקקים את האשכול. המשתמשים יכולים גם להגדיר את המיקום של יומני YARN מצטברים על ידי החלפת המאפיין yarn.nodemanager.remote-app-log-dir של YARN. |
| knox | gateway.host | ip address |
כדי להפחית את הסיכון להרצת קוד מרחוק דרך ממשקי API לא מאובטחים של שרת מחברות, הגדרת ברירת המחדל לגרסאות תמונה 1.3 ומעלה היא 127.0.0.1, שמגבילה את החיבורים ל-localhost כש-Component Gateway מופעל. אפשר לשנות את הגדרת ברירת המחדל. לדוגמה, אפשר להגדיר את המאפיין הזה לערך 0.0.0.0 כדי לאפשר את כל החיבורים. |
| צפלין | zeppelin.notebook.gcs.dir | gs://<dir-path> |
המיקום ב-Cloud Storage שבו יישמרו מחברות Zeppelin. |
| צפלין | zeppelin.server.addr | ip address |
כדי להפחית את הסיכון להרצת קוד מרחוק דרך ממשקי API לא מאובטחים של שרת מחברות, הגדרת ברירת המחדל לגרסאות תמונה 1.3 ומעלה היא 127.0.0.1, שמגבילה את החיבורים ל-localhost כש-Component Gateway מופעל. אפשר לשנות את הגדרת ברירת המחדל הזו. לדוגמה, אפשר להגדיר את הנכס הזה לערך 0.0.0.0 כדי לאפשר את כל החיבורים. |
1 קובץ מאגר מפתחות: קובץ מאגר המפתחות מכיל את אישור ה-SSL. הוא צריך להיות בפורמט Java KeyStore (JKS). כשמעתיקים אותו למכונות וירטואליות, השם שלו משתנה ל-keystore.jks.
אישור ה-SSL צריך להיות אישור כללי שחל על כל צומת באשכול.
2 קובץ truststore: קובץ ה-truststore צריך להיות בפורמט Java KeyStore (JKS). כשמעתיקים אותו למכונות וירטואליות, השם שלו משתנה ל-truststore.jks.