GoGPT Best VPN GoSearch

סמל OnWorks

hbal - אונליין בענן

הפעל את hbal בספק האירוח החינמי OnWorks דרך Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

זוהי הפקודה hbal שניתן להריץ בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות החינמיות שלנו, כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS.

תָכְנִית:

שֵׁם


hbal - מאזן אשכולות עבור Ganeti

תַקצִיר


חבל {אפשרויות קצה...} [אפשרויות אלגוריתם...] [אפשרויות דיווח...]

חבל --גִרְסָה

אפשרויות backend:

{ -m אשכול | -ל[ נתיב ] [-איקס] | -t קובץ מידע | -I נתיב }

אפשרויות אלגוריתם:

[ --מקסימום מעבד יחס מעבד ] [ --מיני-דיסק יחס דיסק ] [ -l להגביל ] [ -e ציון ] [ -g דלתא ] [
--מגבלת רווח מינימלי סף ] [ -O שם ... ] [ --אין-דיסק-תנועות ] [ --אין-מופע-מהלכים ] [
-U util-קובץ ] [ --התעלם-דינו ] [ --התעלם משגיאות-רכות ] [ --מונד כן|לא ] [ --מונד-קסן ]
[ --יציאה-בנתוני-מונד-חסרים ] [ --מצב evac ] [ --הגירה-מוגבלת ] [
--בחר מופעים אינסט ... ] [ --exclude-instances אינסט ... ]

אפשרויות דיווח:

[ -C[ פילה ] ] [ -p[ שדות ] ] [ --הדפס-מופעים ] [ -S פילה ] [ -v... | -q ]

תיאור


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

