عربيالفرنسيةالإسبانية

Ad


OnWorks فافيكون

hbal - على الإنترنت في السحابة

قم بتشغيل hbal في مزود استضافة OnWorks المجاني عبر Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

هذا هو الأمر hbal الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة على الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

برنامج:

اسم


hbal - موازن الكتلة لـ Ganeti

موجز


هبال {خيارات الواجهة الخلفية ...} [خيارات الخوارزمية ...] [خيارات إعداد التقارير ...]

هبال --الإصدار

خيارات الواجهة الخلفية:

{ -m كتلة | -L [ مسار ] [-X] | -t ملف البيانات | -I مسار }

خيارات الخوارزمية:

[ - ماكس-وحدة المعالجة المركزية نسبة وحدة المعالجة المركزية ] [ - قرص دقيقة نسبة القرص ] [ -l قصر ] [ -e أحرز هدفاً ] [ -g دلتا ] [
- الحد الأدنى للكسب عتبة ] [ -O اسم... ] [ - لا قرص التحركات ] [ - لا مثيل- التحركات ] [
-U استخدام ملف ] [ --يجور داينو ] [ - تجاهل الأخطاء البرمجية ] [ - اللوز نعم | لا ] [ --موند زين ]
[ - الخروج من بيانات الموند المفقودة ] [ --evac- الوضع ] [ - الهجرة المقيدة ] [
- اختر الحالات inst ... ] [ - استثناء الحالات inst ... ]

خيارات التقارير:

[ -ج [ ملف ] ] [ -p [ الحقول ] ] [ - حالات الطباعة ] [ -S ملف ] [ -الخامس... | -q ]

الوصف


hbal هو موازن كتلة يبحث في الحالة الحالية للكتلة (العقد ذات
القرص الإجمالي والحر ، والذاكرة ، وما إلى ذلك) ووضع المثيل وحساب سلسلة من
خطوات مصممة لجعل الكتلة في حالة أفضل.

تم تصميم الخوارزمية المستخدمة لتكون مستقرة (أي ستعطيك نفس النتائج عندما
إعادة تشغيله من منتصف الحل) وبسرعة معقولة. ومع ذلك ،
مصممة لتكون خوارزمية مثالية: من الممكن جعلها تدخل الزاوية التي منها
لا يمكن أن تجد أي تحسن ، لأنها تبدو "خطوة" واحدة فقط إلى الأمام.

يصل البرنامج إلى حالة الكتلة عبر Rapi أو Luxi. كما أنها تطلب بيانات عبر
شبكة من جميع MonDs مع خيار --mond. حاليا يستخدم فقط البيانات التي تنتجها
مجمع تحميل وحدة المعالجة المركزية.

بشكل افتراضي ، سيعرض البرنامج الحل بشكل تدريجي كما تم حسابه ، في ملف
شكل غامض إلى حد ما ؛ للحصول على قائمة أوامر Ganeti الفعلية ، استخدم -C الخيار.

الخوارزمية
يعمل البرنامج في خطوات مستقلة ؛ في كل خطوة ، نحسب أفضل حركة مثيل
هذا يقلل من نتيجة المجموعة.

نوع النقل المحتمل لمثيل هو مجموعات من تجاوز الفشل / الترحيل و
استبدال الأقراص بحيث نقوم بتغيير إحدى عقد المثيل وتبقى الأخرى
(ولكن ربما مع تغيير الدور ، على سبيل المثال من المرحلة الابتدائية يصبح ثانويًا). القائمة هي:

· تجاوز الفشل (و)

· استبدال الثانوية (ص)

· استبدال الحركة الأساسية والمركبة (f ، r ، f)

· تجاوز الفشل والاستبدال الثانوي ، المركب أيضًا (f ، r)

· استبدال الثانوي وتجاوز الفشل ، أيضًا مركب (ص ، و)

لا نقوم بالاحتمال الوحيد المتبقي لاستبدال كلا العقدتين (r ، f ، r ، f أو
مكافئ f ، r ، f ، r) نظرًا لأن هذه الحركة تحتاج إلى بحث شامل حول كلا المرشحين
العقد الأولية والثانوية ، وهي O (n * n) في عدد العقد. علاوة على ذلك ، فإنه
لا يبدو أنه يعطي نتائج أفضل ولكنه سينتج عنه المزيد من عمليات استبدال القرص.

تحديد مستوى القيود
في كل خطوة ، نمنع نقل مثيل إذا كان سيؤدي إلى:

· عقدة للدخول في حالة فشل N + 1

