Cara menulis Web-GUI untuk Haproxy secara tidak sengaja

Dunia modern administrator sistem telah membuat kita begitu malas dengan tampilan web yang indah sehingga kita bahkan tidak ingin menginstal perangkat lunak yang tidak memiliki "orang" ini (saya merasa seperti batu akan terbang dari penjahit yang taat) , yah, bukan berarti Anda terus-menerus melewati batas, bukan? Semuanya akan baik-baik saja jika perangkat lunak diinstal, dikonfigurasi, dan dilupakan, tetapi apa yang harus dilakukan jika Anda harus terus-menerus naik ke sana, mengedit, dan tentu saja tidak ada log semua tindakan, jangan menulis cp cfg cfg_back setiap saat, selesai kali Anda akan bingung dan melupakan masalah ini.

Cara menulis Web-GUI untuk Haproxy secara tidak sengaja

Bertahun-tahun yang lalu saya bertemu dengan penyeimbang yang luar biasa seperti Haproxy. Semuanya indah dan indah. Saya punya banyak dan saya berpikir untuk mencari GUI untuk itu, tapi anehnya tidak ada satu pun. Perangkat lunak yang sangat populer, dan juga cukup tua, tapi oh baiklah, pikir saya dan sesekali terus mengedit pena di vi favorit saya dan memiliki banyak tab terbuka dengan statistik semua server yang aktif. Namun saatnya tiba dan saya harus memenuhi β€œkeinginan” orang-orang yang menulis perangkat lunak untuk bekerja melalui http, dan di situlah hal-hal menjadi menarik…

Tanganku gatal, mataku berbinar dan aku mulai. Lebih tepatnya saya mulai memikirkan mau menulis apa, mengingat PHP yang sudah lama terlupakan, entah kenapa saya tidak mau, dan sepertinya kurang cocok untuk urusan ini. Pada akhirnya pilihan jatuh pada Python, pasti akan berguna di masa depan, pikir saya, dan mulai menyerap informasi.

Pada awalnya, tugasnya tidak begitu sulit: kemampuan untuk mengedit konfigurasi dari antarmuka web dari satu titik masuk, menyimpan konfigurasi versi sebelumnya. Fungsionalitas yang tidak terlalu besar ini diimplementasikan dengan cukup cepat, tetapi kemudian kemalasan admin atau sifat perfeksionisme yang terkenal menguasai saya dan tentu saja ini tampaknya tidak cukup bagi saya. Dan kemudian fitur-fitur seperti: perbandingan dua konfigurasi, pencatatan semua tindakan yang terkait dengan konfigurasi, Runtime API dan penambahan bagian melalui web mulai muncul.

Cara menulis Web-GUI untuk Haproxy secara tidak sengaja

Dan sebagai administrator UNIX yang baik yang hidup dari perangkat lunak gratis, saya memutuskan untuk membagikannya kepada dunia, dan mungkin ini akan berguna bagi orang lain? Tetapi untuk ini perlu melakukan semuanya sedemikian rupa sehingga Anda tidak perlu masuk ke dalam kode, tetapi paling banyak ke dalam konfigurasi (Sekarang sebagian besar pengaturan telah dipindahkan ke database. Bagi saya, sudah menjadi lebih nyaman untuk mengeditnya dan tidak akan ada kesalahan saat memperbarui karena kurangnya parameter apa pun).

Sebulan kemudian, saya memposting kerajinan saya di Github tanpa banyak harapan. Namun sia-sia, perangkat lunak tersebut ternyata sedikit diminati dan kemudian kesenangan pun dimulai... β€œPembaruan” aktif telah berlangsung selama hampir satu tahun. Terkadang ada keinginan untuk merelakan segalanya, karena... kebutuhan saya telah tercukupi sejak lama. Nah, mengapa saya memerlukan kesempatan untuk menyebarkan "cluster" dengan keepalived dan HAProxy melalui web, jika itu hanya membutuhkan waktu beberapa menit? Tapi ternyata orang membutuhkannya, dan saya tertarik, dan ada yang harus dilakukan. Meskipun tentu saja ada fungsi yang saya perlukan, misalnya memantau server backend dan apakah tersedia untuk Haproxy. Kami memang punya pengawasan perusahaan, tapi ada orang di sana yang bisa bereaksi cukup lama, + karena... Departemen saya terlibat dalam pengembangan dan perangkat lunak muncul dan menghilang cukup lama untuk melewati birokrasi.

Cara menulis Web-GUI untuk Haproxy secara tidak sengaja

Secara umum saya memutuskan untuk berbagi, karena ternyata ini satu-satunya GUI yang gratis. Bagaimana jika seseorang menganggapnya berguna? Tautan ke GitHub.

Sumber: www.habr.com

Tambah komentar