Com escriure accidentalment una GUI web per a Haproxy

El món modern dels administradors de sistemes ens ha fet mandrosos amb belles cares web, que ni tan sols és un desig d'instal·lar programari on no hi hagi aquest "home" (crec que ara volaran pedres dels gargots ortodoxos), bé, no ho és. sempre pujant-hi per la línia, oi? Tot estaria bé si el programari s'hagués instal·lat, configurat i oblidat, però què fer si cal pujar-hi constantment, editar i, per descomptat, no hi ha cap registre de totes les accions, no escriviu cp cfg cfg_back cada vegada, amb el temps us confondreu i oblidareu aquest tema.

Com escriure accidentalment una GUI web per a Haproxy

Fa molts anys vaig conèixer un equilibrador tan meravellós com Haproxy. Tot és meravellós i bonic. En tenia molts i vaig pensar a trobar-hi una GUI, però sorprenentment no hi era. Programari molt popular, a més, bastant antic, però bé, vaig pensar i vaig continuar editant ocasionalment les nanses del meu vi favorit i tenia un munt de pestanyes obertes amb estadístiques de tots els servidors actius. Però ha arribat el moment i he hagut de satisfer la "Llista de desitjos" de persones que van escriure programari per treballar via http, i aquí va començar l'interessant...

Em van picar les mans, els ulls se'm van il·luminar i vaig començar. Més precisament, vaig començar a pensar en què escriure, a recordar l'oblidat PHP, d'alguna manera no em va agradar, i semblava que no era del tot adequat per a aquest negoci. Com a resultat, l'elecció va recaure en Python, vaig pensar que definitivament seria útil en el futur i va començar l'absorció de la informació.

Al principi, les tasques no eren tan difícils: la possibilitat d'editar les configuracions des de la interfície web des d'un punt d'entrada, desar les versions anteriors de les configuracions. Va ser possible implementar aquesta, una funcionalitat no molt gran amb força rapidesa, però aleshores la mandra de l'administrador o el perfeccionisme notori em van saltar, i per descomptat, això no em va semblar suficient. I llavors van començar a aparèixer funcions com: comparar dues configuracions, registrar totes les accions relacionades amb les configuracions, l'API d'execució i afegir seccions via web.

Com escriure accidentalment una GUI web per a Haproxy

I com a administrador UNIX decent que viu del programari lliure, vaig decidir compartir-lo amb el món, i algú més li serà útil? Però per a això calia fer-ho tot perquè no haguéssiu d'enfilar-vos al codi, sinó com a molt a les butts de configuració (Ara la majoria de la configuració s'ha mogut a la base de dades. Pel que fa a mi, s'ha tornat més convenient per editar-los i no hi haurà errors durant l'actualització a causa de la manca d'algun tipus de configuració a la configuració o paràmetre).

Un mes després, vaig publicar la meva manualitat a Github sense comptar realment amb res. I en va, el programari va resultar tenir una mica de demanda, i després va començar el més interessant... El "acabat" actiu ha estat durant gairebé un any. De vegades hi ha el desig de deixar tot això, perquè. Les meves necessitats han estat cobertes durant molt de temps. Bé, per què necessito l'oportunitat de desplegar un "clúster" amb keepalived i HAProxy a través de la cara web, si em triga un parell de minuts com a màxim? I resulta que la gent ho necessita, i m'interessa, i hi ha alguna cosa a fer. Encara que, per descomptat, hi ha funcions que necessito, per exemple, com controlar els servidors backend, si estan disponibles per a Haproxy. Per descomptat, tenim un seguiment corporatiu, però hi ha gent que pot reaccionar durant força temps, + perquè el meu departament s'està desenvolupant i el programari va i arriba el temps suficient per superar la burocràcia.

Com escriure accidentalment una GUI web per a Haproxy

En general, vaig decidir compartir, perquè resulta que aquesta és l'única GUI gratuïta. I si li resulta útil a algú? Enllaç a GitHub.

Font: www.habr.com

Afegeix comentari