مثيل للانتقال إلى عقدة غير متصلة بالإنترنت (العقد غير المتصلة إما تقرأ من الكتلة
أو أعلن مع -O؛ العقد التي تم تصريفها تعتبر غير متصلة بالإنترنت)

· تعارض قائم على علامة الاستبعاد (تتم قراءة علامات الاستبعاد من المجموعة و / أو تحديدها
عبر - علامات الاستبعاد خيار)

يجب تجاوز الحد الأقصى لنسبة vcpu / pcpu (تم تكوينه عبر - ماكس-وحدة المعالجة المركزية)

· دقيقة نسبة خالية من القرص للذهاب إلى ما دون الحد تكوين (تكوين عبر - قرص دقيقة)

CLUSTER التسجيل
كما ذكرنا من قبل ، تحاول الخوارزمية تقليل درجة الكتلة في كل خطوة. حالياً
يتم احتساب هذه الدرجة كمجموع مرجح للمكونات التالية:

· الانحراف المعياري لنسبة الذاكرة الفارغة

· الانحراف المعياري لنسبة الذاكرة المحجوزة

· مجموع النسب المئوية للذاكرة المحجوزة

· الانحراف المعياري للنسبة المئوية للقرص الحر

· عدد العقد التي فشلت في فحص N + 1

· عدد الحالات التي تعيش (سواء كانت أولية أو ثانوية) على العقد غير المتصلة ؛ في ال
حاسة hbal (و htools الأخرى) تعتبر العقد المستنزفة غير متصلة بالإنترنت

· عدد الحالات التي تعيش (كأساسي) على العقد غير المتصلة ؛ هذا يختلف عما سبق
متري من خلال المساعدة في تجاوز الفشل لمثل هذه الحالات في مجموعات ثنائية العقد

· الانحراف المعياري لنسبة cpus الظاهرية إلى المادية (للمثيلات الأولية لـ
العقدة)

· الانحراف المعياري لجزء المغازل المتاحة (في الوضع المخصص ،
تمثل المغازل مغازل جسدية ؛ وإلا فإن هذا الإجراء الذي يمكن تجاوز الاشتراك فيه لـ IO
الحمل ، ويؤخذ عامل زيادة الاشتراك في الاعتبار عند حساب عدد
المغازل المتاحة)

الانحراف المعياري للحمل الديناميكي على العقد ، للذاكرة والقرص والشبكة

· الانحراف المعياري لحمولة وحدة المعالجة المركزية التي تقدمها MonD

· عدد الطبعات مع الأساسي والثانوي في نفس مجال الفشل

تساعد قيم الذاكرة الفارغة والقرص الحر في ضمان توازن جميع العقد إلى حد ما
استخدام مواردهم. تساعد الذاكرة المحجوزة في التأكد من أن العقد هي إلى حد ما
متوازن في الاحتفاظ بالمثيلات الثانوية ، وأنه لا توجد عقدة تحتفظ بقدر كبير من الذاكرة المحجوزة
لـ N + 1. وأخيرًا ، تساعد نسبة N + 1 في توجيه الخوارزمية نحو الاستبعاد
حالات الفشل N + 1 ، إن أمكن.

باستثناء حالات فشل N + 1 ، وحساب المثيلات دون اتصال ، وانتهاك المجال الفاشل
بحساب ، نستخدم الانحراف المعياري منذ استخدامه مع القيم ضمن نطاق ثابت (نحن
استخدام النسب المئوية معبرًا عنها كقيم بين صفر وواحد) تعطي نتائج متسقة عبر
جميع المقاييس (هناك بعض القضايا الصغيرة المتعلقة بوسائل مختلفة ، لكنها تعمل
بشكل عام بشكل جيد). سيكون لقيم نوع "العد" درجة أعلى وبالتالي ستكون أكثر أهمية
لتحقيق التوازن وبالتالي فهذه أفضل للقيود الصعبة (مثل إخلاء العقد و
إصلاح حالات فشل N + 1). على سبيل المثال ، يتم حساب المثيلات غير المتصلة (أي عدد
المثيلات التي تعيش على العقد غير المتصلة) ستؤدي إلى نقل الخوارزمية المثيلات بنشاط
بعيدًا عن العقد غير المتصلة بالإنترنت. هذا ، إلى جانب القيود المفروضة على التنسيب التي قدمتها في وضع عدم الاتصال
العقد ، سوف تتسبب في إخلاء هذه العقد.

