זמינות גבוהה של NameNode עם מנהל היומן של Quorum



זמינות גבוהה של NameNode היא אחת התכונות החשובות ביותר של Hadoop 2.0 זמינות גבוהה של NameNode עם Quorum Journal Manager משמשת לשיתוף יומני עריכה בין ה- NameNodes הפעיל והמתנה.

זהו אחד המאפיינים החשובים ביותר של Hadoop 2.0. לפני שנדון בתכונת הזמינות הגבוהה של Namenode, חיוני לדעת מהו המניין. מניין הוא מונח כללי המשמש באשכולות בו אנו אומרים כי אשכול מסוים יציב. קוורום נותן רשימת מכונות ועוזר לקבוע את תקינות האשכול. ישנם שני סוגים של מניין: מניין צפוי ומניין מחושב.





כיצד להפוך כפול לאינטל

זמינות גבוהה של NameNode עם מנהל יומן המניינים (QJM)

לפני Hadoop 2.0, ה- NameNode היה נקודת כשל אחת (SPOF) באשכול HDFS. לכל אשכול היה שם NameNode יחיד, ואם מכונה זו לא הייתה זמינה, האשכול בסך הכל לא יהיה זמין עד שה- NameNode יופעל מחדש או יופעל במכונה נפרדת. באשכול HA קלאסי, שתי מכונות נפרדות מוגדרות כ- NameNodes. בכל נקודה, אחד מה- NameNodes יהיה במצב פעיל והשני יהיה במצב המתנה. ה- NameNode הפעיל אחראי על כל פעולות הלקוח באשכול, ואילו המתנה פשוט פועל כעבד, ושומר על מספיק מצב כדי לספק כישלון מהיר.

על מנת שצומת המתנה ישמור על מצבו מתואם עם הצומת הפעיל, שני הצמתים מתקשרים עם קבוצה של שדים נפרדים הנקראים 'JournalNodes' (JN). כאשר מתבצע שינוי כלשהו של מרחב השמות על ידי הצומת הפעיל, הוא רושם תיעוד של השינויים שבוצעו ב- JournalNodes. הצומת המתנה מסוגל לקרוא את המידע המתוקן מה- JN, ומנטר אותם באופן קבוע לשינויים. כאשר צומת המתנה רואה את השינויים, הוא מחיל אותם על מרחב השמות שלו. במקרה של כשל, המתנה יוודא שהוא קרא את כל השינויים מ- JounalNodes לפני ששינה את מצבו ל'מצב פעיל '. זה מבטיח שמצב מרחב השמות מסונכרן לחלוטין לפני שמתרחש כישלון.



כדי לספק כישלון מהיר, חיוני שצומת המתנה יצטרך לקבל את המידע המעודכן והעדכני לגבי מיקום הבלוקים באשכול. כדי שזה יקרה, ה- DataNodes מוגדרים עם המיקום של שני ה- NameNodes, ושולחים פרטי מיקום וחסימת פעימות לב לשניהם.

לזרוק נגד לזרוק לעומת לזרוק בג'אווה

חיוני שרק אחד מה- NameNodes חייב להיות פעיל בכל פעם. אחרת, מצב מרחב השמות יסטה בין השניים ויוביל לאובדן נתונים או לתוצאות שגויות. על מנת להימנע מכך, JournalNodes יתיר רק שם Name אחד לסופר בכל פעם. במהלך כישלון נכשל, ה- NameNode שעתיד להיות פעיל ישתלט על אחריות הכתיבה ל- JournalNodes.

יש לך שאלה עבורנו? אנא הזכר אותם בסעיף ההערות ונחזור אליך.



פוסטים קשורים:

כיצד להציג מערך ב - PHP

סקירה כללית של התאחדות אדריכלות האשכולות של Hadoop 2.0