האלגוריתם בו נעשה שימוש נועד להיות יציב (כלומר, הוא ייתן לך את אותן התוצאות כאשר
(הפעלה מחדש מאמצע הפתרון) ומהיר באופן סביר. עם זאת, זה לא
נועד להיות אלגוריתם מושלם: אפשר לגרום לו להיכנס לפינה שממנה
הוא לא יכול למצוא שום שיפור, כי הוא נראה רק "צעד" אחד קדימה.

התוכנית ניגשת למצב האשכול דרך Rapi או Luxi. היא גם מבקשת נתונים דרך
רשת מכל קבוצות MonD עם האפשרות --mond. נכון לעכשיו היא משתמשת רק בנתונים המופקים על ידי
אספן עומס המעבד.

כברירת מחדל, התוכנית תציג את הפתרון בהדרגה תוך כדי חישובו, ב...
פורמט מעט מסתורי; כדי לקבל את רשימת הפקודות האמיתית של Ganeti, השתמש ב- -C אוֹפְּצִיָה.

אַלגוֹרִיתְם
התוכנית פועלת בשלבים עצמאיים; בכל שלב, אנו מחשבים את מהלך המופע הטוב ביותר
שמוריד את ציון האשכול.

סוג ההעברה האפשרי עבור מופע הוא שילובים של failover/migration ו-
החלפת דיסקים כך שנשנה את אחד מצמתי המופע, והשני נשאר
(אבל ייתכן עם שינוי תפקיד, למשל מתפקיד ראשוני הוא הופך למשני). הרשימה היא:

· מעבר לגיבוי (f)

· להחליף משני (r)

· להחליף ראשוני, מהלך מורכב (f, r, f)

· גיבוי לגיבוי והחלפה של משני, גם מורכב (f, r)

· החלפת משנית וגיבוי לגיבוי, וגם מורכבת (r, f)

אנחנו לא עושים את האפשרות היחידה שנותרה של החלפת שני הצמתים (r,f,r,f או ה-
שווה ערך ל-f,r,f,r) מכיוון שמהלכים אלה דורשים חיפוש ממצה על שני המועמדים
צמתים ראשוניים ומשניים, והוא O(n*n) במספר הצמתים. יתר על כן, זה
נראה שזה לא נותן ציונים טובים יותר, אבל יביא להחלפות דיסקים נוספות.

מיקום הגבלות
בכל שלב, אנו מונעים תנועת מופע אם היא תגרום ל:

· צומת שיעבור למצב כשל N+1

· מופע למעבר לצומת לא מקוון (צמתים לא מקוונים נקראים מהאשכול
או הצהירו עם -O; צמתים מרוקנים נחשבים לא מקוונים)

· קונפליקט מבוסס תג אי הכללה (תגי אי הכללה נקראים מהאשכול ו/או מוגדרים
באמצעות --תגיות-הדרה אוֹפְּצִיָה)

· יחס vcpu/pcpu מקסימלי שיש לחרוג ממנו (מוגדר באמצעות --מקסימום מעבד)

· אחוז הדיסק הפנוי המינימלי לרדת מתחת למגבלה המוגדרת (מוגדרת באמצעות --מיני-דיסק)

CLUSTER מְנִיָה
כפי שצוין קודם לכן, האלגוריתם מנסה למזער את ציון האשכול בכל שלב.
ציון זה מחושב כסכום משוקלל של הרכיבים הבאים:

סטיית התקן של אחוז הזיכרון הפנוי

סטיית התקן של אחוז הזיכרון השמור

· סכום אחוזי הזיכרון השמור

סטיית התקן של אחוז הדיסק הפנוי

· ספירת צמתים שנכשלו בבדיקת N+1

· ספירת מופעים החיים (כראשיים או משניים) בצמתים לא מקוונים; ב-
צמתים מרוקנים של hbal (ושל htools אחרים) נחשבים לא מקוונים

· ספירת מופעים החיים (כראשיים) בצמתים לא מקוונים; זה שונה מהנ"ל
מדד על ידי סיוע בגיבוי בעת כשל של מקרים כאלה באשכולות של 2 צמתים

· סטיית תקן של היחס בין מעבדים וירטואליים לפיזיים (עבור מופעים ראשוניים של
הצומת)

· סטיית תקן של חלק הצירים הזמינים (במצב ייעודי,
צירים מייצגים צירים פיזיים; אחרת מדד זה ניתן להחזיק יתר על המידה עבור IO
עומס, וגורם רישום היתר נלקח בחשבון בעת ​​חישוב מספר ה-
צירים זמינים)

סטיית התקן של העומס הדינמי על הצמתים, עבור מעבדים, זיכרון, דיסק ורשת

סטיית התקן של עומס המעבד המסופקת על ידי MonD

· ספירת המופעים עם ראשי ומשני באותו תחום כשל

ערכי הזיכרון הפנוי והדיסק הפנוי עוזרים להבטיח שכל הצמתים מאוזנים במידה מסוימת ב
ניצול המשאבים שלהם. הזיכרון השמור עוזר להבטיח שהצמתים יהיו במידה מסוימת
מאוזן בהחזקת מופעים משניים, וששום צומת לא שומר יותר מדי זיכרון שמור
עבור N+1. ולבסוף, האחוז N+1 עוזר להנחות את האלגוריתם לקראת ביטול
N+1 כשלים, אם אפשר.

למעט כשלים של N+1, ספירת מופעים לא מקוונים והפרת דומיין של כשלים
ספירות, אנו משתמשים בסטיית התקן מכיוון שכאשר משתמשים בה עם ערכים בטווח קבוע (אנו
השתמש באחוזים המבוטאים כערכים בין אפס לאחד) זה נותן תוצאות עקביות לאורך
כל המדדים (יש כמה בעיות קטנות הקשורות לאמצעים שונים, אבל זה עובד
באופן כללי טוב). לערכי סוג 'count' יהיה ציון גבוה יותר ולכן יהיה להם חשיבות רבה יותר.
לאיזון; לכן אלה טובים יותר עבור אילוצים קשים (כמו פינוי צמתים ו
תיקון N+1 כשלים). לדוגמה, ספירת המופעים הלא מקוונים (כלומר מספר ה-
מופעים החיים על צמתים לא מקוונים) יגרמו לאלגוריתם להזיז מופעים באופן פעיל
הרחק מצמתים לא מקוונים. זאת, בשילוב עם המגבלה על המיקום שניתנה על ידי מצבים לא מקוונים
צמתים, יגרום לפינוי של צמתים כאלה.

יש לקרוא את ערכי העומס הדינמיים מקובץ חיצוני (Ganeti אינו מספק
אותם), ומחושבים עבור כל צומת כ: סכום עומס המעבד של המופע העיקרי, סכום של ה- העיקרי
עומס זיכרון המופע, סכום עומס דיסק המופע הראשי והמשני (כפי שמייצר DRBD)
עומס כתיבה גם על צמתים משניים במקרה רגיל ובתרחישים פגומים גם קריאה
עומס), וסכום עומס הרשת של המופע העיקרי. דוגמה לאופן שבו ניתן ליצור את אלה
ערכים לקלט ל-hbal יהיו מעקב אחר רשימת xm עבור מופעים לאורך יום ולפי
חישוב הדלתא של ערכי המעבד, והזנתם דרך -U אפשרות לכל המקרים
(ולשמור את שאר המדדים כאחד). כדי שהאלגוריתם יעבוד, כל מה שצריך הוא
שהערכים עקביים עבור מדד בכל המופעים (למשל, כל המופעים משתמשים
cpu% כדי לדווח על ניצול המעבד, ולא משהו שקשור למספר שניות המעבד בהן נעשה שימוש אם ה-
מעבדים שונים), ושהם מנורמלים לטווח שבין אפס לאחד. שימו לב שזה
מומלץ לא להשתמש באפס כערך טעינה עבור אף מדד מופע מאז.
מקרים משניים אינם מאוזנים היטב.