يجب قراءة قيم التحميل الديناميكي من ملف خارجي (لا توفر Ganeti ملفات
منهم) ، ويتم حسابها لكل عقدة على النحو التالي: مجموع تحميل وحدة المعالجة المركزية الأولية ، ومجموع الأساسي
تحميل ذاكرة المثيل ، مجموع تحميل قرص المثيل الأساسي والثانوي (كما يولد DRBD
تحميل الكتابة على العقد الثانوية أيضا في الحالة العادية وفي السيناريوهات المتدهورة قراءة أيضا
load) ، ومجموع حمل شبكة المثيل الأساسي. مثال على كيفية إنشاء هذه
ستكون قيم الإدخال إلى hbal هي تتبع قائمة xm للحالات على مدار يوم وبحلول
حساب دلتا قيم وحدة المعالجة المركزية ، وتغذية ذلك عبر -U خيار لجميع الحالات
(واحتفظ بالمقاييس الأخرى كواحدة). لكي تعمل الخوارزمية ، كل ما هو مطلوب
أن القيم متسقة لمقياس عبر جميع الحالات (على سبيل المثال ، استخدام جميع المثيلات
cpu٪ للإبلاغ عن استخدام وحدة المعالجة المركزية ، وليس شيئًا متعلقًا بعدد ثواني وحدة المعالجة المركزية المستخدمة إذا كان
وحدات المعالجة المركزية (CPU) مختلفة) ، ويتم تسويتها بين صفر وواحد. لاحظ أنه
يوصى بعدم احتوائه على صفر كقيمة تحميل لأي مقياس مثيل منذ ذلك الحين
الحالات الثانوية ليست متوازنة بشكل جيد.

سيتم استخدام حمل وحدة المعالجة المركزية من مجمع بيانات MonD فقط في حالة تشغيل جميع MonDs ،
وإلا فإنه لن يؤثر على نتيجة المجموعة. نظرًا لأننا لا نستطيع العثور على حمل وحدة المعالجة المركزية لكل منها
على سبيل المثال ، يمكننا أن نفترض أن حمل وحدة المعالجة المركزية للمثيل يتناسب مع عدد
vcpus الخاص به. باستخدام هذا الاستدلال ، تميل المثيلات من العقد ذات الحمل العالي لوحدة المعالجة المركزية إلى التحرك
إلى العقد مع تحميل أقل لوحدة المعالجة المركزية.

في مجموعة متوازنة تمامًا (جميع العقد بنفس الحجم ، وجميع النسخ بالحجم نفسه و
موزعة عبر العقد بالتساوي) ، ستكون قيم جميع المقاييس صفرًا ، مع
باستثناء النسبة المئوية الإجمالية للذاكرة المحجوزة. لا يحدث هذا كثيرًا في
يمارس :)

OFFLINE البواعث
نظرًا لأن إصدارات Ganeti الحالية لا تبلغ عن الذاكرة المستخدمة من قبل المثيلات غير المتصلة (السفلية) ،
تجاهل حالة تشغيل المثيلات سيؤدي إلى حسابات خاطئة. لهذا السبب ، فإن
تطرح الخوارزمية حجم ذاكرة المثيلات السفلية من ذاكرة العقدة الحرة الخاصة بهم
العقدة الأولية ، في الواقع محاكاة بدء تشغيل مثل هذه الحالات.

استثناء الفوقية
تم تصميم آلية علامات الاستبعاد لمنع الحالات التي تشغل نفس عبء العمل
(مثل خادمي DNS) للهبوط على نفس العقدة ، مما يجعل العقدة المعنية أ
SPOF للخدمة المقدمة.

إنه يعمل عن طريق تمييز الحالات بعلامات معينة ثم بناء خرائط الاستبعاد بناءً على
هؤلاء. يتم تكوين العلامات المستخدمة بالفعل إما عبر سطر الأوامر (خيار
- علامات الاستبعاد) أو عن طريق إضافتها إلى علامات المجموعة:

- علامات الاستبعاد = أ ، ب
سيؤدي هذا إلى جعل جميع علامات المثيل للنموذج أ:*, ب:* النظر في
خريطة الاستبعاد

كتلة علامات htools: iextags: أ, htools: iextags: b
هذا سيجعل علامات المثال أ:*, ب:* يتم اعتباره لخريطة الاستبعاد. أكثر
على وجه التحديد ، لاحقة علامات المجموعة التي تبدأ بـ htools: iextags: سوف تصبح
بادئة علامات الاستبعاد.

كلا النموذجين أعلاه يعني أن كلا الحالتين لهما (على سبيل المثال) العلامة أ: فو or ب: شريط
لن تنتهي عند نفس العقدة.

