haproxy 配置文件修改
增,删,改,查,主要功能实现,小功能不完善,后续修改!
1 # -*- coding:utf-8 -*- 2 # Author:JinYu 3 4 5 import json 6 s='{"backend":"www.baidu.com","record":{"server":"172.168.0.98","weight":21,"maxconn":31}}' 7 print(s) 8 9 import sys,time,os,json 10 11 #进度条 12 def Progress(): 13 print("\033[34;1m操作中,请等待!\033[0m".center(30,"*")) 14 for i in range(5): 15 sys.stdout.write('\033[36;1m>\033[0m') 16 sys.stdout.flush() 17 time.sleep(0.1) 18 19 #查询 20 def Query(url): 21 query_url ='backend %s' %url.lower() 22 with open('haproxy','r') as f: 23 for i in f: 24 if query_url in i: 25 Progress() 26 print(f.readline().strip()) 27 exit() 28 print('\033[31;1m未找到查询地址....\033[0m') 29 30 #删除 31 def Delete(data_json): 32 del_titie = data_json["backend"] 33 del_record = data_json["record"] 34 data_title ='backend %s' %(del_titie) 35 data_record ="server %s weight %s maxconn %s" \ 36 %(del_record["server"],del_record["weight"],del_record["maxconn"]) 37 print(data_title) 38 with open('haproxy','r') as read_f, open('tempfile','w') as write_f: 39 for line in read_f: 40 if line.replace("","").strip() == data_title: 41 pass 42 elif line.replace("","").strip() == data_record: 43 pass 44 else: 45 write_f.write(line) 46 os.rename('haproxy','haproxy.bak') 47 os.rename('tempfile','haproxy') 48 Progress() 49 print('\033[31;1m删除成功\033[0m\n') 50 51 52 53 def Added(data_json): 54 del_titie = data_json["backend"] 55 del_record = data_json["record"] 56 data_title ='backend %s' %(del_titie) 57 data_record ="server %s weight %s maxconn %s" \ 58 %(del_record["server"],del_record["weight"],del_record["maxconn"]) 59 data_temp = '%s\n\t%s'%(data_title,data_record) 60 print(data_temp) 61 #exit() 62 with open('haproxy','a+') as write_f: 63 write_f.write('\n'+data_temp) 64 Progress() 65 print('新增成功\n') 66 67 68 69 #主函数 70 if __name__ == '__main__': 71 print ('\033[34;1m1.获取记录 2.添加记录 3.删除记录\033[0m') 72 character = input('\033[32;1m请输入功能码--->\033[0m') 73 if character == '1': 74 temp = input('\033[32;1m输入查询地址--->\033[0m') 75 Query(temp) 76 77 elif character == '3': 78 temp = input('\033[32;1m输入删除的json参数--->\033[0m') 79 data_json = json.loads(temp) 80 Delete(data_json) 81 82 elif character == '2': 83 temp = input('\033[32;1m输入插入的json参数--->\033[0m') 84 data_json = json.loads(temp) 85 Added(data_json) 86 else: 87 print('\033[35;1m输入功能码有误!请重新输入.......\033[0m') 88 #{"backend":"www.baidu.com","record":{"server":"100.100.100.100","weight":20,"maxconn":30}}
1 aglobal 2 log 127.0.0.1 local2 3 daemon 4 maxconn 256 5 log 127.0.0.1 local2 info 6 defaults 7 log global 8 mode http 9 timeout connect 5000ms 10 timeout client 50000ms 11 timeout server 50000ms 12 option dontlognull 13 listen stats :8888 14 stats enable 15 stats uri /admin 16 stats auth admin:1234 17 frontend oldboy.org 18 bind 0.0.0.0:80 19 option httplog 20 option httpclose 21 option forwardfor 22 log global 23 acl www hdr_reg(host) -i www.oldboy.org 24 use_backend www.oldboy.org if www 25 backend www.baidu.com 26 server 172.168.0.99 weight 20 maxconn 30 27 server 172.168.0.98 weight 21 maxconn 31 28 backend www.oldboy.org 29 server 100.1.7.9 100.1.7.9 weight 20 maxconn 3000 30 backend www.meilishuo.com 31 server 172.168.0.99 weight 20 maxconn 30 32 backend www.mogujie.com 33 server 172.168.0.99 weight 20 maxconn 30 34 backend www.wangyi.com 35 server 172.168.0.99 weight 20 maxconn 30 36 backend www.xinlang.com 37 server 172.168.0.99 weight 20 maxconn 30
posted on 2017-01-10 13:31 Baylor_Chen 阅读(364) 评论(0) 收藏 举报
浙公网安备 33010602011771号