עומס המעבד (CPU) מאספן הנתונים של MonD ישמש רק אם כל מערכות MonD פועלות,
אחרת זה לא ישפיע על ציון האשכול. מכיוון שאנחנו לא יכולים למצוא את עומס המעבד של כל אחד
לדוגמה, אנו יכולים להניח שעומס המעבד של מופע הוא פרופורציונלי למספר
זה vcpus. עם היוריסטיקה זו, מופעים מצמתים עם עומס CPU גבוה נוטים לזוז
לצמתים עם פחות עומס על המעבד.

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

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

הוֹצָאָה מִן הַכְלַל תגיות
מנגנון תגי ההדרה נועד למנוע מופעים המריצים את אותו עומס עבודה
(למשל שני שרתי DNS) לנחות על אותו צומת, מה שיהפוך את הצומת המתאים ל
SPOF עבור השירות הנתון.

זה עובד על ידי תיוג מופעים עם תגים מסוימים ולאחר מכן בניית מפות אי הכללה המבוססות על
אלה. אילו תגים משמשים בפועל נקבעים באמצעות שורת הפקודה (אפשרות
--תגיות-הדרה) או באמצעות הוספתם לתגיות האשכול:

--תגיות-הדרה=a,b
פעולה זו תהפוך את כל תגי המופע של הטופס א:*, ב:* להיחשב עבור ה-
מפת אי הכללה

אשכול תיוגים htools:iextags:a, htools:iextags:b
זה ייצור תגיות מופע א:*, ב:* יילקח בחשבון עבור מפת ההדרה. עוד
בדיוק, הסיומת של תגי אשכול שמתחילים ב- htools:iextags: יהפוך ל
קידומת של תגי ההדרה.

שתי הצורות הנ"ל משמעותן ששני מקרים שלשניהם יש (למשל) את התג א:פו or ב: בר
לא יסתיים באותו צומת.

הגירה תגיות
אם Ganeti נפרס על אשכול הטרוגני, ייתכן שהמעבר לא יהיה אפשרי בין
כל הצמתים בקבוצת צמתים. דוגמה אחת למצב כזה היא שדרוג ההיפר-ויזור
צומת אחר צומת. כדי ליידע את hbal לגבי מגבלות אלו, תגי האשכול הבאים
מְשׁוּמָשׁ.