الهجرة الفوقية
إذا تم نشر Ganeti على مجموعة غير متجانسة ، فقد لا يكون الترحيل ممكنًا بين
جميع عقد مجموعة العقد. أحد الأمثلة على مثل هذه الحالة هو ترقية برنامج Hypervisor
عقدة بواسطة عقدة. لجعل hbal على دراية بهذه القيود ، فإن علامات المجموعة التالية هي
مستخدم.

كتلة علامات htools: الهجرة: أ, htools: الهجرة: ب, إلخ
هذا يجعل علامات العقدة من النموذج أ:*, ب:*، إلخ ، يعتبر هجرة
تقييد. بتعبير أدق ، تبدأ لاحقة علامات المجموعة بـ
htools: الهجرة: ستصبح البادئة لعلامات الترحيل. فقط اولئك
ستؤخذ عمليات الترحيل في الاعتبار حيث تكون جميع علامات الترحيل الخاصة بالمصدر
العقدة موجودة أيضًا على العقدة الهدف.

كتلة علامات htools: allowmigration: x :: y For هجرة علامات x و y
هذا يؤكد أن العقدة مرقمة y قادر على تلقي المثيلات بنفس الطريقة كما لو
كان لديهم x العلامة.

لذلك في حالة ترقية برنامج Hypervisor البسيط ، يتم وضع علامات على جميع العقد التي تم إجراؤها
ترقية بعلامة الهجرة كافية. في المواقف الأكثر تعقيدًا ، يكون الأمر كذلك دائمًا
من الممكن استخدام علامة ترحيل مختلفة لكل برنامج مراقبة مستخدم ويذكر بوضوح ملف
اتجاهات الهجرة المسموح بها عن طريق htools: allowmigration: العلامات.

الموقع الفوقية
ضمن مجموعة العقد ، قد يكون من المرجح أن تفشل بعض العقد في وقت واحد بسبب أ
سبب شائع للخطأ (على سبيل المثال ، إذا كانا يشتركان في نفس وحدة إمداد الطاقة). يمكن أن يكون جانيتي
الإحاطة علما بهذه الأسباب الشائعة للفشل عن طريق العلامات.

كتلة علامات htools: nlocation: a, htools: nlocation: b, إلخ
هذا يجعل علامات العقدة من النموذج أ:*, ب:*، إلخ ، أن يكون لها عنصر مشترك
سبب الفشل.

يتم النظر في المثيلات ذات العقدة الأولية والثانوية التي لها سبب شائع للفشل
وضع سيء. بينما يُسمح دائمًا بمثل هذه المواضع ، إلا أنها تعتمد بشدة على
نتيجة الكتلة.

OPTIONS


فيما يلي الخيارات التي يمكن تمريرها للبرنامج:

-C ، - أوامر الطباعة
اطبع قائمة الأوامر في نهاية التشغيل. بدون هذا البرنامج فقط
تظهر ناتج أقصر ، لكن خفي.

لاحظ أنه سيتم تقسيم قائمة التحركات إلى خطوات مستقلة تسمى "مجموعات العمل" ،
ولكن فقط للفحص البصري ، وليس للموازنة الفعلية. ليس
من الممكن موازنتها مباشرةً عند تنفيذها عبر أوامر "gnt-example" ،
حيث يجب تنفيذ أمر مركب (مثل تجاوز الفشل واستبدال الأقراص)
بشكل متسلسل. لا يمكن التنفيذ المتوازي إلا عند استخدام الواجهة الخلفية Luxi و
-L الخيار.

الخوارزمية الخاصة بتقسيم التحركات إلى مجموعات العمل هي عن طريق تجميع الحركات حتى
الخطوة التالية هي لمس العقد التي تم لمسها بالفعل من خلال التحركات الحالية ؛ هذا يعني أننا
لا يمكن التنفيذ بالتوازي (بسبب تخصيص الموارد في Ganeti) وبالتالي نبدأ
مجموعة عمل جديدة.

-p ، - طباعة العقد
يطبع حالة العقدة قبل وبعد ، بتنسيق مصمم للسماح للمستخدم
فهم أهم معلمات العقدة. انظر صفحة الرجل com.htools(1) من أجل
مزيد من التفاصيل حول هذا الخيار.

- حالات الطباعة
يطبع خريطة المثيل قبل وبعد. هذا أقل فائدة كحالة العقدة ،
لكنها يمكن أن تساعد في فهم حركات المثال.

-O الاسم
هذا الخيار (الذي يمكن إعطاؤه عدة مرات) سيحدد العقد على أنها موجودة حاليا.
هذا يعني شيئين:

