修改haproxy配置文件
HAproxy配置文件操作:
1. 根据用户输入输出对应的backend下的server信息
2. 可添加backend 和sever信息
3. 可修改backend 和sever信息
4. 可删除backend 和sever信息
5. 操作配置文件前进行备份
6 添加server信息时,如果ip已经存在则修改;如果backend不存在则创建;若信息与已有信息重复则不操作
配置文件 参考 http://www.cnblogs.com/alex3714/articles/5717620.html
配置文件如下:
global log 127.0.0.1 local2 daemon maxconn 256 log 127.0.0.1 local2 infodefaults log global mode http timeout connect 5000ms timeout client 50000ms timeout server 50000ms option dontlognull listen stats :8888 stats enable stats uri /admin stats auth admin:1234 frontend oldboy.org bind 0.0.0.0:80 option httplog option httpclose option forwardfor log global acl www hdr_reg(host) -i www.oldboy.org use_backend www.oldboy.org if www backend www.oldboy.org server 100.1.7.9 weight 20 maxconn 3000 代码如下:
f = open("haproxy","r",encoding="gbk") f_new = open("haproxy_new","w",encoding="gbk") #将文件内容转换为一个列表,并定义一个变量。 b = f.readlines() #定义三个选项: option = ("1、请输入搜索的地址:","2、请输入增加的内容:","3、请输入删除的内容:") #打印三个选项: for i in option:print(i) choice = input("请选择操作方式:序列号>>>") #如果选择1,则进入查找选项。 if choice == "1" :data = input("请输入搜索地址:")#利用字符串拼接,定义一个变量,-----backend所在的行。address = "backend %s\n"%dataif address in b:#利用列表的下标来定位位置,然后通过下标打印内容。index_add = b.index(address)print(b[index_add],b[index_add+1])if address not in b:print("您查找的内容不存在") #如果选择2,则进入增加内容选项: if choice =="2":data = input("输入增加内容:")data_eval = eval(data)#通过列表计数器来判断输入的内容是否在列表中存在,如果计数器为0则不存在,如果计数器不为0则存在。#不存在则添加,存在则不添加。f_find = b.count("backend %s\n"%data_eval["backend"])#如果backend后的内容在文件中不能找到则新增。if f_find == 0:for line in b:f_new.write(line)# for f_line2 in f:# #将输入的内容通过字符串拼接的形式写入文件中f_new.write("\nbackend ")f_new.write(data_eval["backend"])f_new.write("\n server %s weight %s maxconn %s"\%(data_eval["record"]["server"],data_eval["record"]["weight"]\,data_eval["record"]["maxconn"]))#如果backend后的内容在文件中能找到则不执行任何操作。if f_find != 0:print("您添加的内容已经存在") #如果选择3,则进入删除内容选项: if choice == "3":data = input("输入删除内容:")data_eval = eval(data)#通过列表计数器来判断输入的内容是否在列表中存在,如果计数器为0则不存在,如果计数器不为0则存在。#不存在则添加,存在则不添加。f_find = b.count("backend %s\n"%data_eval["backend"])#如果backend后的内容在文件中不能找到则新增。if f_find != 0:b_index=b.index("backend www.oldboy.org\n")b.pop(b_index)b.pop(b_index)for line in b:f_new.write(line)#如果backend后的内容在文件中不能找到则不执行任何操作。if f_find == 0:print("您输入的内容文件中不存在") f.close() f_new.close()
转载于:https://www.cnblogs.com/1dreams/p/6880205.html
修改haproxy配置文件相关推荐
- 5.修改haproxy配置文件
需求: 1 1.查 2 输入:www.oldboy.org 3 获取当前backend下的所有记录 4 5 2.新建 6 输入: 7 arg = { 8 'backend': 'www.oldboy. ...
- 3-3 修改haproxy配置文件
1.需求 2.个人思路 3.个人心得 4. 转载于:https://www.cnblogs.com/venicid/p/7272448.html
- CENTOS7 高性能Linux集群 通过yum进行 haproxy配置 !安装 !使用!HAProxy配置文件详解
Haproxy配置 永久修改名字:便于区分虚拟机! Haproxy:hostnamectl set-hostname haproxy Web1: hostnamectl set-hostname WE ...
- 〖Demo〗-- HAproxy配置文件操作
[HAproxy配置文件操作] 要求 1. 根据用户输入输出对应的backend下的server信息 2. 可添加backend 和sever信息 3. 可修改backend 和sever信息 4. ...
- linux修改mysql配置文件_忘记MySQL密码怎么办?一招教你搞定!
在安装完 MySQL 或者是在使用 MySQL 时,最尴尬的就是忘记密码了,墨菲定律也告诉我们,如果一件事有可能出错,那么它一定会出错.那如果我们不小心忘记了 MySQL 的密码,该如何处理呢?别着急 ...
- 批量修改漫游配置文件路径
系列导读: 本系列文章短小精悍,通过设置企业中AD用户帐户的配置文件来满足企业用户的业务需求. [二] 一次要改变大量的用户配置文件路径是非常累的事,因此今天和大家分享如何通过命令行工具来批量修改用户 ...
- Centos设置静态IP及修改Centos配置文件
Centos设置静态IP及修改Centos配置文件 - 51CTO.COM Centos设置静态IP及修改Centos配置文件 2010-01-13 10:48 佚名 CSDN 我要评论(0) 字号: ...
- haproxy配置文件
haproxy配置文件 vim haproxy.cfg #--------------------------------------------------------------------- # ...
- u8系统更改了服务器,u8修改服务器配置文件
u8修改服务器配置文件 内容精选 换一换 YOUR_OS.iso用实际的iso包名代替.请确认已经备份所有repo文件后,在rm删除界面输入y表示同意删除.配置yum本地源.[Local] name= ...
最新文章
- 计算机主机的灯一直闪,电脑硬盘灯一直闪怎么办|电脑硬盘灯狂闪的解决方法...
- Cannot resolve corresponding JNI function
- 牛人iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- MongoDB 4.2 内核解析 - Change Stream
- 【AD】Altium designer IPC快速创建封装
- IE6绿色中文版,支持在Win7、Win8下完美运行
- python核心编程:第六章。
- SVM中的间隔最大化
- eclipse 安装maven
- Unity3D的Android移动之路之平台依赖编译
- python 颜色大全 颜色对应 matplotlab plot 颜色对应
- bodymovin导出没有html5,AE脚本-导出json格式的Web动画工具 Bodymovin v5.5.3+使用教程
- stm32f107ptp时钟同步
- 如何用计算机测量图片景深,用手机也能测景深 DOF Master景深测量软件
- spring BeanPostProcessor使用场景
- 《领导力与沟通艺术》
- STM32F103_study64_The punctual atoms(Simulator and downloader)
- 【Github上有趣的项目】Deep-Flow-Guided-Video-Inpainting 从视频中抹去一个人(或消除马赛克)
- 【论文阅读】SyncPerf: Categorizing, Detecting, and Diagnosing Synchronization Performance Bugs
- 一。回合制游戏 加暴击 掉落 二。柜台商品管理系统