אשכול תיוגים htools:migration:a, htools:migration:b, וכו '
זה גורם ליצירת תגי צומת של הטופס א:*, ב:*וכו' ייחשבו כהגירה
הגבלה. ליתר דיוק, הסיומת של תגי אשכול שמתחילים ב-
htools:migration: יהפוך לקידומת של תגי ההגירה. רק אלו
הגירות יילקחו בחשבון כאשר כל תגי ההגירה של המקור
הצומת קיים גם בצומת היעד.

אשכול תיוגים htools:allowmigration:x::y ל הֲגִירָה תיוגים x ו y
זה טוען שצומת מתויג y מסוגל לקבל מקרים באותו אופן כאילו
היה להם x תָג.

אז במקרה הפשוט של שדרוג היפר-ויזור, תיוג כל הצמתים שהיו
שדרוג עם תגית הגירה מספיק. במצבים מורכבים יותר, זה תמיד
ניתן להשתמש בתג הגירה שונה עבור כל היפר-ויזור בו נעשה שימוש ולציין במפורש את
הוראות הגירה מותרות באמצעות htools:allowmigration: תגים.

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

אשכול תיוגים htools:nמיקום:a, htools:nמיקום:b, וכו '
זה גורם ליצירת תגי צומת של הטופס א:*, ב:*וכו' ייחשבו כבעלי מכנה משותף
סיבת הכישלון.

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

אפשרויות


האפשרויות שניתן להעביר לתוכנית הן כדלקמן:

-ג, --פקודות-הדפסה
הדפס את רשימת הפקודות בסוף הריצה. בלעדיה, התוכנית תעשה רק
להציג פלט קצר יותר, אך מסתורי.

שימו לב שרשימת המהלכים תחולק לשלבים עצמאיים, הנקראים "מערכי עבודות",
אבל רק לבדיקה ויזואלית, לא להקבלה בפועל. זה לא
ניתן לבצע מקביליות ישירות כאשר הן מבוצעות באמצעות פקודות "gnt-instance",
מכיוון שיש לבצע פקודה מורכבת (למשל, מעבר לגיבוי והחלפת דיסקים)
סדרתי. ביצוע מקביל אפשרי רק בעת שימוש בקצה האחורי של Luxi וב-
-L אוֹפְּצִיָה.

האלגוריתם לפיצול המהלכים לקבוצות עבודה הוא על ידי צבירת מהלכים עד
המהלך הבא נוגע בצמתים שכבר נגעו בהם המהלכים הנוכחיים; משמעות הדבר היא שאנחנו
לא ניתן לבצע במקביל (בשל הקצאת משאבים ב-Gantei) ולכן אנו מתחילים
מערך עבודה חדש.

-פ, --הדפס-צמתים
מדפיס את מצב הצומת לפני ואחרי, בפורמט שנועד לאפשר למשתמש
להבין את הפרמטרים החשובים ביותר של הצומת. עיין בדף האיש htools(1) עבור
פרטים נוספים על אפשרות זו.

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

-O שם
אפשרות זו (שניתן לתת מספר פעמים) תסמן צמתים ככאלה לא מחובר.
זה אומר כמה דברים:

· מופעים לא יוצבו בצמתים אלה, אפילו לא באופן זמני; למשל ה להחליף
יְסוֹדִי העברה אינה זמינה אם הצומת המשני אינו מקוון, מאז מעבר זה
דורש תקלה.

· צמתים אלו לא ייכללו בחישוב הציון (למעט ה
אחוז המקרים בצמתים לא מקוונים)

שימו לב שהאלגוריתם יסמן כל צמתים המדווחים על ידי RAPI כלא מקוונים
ככאלה, או שיש להם "?" בקלט מבוסס קובץ בכל שדה מספרי.

-e ציון, --ציון-מינימלי=*ציון*
פרמטר זה מציין כמה מעל גבול N+1 ציון האשכול יכול לנו
להיות מרוצה ומשנה את החישוב בשתי דרכים:

· אם לאשכול יש ציון התחלתי נמוך מערך זה, אז לא נזין
את האלגוריתם בכלל, ולצאת בהצלחה