لن يتم وضع مثيلات على هذه العقد ، ولا حتى مؤقتًا ؛ على سبيل المثال ال يحل محل
ابتدائي النقل غير متاح إذا كانت العقدة الثانوية غير متصلة بالإنترنت ، لأن هذه الخطوة
يتطلب تجاوز الفشل.

· لن يتم تضمين هذه العقد في حساب النتيجة (باستثناء
النسبة المئوية من المثيلات على العقد غير المتصلة)

لاحظ أن الخوارزمية ستحدد أيضًا أي عقد تم الإبلاغ عنها بواسطة RAPI على أنها غير متصلة بالإنترنت
على هذا النحو ، أو التي لديها "؟" في الإدخال المستند إلى ملف في أي حقول رقمية.

-e أحرز هدفاً, - درجة الدقائق = * الدرجة *
تشير هذه المعلمة إلى مدى ارتباط N + 1 بنتيجة المجموعة بالنسبة لنا
كن سعيدًا بالعملية الحسابية وتغيرها بطريقتين:

· إذا كانت النتيجة الأولية للمجموعة أقل من هذه القيمة ، فلن ندخلها
الخوارزمية على الإطلاق ، والخروج بنجاح

· أثناء العملية التكرارية ، إذا وصلنا إلى درجة أقل من هذه القيمة ، فإننا نغادر
الخوارزمية

القيمة الافتراضية للمعلمة حاليًا هي 1e-9 (تم اختيارها تجريبيًا).

-g دلتا, - كسب دقيقة = * دلتا *
نظرًا لأن خوارزمية الموازنة يمكن أن تؤدي أحيانًا إلى تحسينات صغيرة جدًا ،
التي تجلب مكاسب أقل تكلفتها في وقت إعادة التوطين ، هذه المعلمة (التقصير
إلى 0.01) يمثل الحد الأدنى للربح الذي نحتاجه أثناء الخطوة ، للمتابعة
موازنة.

- الحد الأدنى للربح = * الحد الأدنى *
لن يسري خيار الحد الأدنى للربح أعلاه إلا إذا كانت نتيجة المجموعة بالفعل
أقل من عتبة (الافتراضي هو 0.1). الأساس المنطقي وراء هذا الإعداد هو أن في
درجات الكتلة العالية (المجموعات غير المتوازنة بشكل سيئ) ، لا نريد إجهاض إعادة التوازن
بسرعة كبيرة ، حيث قد تظل المكاسب اللاحقة كبيرة. ومع ذلك ، تحت
العتبة ، فإن إجمالي الكسب ليس سوى قيمة الحد ، لذا يمكننا الخروج مبكرًا.

