Kuinka kirjoittaa vahingossa Web-GUI Haproxylle

Nykyaikainen järjestelmänvalvojien maailma on tehnyt meistä niin laiskoja kauniilla web-kasvoilla, että emme edes halua asentaa ohjelmistoja, joissa ei ole tätä "kaveria" (tuntuu kuin kivet lentävät hartaasti ompeleilta) , no, ei ole niin, että kiivet jatkuvasti linjan läpi, eikö niin? Kaikki olisi hyvin, jos ohjelmisto olisi asennettu, konfiguroitu ja unohdettu, mutta mitä tehdä, jos sinun täytyy jatkuvasti kiivetä sinne, muokata, eikä tietenkään ole kaikista toiminnoista lokia, älä kirjoita cp cfg cfg_back joka kerta, yli kun tulet hämmentymään ja unohdat tämän asian.

Kuinka kirjoittaa vahingossa Web-GUI Haproxylle

Monta vuotta sitten tapasin niin ihanan tasapainottajan kuin Haproxy. Kaikki on ihanaa ja kaunista. Minulla oli niitä paljon ja ajattelin etsiä sille graafista käyttöliittymää, mutta yllättäen sellaista ei ollut. Erittäin suosittu ohjelmisto, ja myös melko vanha, mutta no, ajattelin ja jatkoin satunnaisten kynien muokkaamista suosikkivi:ssäni ja minulla oli joukko avoimia välilehtiä kaikkien aktiivisten palvelimien tilastoilla. Mutta tuli aika, ja minun piti tyydyttää ohjelmistoja kirjoittavien ihmisten "toiveet" toimiakseen http:n kautta, ja siellä asiat alkoivat kiinnostaa…

Käteni kutisivat, silmäni kirkastuivat ja aloitin. Tarkemmin sanottuna aloin miettiä, mitä kirjoittaa, muistaa kauan unohdettu PHP, jotenkin en halunnut, ja näytti siltä, ​​​​että se ei ollut täysin sopiva tähän asiaan. Lopulta valinta putosi Pythonille, siitä on varmasti hyötyä jatkossa, ajattelin ja aloin imeä tietoa.

Alussa tehtävät eivät olleet niin vaikeita: mahdollisuus muokata konfiguraatioita verkkokäyttöliittymästä yhdestä aloituspisteestä, aiempien asetusten versioiden tallentaminen. Tämä ei erityisen suuri toiminnallisuus saatiin käyttöön melko nopeasti, mutta sitten joko järjestelmänvalvojan laiskuus tai pahamaineinen perfektionismi otti vallan ja tämä ei tietenkään tuntunut minusta riittävältä. Ja sitten alkoi näkyä sellaisia ​​ominaisuuksia kuin: kahden konfiguraation vertailu, kaikkien konfiguraatioihin liittyvien toimien kirjaaminen, Runtime API ja osioiden lisääminen verkon kautta.

Kuinka kirjoittaa vahingossa Web-GUI Haproxylle

Ja kunnollisena UNIX-järjestelmänvalvojana, joka elää ilmaisilla ohjelmistoilla, päätin jakaa sen maailman kanssa, ja ehkä siitä on hyötyä jollekin muulle? Mutta tätä varten oli pakko tehdä kaikki niin, että ei tarvinnut mennä koodiin, vaan korkeintaan konfigurointitappeihin (Nyt suurin osa asetuksista on siirtynyt tietokantaan. Minulle se on niiden muokkaaminen on helpompaa, eikä päivityksessä tapahdu virheitä minkään tai parametrin puuttumisen vuoksi).

Kuukautta myöhemmin julkaisin käsityöni Githubissa ilman suuria odotuksia. Mutta turhaan, ohjelmisto osoittautui hieman kysytyksi ja sitten alkoi hauskuus... Aktiivinen "päivitys" on jatkunut melkein vuoden. Joskus on halu luopua kaikesta, koska... tarpeeni on katettu jo pitkään. No, miksi tarvitsen mahdollisuuden ottaa käyttöön "klusteri", jossa on keepalived ja HAProxy verkon kautta, jos se kestää vain muutaman minuutin? Mutta käy ilmi, että ihmiset tarvitsevat sitä, ja olen kiinnostunut, ja on jotain tekemistä. Vaikka tietysti on toimintoja, joita tarvitsen, esimerkiksi taustapalvelimien seuranta ja onko niitä saatavilla Haproxylle. Meillä on tietysti yritysvalvonta, mutta siellä on ihmisiä, jotka voivat reagoida melko pitkään, + koska... Osastoni on mukana kehityksessä ja ohjelmistoja ilmestyy ja katoaa tarpeeksi kauan päästäkseen läpi byrokratian.

Kuinka kirjoittaa vahingossa Web-GUI Haproxylle

Yleensä päätin jakaa, koska kävi ilmi, että tämä on ainoa ilmainen GUI. Mitä jos joku kokee sen hyödylliseksi? Linkki GitHubiin.

Lähde: will.com

Lisää kommentti