كيفية كتابة Web-GUI لـ Haproxy عن طريق الخطأ

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



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

تمشيط الأقلام ، أضاءت العيون وبدأت. بدأت أفكر بشكل أكثر دقة في ما أكتب عليه ، لتذكر PHP المنسية منذ فترة طويلة ، لم أرغب بطريقة ما ، وبدا أنها لم تكن مناسبة تمامًا لهذه المسألة. نتيجة لذلك ، وقع الاختيار على Python ، في المستقبل اعتقدت أنه سيكون مفيدًا ، وبدأت في استيعاب المعلومات.

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



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

بعد شهر ، قمت بنشر حرفتي على Github ، خاصةً دون الاعتماد على أي شيء. ولكن دون جدوى ، تبين أن البرنامج أصبح مطلوبًا قليلاً ، وهنا بدأ المرح ... لقد استمرت "dopilka" النشطة لمدة عام تقريبًا. في بعض الأحيان تكون هناك رغبة في الإقلاع عن كل هذا ، لأنه احتياجاتي مسدودة لفترة طويلة. حسنًا ، لماذا أحتاج إلى فرصة لنشر "مجموعة" مع Keepalived و HAProxy عبر الويب ، إذا استغرق الأمر بضع دقائق؟ ويجد الناس ذلك ضروريًا ، وأنا فضولي ، وهناك شيء يجب القيام به. على الرغم من وجود بعض الوظائف التي أحتاجها بالطبع ، على سبيل المثال ، مراقبة خوادم الواجهة الخلفية ، إلا أنها متاحة لـ Haproxy. بالطبع ، لدينا مراقبة مؤسسية ، ولكن هناك أشخاص يمكنهم التفاعل لفترة طويلة ، لأنهم إن إدارتي منخرطة في التطوير والبرامج إما تظهر أو تختفي لفترة طويلة لاختراق البيروقراطية.



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

Source: https://habr.com/ru/post/ar419865/


All Articles