- لا قرص التحركات
تمنع هذه المعلمة hbal من استخدام نقل القرص (أي "مثيل gnt
استبدال الأقراص "). سيؤدي هذا إلى موازنة أسرع بكثير ، ولكن
بالطبع التحسينات محدودة. الأمر متروك للمستخدم ليقرر متى يستخدم
واحد أو آخر.

- لا مثيل- التحركات
تمنع هذه المعلمة hbal من استخدام عمليات نقل المثيل (مثل "gnt-example
ترحيل / تجاوز الفشل "). سيستخدم هذا فقط استبدال القرص البطيء
وستوفر أيضًا توازنًا أسوأ ، ولكن يمكن أن تكون مفيدة في حالة الحركة
تعتبر الحالات الموجودة حولها غير آمنة أو غير مفضلة.

--evac- الوضع
يقيد هذا المعامل قائمة المثيلات التي يتم النظر فيها للانتقال إلى المثيلات
الذين يعيشون على العقد غير المتصلة / المستنزفة. يمكن استخدامه كبديل (بالجملة) لـ
جانيتي الخاصة عقدة gnt إخلاء، مع ملاحظة أنه لا يضمن كامل
إخلاء.

- الهجرة المقيدة
لا تسمح هذه المعلمة بأي تحركات استبدال أولية (frf) ، بالإضافة إلى تلك التحركات
يتم نقل الاستبدال والفشل (rf) حيث لا تكون العقدة الأساسية للمثيل
استنزاف. إذا تم استخدامه مع خيار --evac-mode ، فإن عمليات الترحيل الوحيدة التي
hbal سوف تفعله هي عمليات ترحيل الحالات من العقدة المستنزفة. يمكن أن يكون هذا مفيدًا إذا
أثناء إعادة تثبيت ترحيل نظام التشغيل الأساسي يكون ممكنًا فقط من
نظام التشغيل القديم إلى نظام التشغيل الجديد. لاحظ ، مع ذلك ، أن استخدام علامات الترحيل عادةً هو ملف
أفضل خيار.

- حدد الحالات = * مثيلات *
تحدد هذه المعلمة المثيلات المحددة (كقائمة مفصولة بفواصل) على أنها الحالات الوحيدة
تلك التي تم نقلها أثناء إعادة التوازن.

- استثناء الحالات = * مثيلات *
تحدد هذه المعلمة الحالات المحددة (كقائمة مفصولة بفواصل) من الوجود
تحركت أثناء إعادة التوازن.

-U استخدام ملف
تحدد هذه المعلمة ملفًا يحتوي على معلومات الاستخدام الديناميكي للمثيل
التي سيتم استخدامها لتعديل خوارزمية الموازنة لمعادلة الحمل على العقد
(على عكس استخدام الموارد الثابتة). الملف بالتنسيق "اسم_ مثيل
cpu_util mem_util disk_util net_util "حيث يتم تفسير معلمات" _util "
كأرقام ويجب أن يتطابق اسم المثيل تمامًا مع المثيل الذي تمت قراءته من
جانيتي. في حالة وجود أسماء غير معروفة ، سيتم إيقاف البرنامج.

إذا لم يتم توفيرها ، فإن القيم الافتراضية هي واحدة لجميع المقاييس وبالتالي فهي ديناميكية
الاستخدام له تأثير واحد فقط على الخوارزمية: معادلة الثانوية
مثيلات عبر العقد (هذا هو المقياس الوحيد الذي لا يتتبعه آخر ،
قيمة مخصصة ، وبالتالي فإن تحميل قرص المثيلات سيؤدي إلى مثيل ثانوي
معادلة). لاحظ أن قيمة واحد ستؤثر أيضًا بشكل طفيف على الأساسي
عدد المثيلات ، ولكن يتم تتبع ذلك بالفعل عبر مقاييس أخرى ، وبالتالي فإن
سيكون تأثير الاستخدام الديناميكي غير ذي أهمية عمليا.

--يجور داينو
إذا تم منحها ، فسيتم تجاهل جميع معلومات الاستخدام الديناميكي بافتراض أنها كذلك
0. هذا الخيار له الأسبقية على أي بيانات يتم تمريرها بواسطة الخيار -U أو بواسطة
MonDs مع --mond و - خيار بيانات اللوز.

- تجاهل الأخطاء البرمجية
إذا تم منحه ، فسيتم تنفيذ جميع عمليات التحقق من الأخطاء البرمجية عند التفكير في الموازنة
التحركات. بهذه الطريقة ، يمكن إحراز تقدم في مجموعة حيث تكون جميع العقد في ملف
حالة سيئة من وجهة نظر السياسة ، مثل تجاوز نسب زيادة الاكتتاب على وحدة المعالجة المركزية أو المغازل.

-S اسم الملف, - حفظ الكتلة = * اسم الملف *
إذا تم توفير حالة الكتلة قبل الموازنة ، يتم حفظها في الملف المحدد
بالإضافة إلى الامتداد "الأصلي" (أي اسم الملف.original) والدولة في النهاية
من التوازن يتم حفظها في الملف المحدد بالإضافة إلى الامتداد "متوازن" (أي
اسم الملف.متوازن). هذا يسمح بإعادة تغذية حالة الكتلة إلى hbal نفسها
أو على سبيل المثال hspace عبر الخيار -t.

-t ملف البيانات, - بيانات النص = * ملف البيانات *
مواصفات الواجهة الخلفية: اسم الملف الذي يحمل معلومات العقدة والمثيل
(إذا لم يتم التجميع عبر RAPI أو LUXI). يجب أن يكون هذا أو أحد الخلفيات الأخرى
المحدد. تم وصف الخيار في صفحة الدليل com.htools(1).

- اللوز = * نعم | لا *
إذا أعطيت ، سيقوم البرنامج بالاستعلام عن جميع MonDs لجلب البيانات من البيانات المدعومة
جامعي عبر الشبكة.

--موند زين
إذا تم تقديمه ، استفسر أيضًا عن جامعي Xen المعينين من MonD ، بشرط أن تكون المراقبة
الشياطين يتم التساؤل عنها على الإطلاق.

- الخروج من بيانات الموند المفقودة
إذا تم إعطاؤه ، قم بإحباط إذا كانت البيانات التي يمكن الحصول عليها من الاستعلام عن MonDs غير كاملة. ال
السلوك الافتراضي هو الاستمرار بأفضل تخمين بناءً على المعلومات الثابتة.

- بيانات اللوز ملف البيانات
اسم الملف الذي يحتفظ بالبيانات المقدمة من MonD ، لتجاوز استعلام MonDs
عبر الشبكة. يستخدم هذا في الغالب لتصحيح الأخطاء. يجب أن يكون الملف بتنسيق JSON
تنسيق وتقديم مجموعة من كائنات JSON ، واحد لكل عقدة ، مع عضوين.
العضو الأول المسمى العقدة هو اسم العقدة والعضو الثاني المسمى
التقارير هي مجموعة من كائنات التقرير. يجب أن تكون كائنات التقرير متطابقة
الشكل كما أنتجه وكيل المراقبة.

-m كتلة
مواصفات الواجهة الخلفية: جمع البيانات مباشرة من كتلة كحجة
عبر RAPI. تم وصف الخيار في صفحة الدليل com.htools(1).

-L [مسار]
مواصفات الواجهة الخلفية: اجمع البيانات مباشرة من البرنامج الخفي الرئيسي ، وهو ما يجب أن يكون
الاتصال عبر LUXI (بروتوكول Ganeti داخلي). تم وصف الخيار في ملف
صفحة رجل com.htools(1).

-X عند استخدام واجهة Luxi الخلفية ، يمكن لـ hbal أيضًا تنفيذ الأوامر المحددة. ال
طريقة التنفيذ هي تنفيذ مجموعات الوظائف الفردية (انظر ملف -C خيار
تفاصيل) في مراحل منفصلة ، والإجهاض إذا لم يكن لدى مجموعة العمل جميع الوظائف في أي وقت
ناجح. سيتم ترجمة كل خطوة في حل الموازنة إلى بالضبط
وظيفة Ganeti واحدة (وجود ما بين واحد وثلاثة أكواد تشغيل) ، وجميع الخطوات الموجودة في ملف
سيتم تنفيذ مجموعة العمل بالتوازي. يتم تنفيذ مجموعات العمل نفسها بشكل متسلسل.

يمكن مقاطعة تنفيذ سلسلة الوظائف ، انظر أدناه للتعامل مع الإشارات.

-l N, - أقصى طول = * N *
قصر الحل على هذا الطول. يمكن استخدام هذا على سبيل المثال لأتمتة ملفات
تنفيذ التوازن.

- max-cpu = * cpu-ratio *
الحد الأقصى لنسبة وحدة المعالجة المركزية الظاهرية إلى المادية ، كرقم فاصلة عائمة أكبر من
أو يساوي واحدًا. على سبيل المثال ، تحديد نسبة وحدة المعالجة المركزية as 2.5 يعني ذلك ، ل 4 وحدات المعالجة المركزية
الجهاز ، يجب السماح باستخدام 10 وحدات تحكم افتراضية كحد أقصى للأساسيات
حالات. تعني القيمة XNUMX بالضبط أنه لن يكون هناك اشتراك زائد في وحدة المعالجة المركزية
(باستثناء وقت وحدة المعالجة المركزية الذي تستخدمه العقدة نفسها) ، والقيم أقل من واحد لا تصنع
المعنى ، لأن هذا يعني أن الموارد الأخرى (مثل القرص) لن يتم استخدامها بشكل كامل بسبب
قيود وحدة المعالجة المركزية.

- min-disk = * نسبة القرص *
الحد الأدنى من مساحة القرص الحرة المتبقية ، كرقم فاصلة عائمة. ل
على سبيل المثال ، تحديد نسبة القرص as 0.25 يعني أن ربع القرص على الأقل
يجب ترك مساحة خالية على العقد.

-G UUID, - المجموعة = * uuid *
في نظام مجموعة متعدد المجموعات ، حدد هذه المجموعة للمعالجة. وإلا سوف الهبال
إجهاض ، لأنه لا يمكنه موازنة مجموعات متعددة في نفس الوقت.

-الخامس، - الإسراف
زيادة الإسهاب الناتج. سيؤدي كل استخدام لهذا الخيار إلى زيادة
الإسهاب (حاليًا أكثر من 2 لا معنى له) من الافتراضي واحد.

-q ، --هادئ
تقليل الإسهاب الناتج. كل استخدام لهذا الخيار سيقلل
الإسهاب (أقل من صفر لا معنى له) من الافتراضي للواحد.

-الخامس، --الإصدار
فقط قم بإظهار إصدار البرنامج والخروج.

إشارة معالجة


عند تنفيذ الوظائف عبر LUXI (باستخدام الخيار -X) ، عادةً ما تقوم hbal بتنفيذ جميع الوظائف
حتى تنتهي الأخطاء أو تنتهي جميع المهام بنجاح.

نظرًا لأن الموازنة قد تستغرق وقتًا طويلاً ، فمن الممكن إيقاف الهبال مبكرًا بطريقتين:

· بإرسال SIGINT (^ C) ، سيقوم hbal بتسجيل طلب الإنهاء ، وسوف ينتظر
حتى تنتهي الوظائف المقدمة حاليًا ، وعندها سيتم الخروج (مع رمز الخروج 0
إذا انتهت جميع الوظائف بشكل صحيح ، وإلا فقم باستخدام رمز الخروج 1 كالمعتاد)

· عن طريق إرسال SIGTERM ، سيتم الخروج من hbal على الفور (مع رمز الخروج 2) ؛ انها
مسؤولية المستخدم عن المتابعة مع Ganeti والتحقق من نتيجة
الوظائف المنفذة حاليا

لاحظ أنه في أي موقف ، من الآمن تمامًا قتل هبال ، إما عبر الإشارات المذكورة أعلاه
أو عبر أي إشارة أخرى (مثل SIGQUIT و SIGKILL) ، حيث تتم معالجة الوظائف نفسها
بواسطة Ganeti بينما hbal (بعد التقديم) يراقب تقدمهم فقط. في هذه الحالة،
سيتعين على المستخدم الاستعلام عن نتائج الوظائف من شركة Ganeti.

EXIT الوضع


ستكون حالة الخروج للأمر صفراً ، إلا إذا فشلت الخوارزمية لسبب ما
(على سبيل المثال ، عقدة خاطئة أو بيانات مثيل) ، أو خيارات سطر أوامر غير صالحة ، أو (في حالة الوظيفة
تنفيذ) فشلت إحدى الوظائف.

بمجرد بدء تنفيذ الوظيفة عبر Luxi (-X) ، إذا تم قطع الموازنة مبكرًا (عبر
SIGINT، أو عبر --max-length) ولكن تم تنفيذ جميع الوظائف بنجاح ، فإن حالة الخروج هي
صفر؛ يعني رمز الخروج غير الصفري أنه يجب التحقيق في حالة الكتلة ، منذ أ
فشلت المهمة أو لم نتمكن من حساب حالتها ويمكن أن يشير هذا أيضًا إلى مشكلة في
جانب جانيتي.

استخدم hbal عبر الإنترنت باستخدام خدمات onworks.net


خوادم ومحطات عمل مجانية

قم بتنزيل تطبيقات Windows و Linux

  • 1
    جرعة كبيرة
    جرعة كبيرة
    SWIG هي أداة لتطوير البرمجيات
    يربط البرامج المكتوبة باللغتين C و
    C ++ مع مجموعة متنوعة من المستويات العالية
    لغات البرمجة. يستخدم SWIG مع
    مختلف...
    تنزيل SWIG
  • 2
    موضوع WooCommerce Nextjs React
    موضوع WooCommerce Nextjs React
    React WooCommerce theme ، الذي تم إنشاؤه باستخدام
    التالي JS و Webpack و Babel و Node و
    Express ، باستخدام GraphQL و Apollo
    عميل. متجر WooCommerce في React (
    يحتوي على: المنتجات ...
    قم بتنزيل WooCommerce Nextjs React Theme
  • 3
    Archlabs_repo
    Archlabs_repo
    حزمة إعادة الشراء لـ ArchLabs هذا ملف
    التطبيق الذي يمكن جلبه أيضًا
    تبدأ من
    https://sourceforge.net/projects/archlabs-repo/.
    تم استضافته في OnWorks في ...
    تحميل برنامج Archlabs_repo
  • 4
    مشروع زفير
    مشروع زفير
    مشروع Zephyr هو جيل جديد
    نظام التشغيل في الوقت الحقيقي (RTOS)
    يدعم أجهزة متعددة
    معماريات. لأنه يقوم على أ
    نواة بصمة صغيرة ...
    تحميل مشروع زفير
  • 5
    سلبيات
    سلبيات
    SCons هي أداة لبناء البرمجيات
    هذا بديل ممتاز لـ
    الكلاسيكية "Make" أداة البناء التي
    كلنا نعرف ونحب. SCons هو
    نفذت ...
    تنزيل SCons
  • 6
    PSeInt
    PSeInt
    PSeInt هو مترجم شفوي زائف لـ
    طلاب البرمجة الناطقين بالإسبانية.
    الغرض الرئيسي منه هو أن تكون أداة لـ
    التعلم وفهم الأساسيات
    تصور ...
    تنزيل PSeInt
  • أكثر "

أوامر لينكس

Ad