· במהלך התהליך האיטרטיבי, אם נגיע לציון נמוך מערך זה, נצא
האלגוריתם

ערך ברירת המחדל של הפרמטר הוא כעת 1e-9 (נבחר אמפירית).

-g דלתא, --מינימום-רווח=*דלתא*
מכיוון שאלגוריתם האיזון יכול לפעמים לגרום לשיפורים זעירים מאוד,
שמביאים פחות רווח ממה שהם עולים בזמן רילוקיישן, פרמטר זה (ברירת מחדל
ל-0.01) מייצג את הרווח המינימלי שאנו דורשים במהלך שלב, כדי להמשיך
מְאַזֵן.

--מינימום-הגבר-מגבלת=*סף*
אפשרות הרווח המינימלי הנ"ל תיכנס לתוקף רק אם ציון האשכול כבר
להלן סף (ברירת מחדל היא 0.1). ההיגיון מאחורי הגדרה זו הוא ש-
ציוני אשכול גבוהים (אשכולות מאוזנים בצורה גרועה), איננו רוצים לבטל את האיזון מחדש
מהר מדי, שכן רווחים מאוחרים יותר עדיין עשויים להיות משמעותיים. עם זאת, תחת
סף, הרווח הכולל הוא רק ערך הסף, כך שנוכל לצאת מוקדם.

--אין-דיסק-תנועות
פרמטר זה מונע מ-hbal להשתמש בהזזת דיסק (לדוגמה, "gnt-instance"
פעולות "החלפת דיסקים"). זה יביא לאיזון מהיר הרבה יותר, אבל של
כמובן שהשיפורים מוגבלים. זה תלוי במשתמש להחליט מתי להשתמש
אחד או אחר.

