המטרה של כלים אלו היא לנהל, לנטר ולהפעיל Hadoop clusters.
Apache Ambari – כלי
שמאפשר ניהול, ניטור ושליטה על Hadoop clusters.
Apache Oozie – זהו java web application שמשמש לתזמן
Apache Hadoop
jobs. הוא יודע לאחד מספר jobs ברצף למשימה לוגית אחת.
Apache
Zookeeper – כלי שמאפשר תיאום בין תהליכים מבוזרים.
Apache Ambari
כלי זה מקל על ניהול מערכת Hadoop. הוא מספק web UI לניהול המערכת, יחד עם RESTful API. להלן איור
מתוך ה-UI:
Ambari מאפשר למפתחי
אפליקציות להכניס את יכולות הניהול והניטור לאפליקציות שלהם ע"י שימוש ב-REST API שלו.
Ambari מקל על מנהלי מערכות בדרכים הבאות:
- הוא מספק מדריך של צעד אחרי צעד להתקנת Hadoop services על כמה hosts שצריכים.
- הוא עוזר בקינפוג ה-Hadoop services של ה-cluster.
- הוא מאפשר ניהול של ה-Hadoop services כולל הרצה, עצירה, וקינפוג ה-services בכל ה-cluster.
- הוא מספק dashboard לניטור המצב של ה-cluster (כמו למשל health check).
- הוא משתמש ב-Ambari metrics system לצורך איסוף מדדים של המערכת.
- הוא משתמש ב-Ambari alert framework בשביל להתריע כשיש צורך בתשומת לב מיוחדת.
Apache Oozie
Oozie הוא java web application ליצירת workflow של Hadoop. ניתן בעזרתו לתזמן, להריץ
ולנהל jobs של Hadoop. הוא יכול לאחד מספר jobs ולהריץ אותם ברצף ובכך ליצור
משימה מורכבת וגדולה. ניתן גם להריץ בעזרתו מספר jobs במקביל.
Oozie יודע לעבוד בצורה
טובה עם Hadoop
stack כמו למשל MapReduce, Hive, Pig, Sqoop. כמו כן ניתן להריץ בעזרתו תוכנות כלליות
כמו Java ו-Shell.
Workflow זה בעצם אוסף
של פעולות מקושרות, כמו שניתן לראות בדיאגרמה הבאה (מהאתר הרשמי):
ה-workflow כתובים ב-hPDL (שזו XML process definition
language). פעולות ב-workflow בעצם מריצות פעולות במערכות מרוחקות (למשל פעולות של Hadoop או Pig), ומעדכנות את Oozie ברגע שהפעולה
מסתיימת, ואז Oozie מפעיל את
הפעולה הבאה ב-workflow.
Apache Zookeeper
- קריאה בשם לכל מכונה ב-cluster
- ניהול הקונפיגורציה כך שיהיה קל לבצע סינכרון של הקונפיגורציה בין מכונות ב-cluster
- סינכרון בין תהליכים. הוא מאפשר הרצה ועצירה של מכונות ובכך עוזר בהרצת תהליכים בסדר הנכון
- הוא יכול למנות מכונה שהיא master שתנהל את כל הבקשות מה-client בשם ה-cluster כולו. אם ה-master נופל מכל סיבה שהיא, הוא ימנה מכונה אחרת שתחליף אותו.
- הוא מאפשר תקשורת בין המכונות ב-cluster. הוא מאפשר תקשורת בסגנון של publish/subscribe, ויצירה של queue שמבטיח שליחה של הודעות גם כשיש מכונות שנפלו.
אם אהבתם, תכתבו משהו למטה...
אין תגובות:
הוסף רשומת תגובה