mirror of https://github.com/Aidaho12/haproxy-wi
parent
849ec1024f
commit
d7ba3ff76c
|
@ -10,7 +10,6 @@ import app.modules.roxy_wi_tools as roxy_wi_tools
|
||||||
|
|
||||||
|
|
||||||
@app.before_request
|
@app.before_request
|
||||||
@cache.memoize(3)
|
|
||||||
def check_login():
|
def check_login():
|
||||||
if request.endpoint not in (
|
if request.endpoint not in (
|
||||||
'login_page', 'static', 'main.show_roxywi_version', 'service.check_service', 'smon.show_smon_status_page',
|
'login_page', 'static', 'main.show_roxywi_version', 'service.check_service', 'smon.show_smon_status_page',
|
||||||
|
@ -63,9 +62,6 @@ def login_page():
|
||||||
role = 5
|
role = 5
|
||||||
user1 = ''
|
user1 = ''
|
||||||
|
|
||||||
if next_url is None:
|
|
||||||
next_url = ''
|
|
||||||
|
|
||||||
if login and password:
|
if login and password:
|
||||||
users = sql.select_users(user=login)
|
users = sql.select_users(user=login)
|
||||||
|
|
||||||
|
|
|
@ -361,8 +361,12 @@ def update_server_master(master, slave):
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
out_error(e)
|
out_error(e)
|
||||||
|
|
||||||
|
update_master_server_by_slave_ip(master_id, slave)
|
||||||
|
|
||||||
|
|
||||||
|
def update_master_server_by_slave_ip(master_id: int, slave_ip: str) -> None:
|
||||||
try:
|
try:
|
||||||
Server.update(master=master_id).where(Server.ip == slave).execute()
|
Server.update(master=master_id).where(Server.ip == slave_ip).execute()
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
out_error(e)
|
out_error(e)
|
||||||
|
|
||||||
|
@ -564,7 +568,7 @@ def select_server_group_by_ip(server_ip):
|
||||||
return groups
|
return groups
|
||||||
|
|
||||||
|
|
||||||
def select_server_ip_by_id(server_id):
|
def select_server_ip_by_id(server_id: int) -> str:
|
||||||
try:
|
try:
|
||||||
server_ip = Server.get(Server.server_id == server_id).ip
|
server_ip = Server.get(Server.server_id == server_id).ip
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
|
|
|
@ -393,13 +393,13 @@ def create_server(hostname, ip, group, typeip, enable, master, cred, port, desc,
|
||||||
|
|
||||||
|
|
||||||
def update_server_after_creating(hostname: str, ip: str, scan_server: int) -> str:
|
def update_server_after_creating(hostname: str, ip: str, scan_server: int) -> str:
|
||||||
try:
|
|
||||||
try:
|
try:
|
||||||
sql.insert_new_checker_setting_for_server(ip)
|
sql.insert_new_checker_setting_for_server(ip)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
roxywi_common.logging(f'Cannot insert Checker settings for {hostname}', str(e), roxywi=1)
|
roxywi_common.logging(f'Cannot insert Checker settings for {hostname}', str(e), roxywi=1)
|
||||||
raise Exception(f'error: Cannot insert Checker settings for {hostname} {e}')
|
raise Exception(f'error: Cannot insert Checker settings for {hostname} {e}')
|
||||||
|
|
||||||
|
try:
|
||||||
if scan_server == '1':
|
if scan_server == '1':
|
||||||
nginx_config_path = sql.get_setting('nginx_config_path')
|
nginx_config_path = sql.get_setting('nginx_config_path')
|
||||||
haproxy_config_path = sql.get_setting('haproxy_config_path')
|
haproxy_config_path = sql.get_setting('haproxy_config_path')
|
||||||
|
|
|
@ -113,16 +113,16 @@ def update_cluster(cluster: object, group_id: int) -> str:
|
||||||
def delete_cluster(cluster_id: int) -> str:
|
def delete_cluster(cluster_id: int) -> str:
|
||||||
router_id = sql.get_router_id(cluster_id, default_router=1)
|
router_id = sql.get_router_id(cluster_id, default_router=1)
|
||||||
slaves = sql.select_cluster_slaves(cluster_id, router_id)
|
slaves = sql.select_cluster_slaves(cluster_id, router_id)
|
||||||
HaCluster.delete().where(HaCluster.id == cluster_id).execute()
|
|
||||||
|
|
||||||
for slave in slaves:
|
for slave in slaves:
|
||||||
slave_ip = sql.select_server_ip_by_id(slave.server_id)
|
slave_ip = sql.select_server_ip_by_id(slave[0])
|
||||||
try:
|
try:
|
||||||
sql.update_server_master(0, slave_ip)
|
sql.update_master_server_by_slave_ip(0, slave_ip)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
raise Exception(f'error: Cannot update master on slave {slave_ip}: {e}')
|
raise Exception(f'error: Cannot update master on slave {slave_ip}: {e}')
|
||||||
|
|
||||||
roxywi_common.logging(cluster_id, 'Cluster has been deleted', keep_history=1, roxywi=1, service='HA cluster')
|
HaCluster.delete().where(HaCluster.id == cluster_id).execute()
|
||||||
|
roxywi_common.logging(cluster_id, 'Cluster has been deleted', roxywi=1, service='HA cluster')
|
||||||
|
|
||||||
return 'ok'
|
return 'ok'
|
||||||
|
|
||||||
|
|
|
@ -98,7 +98,7 @@ def create_server():
|
||||||
user_status=user_subscription['user_status'], user_plan=user_subscription['user_plan'], adding=1
|
user_status=user_subscription['user_status'], user_plan=user_subscription['user_plan'], adding=1
|
||||||
)
|
)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
return f'error: {e}'
|
return f'{e}'
|
||||||
|
|
||||||
|
|
||||||
@bp.post('/create/after')
|
@bp.post('/create/after')
|
||||||
|
@ -121,7 +121,7 @@ def update_server():
|
||||||
typeip = request.form.get('typeip')
|
typeip = request.form.get('typeip')
|
||||||
firewall = request.form.get('firewall')
|
firewall = request.form.get('firewall')
|
||||||
enable = request.form.get('enable')
|
enable = request.form.get('enable')
|
||||||
master = request.form.get('slave')
|
master = int(request.form.get('slave'))
|
||||||
serv_id = request.form.get('id')
|
serv_id = request.form.get('id')
|
||||||
cred = request.form.get('cred')
|
cred = request.form.get('cred')
|
||||||
port = request.form.get('port')
|
port = request.form.get('port')
|
||||||
|
@ -132,9 +132,24 @@ def update_server():
|
||||||
return error_mess
|
return error_mess
|
||||||
else:
|
else:
|
||||||
sql.update_server(name, group, typeip, enable, master, serv_id, cred, port, desc, firewall, protected)
|
sql.update_server(name, group, typeip, enable, master, serv_id, cred, port, desc, firewall, protected)
|
||||||
roxywi_common.logging(f'The server {name}', ' has been updated ', roxywi=1, login=1)
|
|
||||||
server_ip = sql.select_server_ip_by_id(serv_id)
|
server_ip = sql.select_server_ip_by_id(serv_id)
|
||||||
roxywi_common.logging(server_ip, f'The server {name} has been update', roxywi=1, login=1, keep_history=1, service='server')
|
roxywi_common.logging(server_ip, f'The server {name} has been update', roxywi=1, login=1, keep_history=1, service='server')
|
||||||
|
if master == 0:
|
||||||
|
try:
|
||||||
|
sql.delete_ha_cluster_delete_slave(serv_id)
|
||||||
|
roxywi_common.logging(server_ip, f'The server {name} has been removed from HA cluster', roxywi=1, login=1,
|
||||||
|
keep_history=1, service='server')
|
||||||
|
except Exception as e:
|
||||||
|
roxywi_common.logging(server_ip, f'error: Cannot delete the server {name} from HA cluster: {e}', roxywi=1, login=1,
|
||||||
|
keep_history=1, service='server')
|
||||||
|
raise Exception(f'error: Cannot delete the server {name} from HA cluster: {e}')
|
||||||
|
else:
|
||||||
|
try:
|
||||||
|
sql.ha_cluster_add_slave(serv_id, master)
|
||||||
|
except Exception as e:
|
||||||
|
roxywi_common.logging(server_ip, f'error: Cannot add the server {name} to HA cluster: {e}', roxywi=1, login=1,
|
||||||
|
keep_history=1, service='server')
|
||||||
|
raise Exception(f'error: Cannot add the server {name} to HA cluster: {e}')
|
||||||
|
|
||||||
return 'ok'
|
return 'ok'
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
ignore_errors: yes
|
ignore_errors: yes
|
||||||
|
|
||||||
- name: Add logs tasks.
|
- name: Add logs tasks.
|
||||||
include: ../../haproxy/tasks/logs.yml
|
include_tasks: ../../haproxy/tasks/logs.yml
|
||||||
|
|
||||||
- name: Setting sysctl values.
|
- name: Setting sysctl values.
|
||||||
sysctl:
|
sysctl:
|
||||||
|
@ -47,5 +47,5 @@
|
||||||
ansible_python_interpreter: /usr/bin/python3
|
ansible_python_interpreter: /usr/bin/python3
|
||||||
|
|
||||||
- name: Add syn_flood tasks.
|
- name: Add syn_flood tasks.
|
||||||
include: ../../haproxy/tasks/syn_flood.yml
|
include_tasks: ../../haproxy/tasks/syn_flood.yml
|
||||||
when: (SYN_FLOOD is defined) and (SYN_FLOOD|length > 0)
|
when: (SYN_FLOOD is defined) and (SYN_FLOOD|length > 0)
|
||||||
|
|
Loading…
Reference in New Issue