diff options
author | Christian Breunig <christian@breunig.cc> | 2023-05-06 15:05:53 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-06 15:05:53 +0200 |
commit | d4352bed66857a2e4f1b124abcf6cf1910621506 (patch) | |
tree | 60fdea95446880a882b862750368670deaf60d92 /src | |
parent | f7fc3ea77e4b42aaf7968a42b2b42d070a31fbaa (diff) | |
parent | 454fcea2a3a08181aa9d8d84e1576379cf228c6f (diff) | |
download | vyos-1x-d4352bed66857a2e4f1b124abcf6cf1910621506.tar.gz vyos-1x-d4352bed66857a2e4f1b124abcf6cf1910621506.zip |
Merge pull request #1980 from sever-sever/T5203
T5203: Add systemd vyos-wan-load-balance.service
Diffstat (limited to 'src')
-rwxr-xr-x | src/conf_mode/load-balancing-wan.py | 5 | ||||
-rw-r--r-- | src/systemd/vyos-wan-load-balance.service | 15 |
2 files changed, 18 insertions, 2 deletions
diff --git a/src/conf_mode/load-balancing-wan.py b/src/conf_mode/load-balancing-wan.py index 2f0cf1293..7086aaf8b 100755 --- a/src/conf_mode/load-balancing-wan.py +++ b/src/conf_mode/load-balancing-wan.py @@ -31,6 +31,7 @@ airbag.enable() load_balancing_dir = '/run/load-balance' load_balancing_conf_file = f'{load_balancing_dir}/wlb.conf' +systemd_service = 'vyos-wan-load-balance.service' def get_config(config=None): @@ -158,13 +159,13 @@ def generate(lb): def apply(lb): if not lb: try: - cmd('sudo /opt/vyatta/sbin/vyatta-wanloadbalance.init stop') + cmd(f'systemctl stop {systemd_service}') except Exception as e: print(f"Error message: {e}") else: cmd('sudo sysctl -w net.netfilter.nf_conntrack_acct=1') - cmd(f'sudo /opt/vyatta/sbin/vyatta-wanloadbalance.init restart {load_balancing_conf_file}') + cmd(f'systemctl restart {systemd_service}') return None diff --git a/src/systemd/vyos-wan-load-balance.service b/src/systemd/vyos-wan-load-balance.service new file mode 100644 index 000000000..7d62a2ff6 --- /dev/null +++ b/src/systemd/vyos-wan-load-balance.service @@ -0,0 +1,15 @@ +[Unit] +Description=VyOS WAN load-balancing service +After=vyos-router.service + +[Service] +ExecStart=/opt/vyatta/sbin/wan_lb -f /run/load-balance/wlb.conf -d -i /var/run/vyatta/wlb.pid +ExecReload=/bin/kill -s SIGTERM $MAINPID && sleep 5 && /opt/vyatta/sbin/wan_lb -f /run/load-balance/wlb.conf -d -i /var/run/vyatta/wlb.pid +ExecStop=/bin/kill -s SIGTERM $MAINPID +PIDFile=/var/run/vyatta/wlb.pid +KillMode=process +Restart=on-failure +RestartSec=5s + +[Install] +WantedBy=multi-user.target |