配置文件

global
        log 127.0.0.1 local2
        daemon
        maxconn 256
        log 127.0.0.1 local2 info
defaults
        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 100.1.7.9 weight 20 maxconn 3000
        server 100.1.7.9 100.1.7.9 weight 20 maxconn 3000
        server 100.1.2.9 100.1.7.9 weight 20 maxconn 3000
        server 100.1.2.129 100.1.7.9 weight 20 maxconn 3000
backend buy.oldboy.org
        server 100.1.7.90 100.1.7.90 weight 20 maxconn 3000
 1 def fetch(backend):
 2     result = []
 3     f = "lv"
 4     with open(‘ha.conf‘,‘r‘,encoding=‘utf -8‘) as f:
 5         for line in f:
 6             if line.strip() == "backend %s" %backend:#
 7                 f = "ho"
 8                 continue
 9             if f == "ho":
10                 if line.strip().startswith(‘backend‘):
11                     f = "lv"
12                 else:
13                     if line.strip():
14                         result.append(line.strip())
15     return result
16
17 ret = fetch("www.oldboy.org")
18 print(ret)
19
20 def add1(backend,record):
21     f = "lv"
22     with open("ha.conf","r",encoding="utf-8") as f1,open("new.conf","w",encoding="utf-8") as f2:
23         for line in f1:
24             if f == "lv" and line != "backend %s" %backend:
25                 f2.write(line)
26             if f == "lv" and line == "backend %s" %backend:
27                 f2.write(line)
28                 f = "ho"
29                 f2.write(line)
30             if f == "ho" and line != "backend %s" %backend:
31                 if line.strip().startswith("backend"):
32                     # if record not in fetch(backend):
33
34                     f2.write(" "*8 +record+"\n")
35                     f = "lv"
36                 f2.write(line)
37 add1(‘www.oldboy.org‘,‘server 100.1.7.9 100.1.7.9 weight 20 maxconn 3000‘)
 1 def fetch(backend):
 2     result = []
 3     f = "绿灯"
 4     with open(‘ha.conf‘,‘r‘,encoding=‘utf -8‘) as f:
 5         for line in f:
 6             if line.strip() == "backend %s" %backend:#
 7                 f = "红灯"
 8                 continue
 9             if f == "红灯":
10                 if line.strip().startswith(‘backend‘):
11                     f = "绿灯"
12                 else:
13                     if line.strip():
14                         result.append(line.strip())
15     return result
16
17 ret = fetch("www.oldboy.org")
18 print(ret)
19
20
21 def add(backend,record):
22     import os
23     record_list = fetch(backend)
24     record_list.append(record)
25     print(record_list)
26     f = ‘绿灯‘
27     with open(‘ha.conf‘,‘r‘,encoding=‘utf-8‘) as old, open(‘new_1.conf‘,‘w‘,encoding=‘utf-8‘) as new:
28         for line in old:
29             if f == ‘绿灯‘ and line.strip() != ‘backend %s‘ %backend:
30                 new.write(line)
31             if f == "绿灯" and line.strip() == ‘backend %s‘ %backend:
32                 f = ‘红灯‘
33                 new.write(line)
34             if f == ‘红灯‘ and line.strip() != ‘backend %s‘ %backend :
35                 if len(line.strip()) == 0:
36                     continue
37                 if line.strip().startswith(‘backend‘):
38                     if record not in fetch(backend):
39                         new.write(" "*8 +record+"\n")
40                     f = ‘绿灯‘
41                 new.write(line)
42     if os.path.isfile("ha.conf.bak"):
43         os.remove("ha.conf.bak")
44     os.rename("ha.conf","ha.conf.bak")
45     os.rename("new_1.conf","ha.conf")
46
47 add(‘www.oldboy.org‘, ‘server 100.1.2.129 100.1.7.9 weight 20 maxconn 3000‘)
时间: 2024-08-09 19:47:33

配置文件的相关文章

linux下Nginx配置文件(nginx.conf)配置设置详解(windows用phpstudy集成)

linux备份nginx.conf文件举例: cp /usr/local/nginx/nginx.conf /usr/local/nginx/nginx.conf-20171111(日期) 在进程列表里 面找master进程,它的编号就是主进程号. ps -ef | grep nginx 查看进程 cat /usr/local/nginx/nginx.pid 每次修改完nginx文件都要重新加载配置文件linux命令: /usr/local/nginx -t //验证配置文件是否合法 若ngin

