Go to file
Aidaho12 bc9bb95b28 v1.4.2
add Telegram messages
2018-01-26 13:36:01 +06:00
cgi-bin v1.4.2 2018-01-26 13:36:01 +06:00
image Add files via upload 2018-01-22 09:33:13 +06:00
log Create config_edit.log 2018-01-15 12:15:03 +06:00
.gitignore v1.4.1 2018-01-26 10:08:34 +06:00
CONTRIBUTING.md Create CONTRIBUTING.md 2018-01-19 21:40:01 +06:00
LICENSE Initial commit 2018-01-15 11:58:02 +06:00
README.md v1.4.2 2018-01-26 13:36:01 +06:00
favicon.ico Add files via upload 2018-01-15 12:24:37 +06:00
haproxy-webintarface.config v1.4.2 2018-01-26 13:36:01 +06:00
index.html v1.4.1 2018-01-26 10:24:20 +06:00
requirements.txt v1.4.1 2018-01-26 10:08:34 +06:00
script.js Revert "Revert "v1.4"" 2018-01-25 15:04:57 +06:00
server.py v1.4.1 2018-01-26 10:08:34 +06:00
style.css v1.4.1 2018-01-26 10:24:20 +06:00

README.md

Haproxy web interface

A simple web interface(user-frendly web GUI) for managing Haproxy servers

alt text

Capabilities:

  1. View statistics of all servers in one place
  2. View logs of all servers in one place
  3. Disabling / enabling the backend servers without reboot (after reboot, will work as specified in the config), viewing server state data
  4. Browsing Configs
  5. Add sections: listen, frontend, backend from web interface
  6. Editing configs
  7. Rollback to previous versions of the config
  8. Comparing versions of configs
  9. Users roles: admin, viewer

Install

For install just dowload archive and untar somewhere:

$ cd /opt
$ unzip master.zip
$ mv haproxy-web-interface-master/ haproxy
$ cd /opt/haproxy
$ pip3 install -r requirements.txt
$ chmod +x server.py
$ chmod +x -R cgi-bin/
$ chown user:user -R haproxy

Edit listserv.py, add your HAproxy servers.

If foler not /opt/haproxy/, edit server.py:

path_config = "/opt/haproxy/haproxy-webintarface.config"

Settings

edit haproxy-webintarface.config with your env

copy ssh key on all HAproxy servers

For online edit HAproxy settings enable socket on HAproxt servers:

global
    log         172.28.0.5 local2 debug err
    stats socket *:1999 level admin

alt text

Start

Create systemd service to auto start:

[Unit]
Description=Haproxy web interface
After=syslog.target network.target 

[Service]
Type=simple
User=user_name

ExecStart=/opt/haproxy/server.py >> /opt/haproxy/log/haproxy-webface.log 

RestartSec=2s
Restart=on-failure
TimeoutStopSec=1s

[Install]
WantedBy=multi-user.target

alt text