如何意外地为Haproxy编写Web-GUI

现代的系统管理员为我们提供了漂亮的网络界面,他们甚至不想在没有“家伙”的地方(我认为石头会从正统的阵容中飞出来)安装软件,嗯,不可能从那里爬过去,对吗? 如果我安装,配置并忘了做什么,一切都会很好,如果您需要不断攀爬,编辑,当然也没有所有操作的日志,不要每次都写cp cfg cfg_back,随着时间的流逝,您会感到困惑而忘了它。



许多年前,我遇到了像Haproxy这样出色的平衡器。 一切都美好而美丽。 我有很多人,我曾想过要为此找一个GUI,但令人惊讶的是没有。 除了很老的软件之外,非常受欢迎的软件,但是,哦,我想并且继续偶尔在我最喜欢的vi中编辑笔,并且有很多打开的选项卡,其中包含所有活动服务器的统计信息。 但是时间到了,我不得不满足那些通过http编写用于工作的软件的人们的“愿望清单”,而有趣的事情开始了……

笔梳了一下,眼睛亮了,我开始了。 我开始更精确地思考该写些什么,想起那个早已被人们遗忘的PHP,我不知何故不想这样做,而且看来这并不完全适合此事。 结果,选择权落在了Python上,以后我认为它将派上用场,并且我开始吸收信息。

任务开始时并没有那么复杂:从单个入口点通过Web界面编辑配置的功能,可以保存以前的配置版本。 事实证明有可能足够快地实现这个不太大的功能,但是后来管理员懒惰或臭名昭著的完美主义突然出现在我看来,这当然还不够。 这些功能在这里开始表现为:比较两个配置,记录与配置有关的所有操作,运行时API以及通过Web添加部分。



作为一个以牺牲自由软件为代价而生活的体面的UNIX管理员,我决定与世界分享,并为其他人派上用场吗? 但是为此,有必要做所有事情,以便不必爬到代码中,而要最大限度地提高对接配置(现在,大多数设置已移到数据库中。对于我来说,编辑它们变得更加方便,并且由于没有任何配置而在更新时不会出错)或参数)。

一个月后,我在Github上发布了我的手工艺品,尤其是不指望任何东西。 但是徒劳无功,该软件的需求量很小,而这里的乐趣就开始了。活跃的“ dopilka”已经进行了将近一年。 有时候,人们希望放弃所有这一切,因为 我的需求很久没有得到满足。 好吧,如果我花了几分钟的时间,为什么我需要有机会通过网络部署带有keepalived和HAProxy的“集群”? 人们发现这是必要的,我很好奇,有事情要做。 尽管我当然需要一些功能,例如监视后端服务器,这些功能可用于Haproxy。 当然,我们有公司监控,但是有些人可以做出很长的反应,因为 我的部门从事开发工作,并且软件出现或消失很长时间以突破官僚作风。



总的来说,我决定分享,因为事实证明这是唯一的免费GUI。 如果有人派上用场怎么办? 链接到GitHub

Source: https://habr.com/ru/post/zh-CN419865/


All Articles