--אין-מופע-מהלכים
פרמטר זה מונע מ-hbal להשתמש בתנועות מופע (למשל "gnt-instance
פעולות migrate/failover"). פעולה זו תשתמש רק בהחלפת דיסק איטית
פעולות, וגם יספק איזון גרוע יותר, אך יכול להיות שימושי אם תעבור
מקרים מסביב נחשבים לא בטוחים או לא רצויים.

--מצב evac
פרמטר זה מגביל את רשימת המופעים הנחשבים להעברה לאלו
חיים על צמתים לא מקוונים/מנוקזים. ניתן להשתמש בו כתחליף (בכמות גדולה) ל
של גנטי עצמו gnt-node לְפַנוֹת, עם הערה שזה לא מבטיח מלא
פינוי.

--הגירה-מוגבלת
פרמטר זה אוסר על כל מהלך מסוג replace-primary (frf), כמו גם את אלה
תנועות החלפה וגיבוי (rf) כאשר הצומת הראשי של המופע אינו
מרוקן. אם משתמשים בו יחד עם האפשרות --evac-mode, ההגירות היחידות ש
hbal יעשה הן הגירות של מופעים מצומת מנוקז. זה יכול להיות שימושי אם
במהלך התקנה מחדש של מערכת ההפעלה הבסיסית, העברה אפשרית רק מה-
מערכת הפעלה ישנה למערכת הפעלה חדשה. שימו לב, עם זאת, שבדרך כלל השימוש בתגי הגירה הוא
בחירה טובה יותר.

--select-instances=*instances*
פרמטר זה מסמן את המופעים הנתונים (כרשימה מופרדת בפסיקים) כיחידים
אלה שמוזזים במהלך האיזון מחדש.

--exclude-instances=*instances*
פרמטר זה מסמן את המופעים הנתונים (כרשימה מופרדת בפסיקים) מפני נוכחות
זז במהלך האיזון מחדש.

-U util-קובץ
פרמטר זה מציין קובץ המכיל מידע על ניצול דינמי של מופע
שישמשו לכוונון אלגוריתם האיזון כדי לאזן את העומס על הצמתים
(בניגוד לשימוש סטטי במשאבים). הקובץ הוא בפורמט "שם_המקרה"
cpu_util mem_util disk_util net_util" שבו הפרמטרים "_util" מפורשים
מכיוון שמספרים ושם המופע חייבים להתאים בדיוק למופע כפי שנקרא ממנו
גנטי. במקרה של שמות מופעים לא ידועים, התוכנית תבוטל.

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

--התעלם-דינו
אם יינתן, כל מידע הניצול הדינמי יתעלם בהנחה שכן
0. אפשרות זו תקבל עדיפות על פני כל נתונים המועברים על ידי האפשרות -U או על ידי
את קובצי MonD עם האפשרות --mond ו- --mond-data.

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

-S שם הקובץ, --save-cluster=*שם קובץ*
אם ניתן, מצב האשכול לפני האיזון נשמר בקובץ הנתון
בתוספת הסיומת "original" (כלומר שם הקובץ.original), והמדינה בסוף
של האיזון נשמר בקובץ הנתון בתוספת הסיומת "balanced" (כלומר
שם הקובץ.balanced). זה מאפשר הזנה מחדש של מצב האשכול ל-hbal עצמו
או לדוגמה hspace דרך האפשרות -t.

-t קובץ מידע, --text-data=*datafile*
מפרט אחורי: שם הקובץ שמכיל מידע על צומת ומופע
(אם לא איסוף דרך RAPI או LUXI). זה או אחד מהקצה האחורי האחר חייב להיות
נבחר. האפשרות מתוארת בדף האיש htools(1).

--mond=*כן|לא*
אם תינתן, התוכנית תבקש מכל ה-MonDs להביא נתונים מהנתונים הנתמכים
אספנים ברשת.

--מונד-קסן
אם ניתן, שאילת גם אספנים ספציפיים ל-Xen מ-MonD, בתנאי שניטור
דמונים נשאלים בכלל.

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

--mond-data קובץ מידע
שם הקובץ המכיל את הנתונים שסופקו על ידי MonD, כדי לעקוף את MonDs
דרך הרשת. זה משמש בעיקר לניפוי באגים. הקובץ חייב להיות ב-JSON
לעצב ולהציג מערך של אובייקטי JSON , אחד לכל צומת, עם שני איברים.
האיבר הראשון בשם הצומת הוא שם הצומת והאיבר השני בשם
דוחות הוא מערך של אובייקטי דיווח. אובייקטי הדוח חייבים להיות זהים
פורמט כפי שהופק על ידי סוכן הניטור.

-m אשכול
מפרט אחורי: אסוף נתונים ישירות מה- אשכול ניתן כטיעון
דרך RAPI. האפשרות מתוארת בדף האיש htools(1).

-L [נתיב]
מפרט אחורי: אסוף נתונים ישירות מהדמון המאסטר, שאמור להיות
נוצר קשר באמצעות LUXI (פרוטוקול פנימי של Ganeti). האפשרות מתוארת ב-
דף גבר htools(1).

-X בעת שימוש בקצה האחורי של Luxi, hbal יכול גם לבצע את הפקודות הנתונות.
שיטת הביצוע היא לבצע את מערכי העבודות הבודדים (ראה את -C אפשרות עבור
פרטים) בשלבים נפרדים, ביטול אם בכל עת קבוצת משימות אינה מכילה את כל המשימות
מוצלח. כל שלב בפתרון האיזון יתורגם בדיוק ל
משימת Ganeti אחת (שכוללת בין קוד פעולה אחד לשלושה), וכל השלבים ב-
קבוצת העבודות תבוצע במקביל. קבוצות העבודות עצמן מבוצעות בסדרה.

ניתן להפסיק את ביצוע סדרת העבודה, ראה להלן לטיפול באותות.

-l N, --max-length=*N*
הגבל את הפתרון לאורך זה. ניתן להשתמש בכך, לדוגמה, כדי להפוך את
ביצוע האיזון.

--max-cpu=*יחס מעבד*
יחס המעבד הווירטואלי לפיזי המרבי, כמספר נקודה צפה גדולה מ
או שווה לאחד. למשל, ציון יחס מעבד as 2.5 כלומר, עבור 4 מעבדים
מכונה, יש לאפשר לכל היותר 10 מעבדים וירטואליים להיות בשימוש עבור ראשי
מקרים. ערך של אחד בדיוק אומר שלא יהיה מנוי יתר למעבד
(פרט לזמן ה-CPU המשמש את הצומת עצמו), וערכים מתחת לאחד אינם מתאימים
תחושה, שכן זה אומר משאבים אחרים (למשל דיסק) לא ינוצלו במלואו עקב
הגבלות מעבד.

--min-disk=*יחס דיסק*
הכמות המינימלית של שטח דיסק פנוי שנותר, כמספר נקודה צפה. ל
לדוגמה, מפרט יחס דיסק as 0.25 פירושו שלפחות רבע מהדיסק
יש להשאיר מקום פנוי בצמתים.

-G uuid, --קבוצה=*uuid*
באשכול מרובה קבוצות, בחר קבוצה זו לעיבוד. אחרת hbal יעשה זאת
לבטל, מכיוון שהוא לא יכול לאזן מספר קבוצות בו זמנית.

-ב, --מִלוּלִי
הגדל את מידת הפלט. כל שימוש באפשרות זו יגדיל את ה
מילוליות (כרגע יותר מ-2 לא הגיוני) מברירת המחדל של אחד.

-q, --שֶׁקֶט
הפחת את מידת הפלט. כל שימוש באפשרות זו יקטין את ה
מילוליות (פחות מאפס לא הגיוני) מברירת המחדל של אחד.

-V, --גִרְסָה
פשוט הצג את גרסת התוכנית וצא.

אוֹת מטפל


בעת ביצוע משימות דרך LUXI (באמצעות האפשרות -X), בדרך כלל hbal יבצע את כל המשימות.
עד שאחת מהן תופיע שגיאה או שכל העבודות מסתיימות בהצלחה.

מכיוון שאיזון יכול לקחת זמן רב, ניתן להפסיק את תהליך ה-hbal מוקדם בשתי דרכים:

· על ידי שליחת SIGINT (^C), hbal ירשום את בקשת הסיום וימתין
עד לסיום העבודות שהוגשו כעת, ובנקודה זו הוא ייסגר (עם קוד יציאה 0
אם כל העבודות הסתיימו כהלכה, אחרת עם קוד יציאה 1 כרגיל)

· על ידי שליחת SIGTERM, hbal ייצא מיד (עם קוד יציאה 2); זהו ה-
באחריות המשתמש לעקוב אחר גאנטי ולבדוק את תוצאות הבדיקה
משימות המבוצעות כעת

שימו לב שבכל מצב, בטוח לחלוטין להרוג את hbal, בין אם באמצעות האותות הנ"ל.
או באמצעות כל אות אחר (למשל SIGQUIT, SIGKILL), מכיוון שהעבודות עצמן מעובדות
על ידי גנטי בעוד ש-hbal (לאחר הגשה) רק צופה בהתקדמותם. במקרה זה,
המשתמש יצטרך לשאול את Ganeti לקבלת תוצאות עבודה.

יְצִיאָה סטָטוּס


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

לאחר שהחלה ביצוע העבודה דרך Luxi (-X), אם האיזון הופסק מוקדם (דרך
סיגינט, או דרך --max-length) אך כל העבודות בוצעו בהצלחה, אז סטטוס היציאה הוא
אפס; קוד יציאה שאינו אפס פירושו שיש לחקור את מצב האשכול, מכיוון ש-
העבודה נכשלה או שלא הצלחנו לחשב את הסטטוס שלה וזה יכול גם להצביע על בעיה ב-
צד גנטי.

השתמש ב-hbal באינטרנט באמצעות שירותי onworks.net


שרתים ותחנות עבודה בחינם

הורד אפליקציות Windows & Linux

פקודות לינוקס

Ad




×
פרסומת
❤️קנו, הזמינו או קנו כאן - ללא עלות, עוזר לשמור על שירותים בחינם.