nginx配置文件详解

nginx配置文件nginx.conf超详细讲解 #nginx进程,一般设置为和cpu核数一样worker_processes 4;                        #错误日志存放目录 error_log  /data1/logs/error.log  crit;  #运行用户,默认即是nginx,可不设置user nginx       #进程pid存放位置pid        /application/nginx/nginx.pid; #Specifies the value

环境变量配置文件

让配置文件立即生效:source 配置文件 或 . 配置文件 /etc/profile 例:定义了HISTSIZE=1000 /etc/profile.d/*.sh /etc/bashrc ~/.bash_profile 例:定义了PATH=$PATH:$HOME/bin ~/.bashrc 例:定义了当前用户的命令别名 ~/.bash_history 注释:历史命令

Linux中的环境变量配置文件及其作用

登录相关的配置文件: /etc/profile 范围:对所有用户生效 作用: a.定义USER变量 b.定义LOGNAME变量 c.定义MAIL变量 d.定义PATH变量 e.定义HOSTNAME变量 f.定义HISTSIZE变量 g.定义umask值 i.调用/etc/profile.d/*.sh文件 /etc/profile.d/*.sh 范围:对所有用户生效 说明:这是一族sh文件,没个都会被调用 例如: /etc/profile.d/lang.sh 作用:调用/etc/sysconfg/

spring配置文件详解

转自: http://book.51cto.com/art/201004/193743.htm 此处详细的为我们讲解了spring2.5的实现原理,感觉非常有用 spring配置文件是用于指导Spring工厂进行Bean生产.依赖关系注入(装配)及Bean实例分发的"图纸".JavaEE程序员必须学会并灵活应用这份"图纸"准确地表达自己的"生产意图".Spring配置文件是一个或多个标准的XML文档,applicationContext.xml是

Hyper-V虚拟机Redhat添加网卡找不到网卡配置文件解决方法

环境:Hyper-V虚拟机上面安安装Redhat6.7 问题:系统安装时,只有一块网卡,现根据需要,增加一块网卡,DHCP获取IP地址,在Hyper-V设置中增加网卡后,存在连个问题:1./etc/sysconfig/network-scripts/中找不到配置文件且无法连接外网 解决方法: 1.cat /etc/udev/rules.d/70-persistent-net.rules 查看网卡的MAC地址和网卡名称 2. 在/etc/sysconfig/network-scripts/下建立i

004-用户、组、权限管理命令及bash配置文件、管道、重定向、grep

l  1.用户管理命令 1.)创建用户命令 useradd  [OPTIONS] USERNAME -u(UID):指定用户UID -g(GID):指定基本组 -G( group,...):指定附加组 -c"COMMENT":指定注释信息 -d(home_dir):指定家目录/path/to/directory -s:指定SHELL路径(/etc/shells指定了当前系统可用的安全shell) -m –k:强行为用户创建家目录 -M:不创建用户家目录 /etc/login.defs

PHP配置文件经典漏洞

phithon师父在小蜜圈里放了一个经典的配置文件写入问题漏洞. <?phpif(!isset($_GET['option'])) die();$str = addslashes($_GET['option']);$file = file_get_contents('./config.php');$file = preg_replace('|\$option=\'.*\';|', "\$option='$str';", $file);file_put_contents('./co

CentOS 7以yum方式安装zabbix3.2及配置文件详解

一.zabbix简介与环境准备 简介详见 ---> zabbix简介 环境准备: CentOS 7(node7):zabbix-server,web,mysql,agent mariadb:5.5.50 zabbix组件:3.2.1 apache:2.4.6 二.安装与配置 1.安装数据库(mariadb),可直接yum安装 [[email protected] ~]# vim /etc/yum.repos.d/MariaDB.repo [mariadb]  name = MariaDB  ba

python:配置文件configparser

#-*- coding:utf8 -*- # Auth:fulimei import configparser #第一个标签 conf=configparser.ConfigParser() conf['DEFAULT']={'ServerAliveInterval': '45', 'Compression': 'yes', 'CompressionLevel': '9'} conf['DEFAULT']['ForwardX11'] = 'yes' #第二个标签 conf['bitbucket.