首页 > 其他分享 >六月学习之Haproxy ACL实践(基于后缀调度)

六月学习之Haproxy ACL实践(基于后缀调度)

时间:2023-07-19 22:01:11浏览次数:33  
标签:Haproxy www 后缀 qingchen server ACL 172.16 pdf txt

2、ACL场景实践

2.4、ACL案例-基于后缀调度

根据用户请求的后缀,调度到不同的后端集群
用户通过.txt调度到172.16.1.7:80
用户通过.pdf调度到172.16.1.8:80

2.4.1、配置后端节点

#web1:.txt站点定义
cat /etc/nginx/conf.d/www.qingchen.com.conf
server {
    listen 8080;
    server_name www.qingchen.com;
    root /www
    location / {
        index index.html
    }
}
echo ".txt-->web1" > /www/web.txt

#web2:.pdf站点定义
cat /etc/nginx/conf.d/www.qingchen.com.conf
server {
    listen 80;
    server_name www.qingchen.com;
    root /www
    location / {
        index index.html
    }
}
echo ".pdf-->web2" > /www/web.pdf

2.4.2、配置Haproxy

frontend web
    bind *:80
    mode http
    
    # acl规则
    acl www_site hdr(host) -i www.qingchen.net
    
    # acl规则-请求txt --》 www   请求 pdf --blog
    acl req_txt path_end -i .txt
    acl req_pdf path_end -i .pdf
    
    # 调用
    use_backend www_cluster if www_site req_txt
    use_backend blog_cluster if  www_site req_pdf
    default_backend www_cluster

backend www_cluster
    balance roundrobin
    option httpchk HEAD / HTTP/1.1\r\nHost:\ www.qingchen.net
    server 172.16.1.7 172.16.1.7:80 check port 80 inter 3s rise 2 fall 3
    server 172.16.1.8 172.16.1.8:80 check port 80 inter 3s rise 2 fall 3

backend m_cluster
    balance roundrobin
    option httpchk HEAD / HTTP/1.1\r\nHost:\ www.qingchen.net
    server 172.16.1.7 172.16.1.7:8080 check port 8080 inter 3s rise 2 fall 3
    server 172.16.1.8 172.16.1.8:8080 check port 8080 inter 3s rise 2 fall 3

2.4.3、客户端测试

curl -HHost:www.qingchen.net http://10.0.0.5/web.pdf
curl -HHost:www.qingchen.net http://10.0.0.5/web.txt

标签:Haproxy,www,后缀,qingchen,server,ACL,172.16,pdf,txt
From: https://blog.51cto.com/u_13236892/6780400

相关文章

  • Oracle的expdp导出、impdp导出命令
    expdp在源oracle所在服务器执行如下步骤:1、手动创建目录 mkdir-p/home/oracle/mydata2、将目录授权给用户 cd/home/oracle chown-Roracle:oinstallmydata3、oracle用户切换并使用管理员登陆oracle su-oracle sqlplus/assysdba4、源库创建directory createdirectorym......
  • spring boot 如何配置多个数据源,mysql和oracle
    在SpringBoot中配置多个数据源,例如MySQL和Oracle,可以通过以下步骤实现:添加依赖在pom.xml文件中添加MySQL和Oracle的依赖:<!--MySQL--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><!......
  • Oracle系列---【Oracle如何初始化?】
    Oracle如何初始化?初始化表空间#查看表空间基本信息,包含了表空间的名称、状态、文件名称、数据文件大小、剩余空间等信息。SELECT*FROMDBA_TABLESPACE;#查看表空间实施监控信息,包含了已使用空间、表空间总大小、已使用空间占比、最大允许大小等指标SELECT*FROMDBA_TA......
  • Oracle系列---【如何查看Oracle数据库连接数?】
    如何查看数据库连接数?selecta.sid,serial#,USERNAME,a.PREV_EXEC_START,b.sql_text,a.MACHINE,a.PORT,a.status,'ALTERSYSTEMKILLSESSION'''||a.sid||','||serial#||''';'fromV$sessionaLEFTJOIN"V$SQLAREA"......
  • haproxy代理数据库
    安装部署cphaproxy-systemd-wrapper/usr/sbin/cphaproxy/usr/sbinchmod+x/usr/sbin/haproxychmod+x/usr/sbin/haproxy-systemd-wrappermkdir-p/etc/haproxyvi/etc/haproxy/haproxy.cfguseraddhaproxychown-Rhaproxy:haproxy/etc/haproxymkdir/var......
  • Oracle11G扩展表空间
    转载自:https://www.qycn.com/xzx/article/13650.html这篇文章主要给大家介绍“Oracle增加表空间的方法及具体步骤是什么”的相关知识,下文通过实际案例向大家展示操作过程,内容简单清晰,易于学习,有这方面学习需要的朋友可以参考,希望这篇“Oracle增加表空间的方法及具体步骤是什么”......
  • Oracle生成UUID
    使用sys_guid()获取oracleUUID,会出现乱码问题,使用库函数对sys_guid()进行处理,则是标准UUID大写UUIDSELECTsys_guid(),rawtohex(sys_guid())fromdual小写uuidSELECTlower(rawtohex(sys_guid()))fromdual......
  • 六月学习之Haproxy ACL实践(基于路径调度)
    2、ACL场景实践2.3、ACL案例-基于路径调度#根据用户请求的URL。调度到不同的后端集群用户通过/static调度到172.16.1.7:80用户请求/user调度到172.16.1.8:802.3.1、配置后端节点#web1:/static站点定义cat/etc/nginx/conf.d/www.qingchen.com.confserver{listen80;......
  • ORACLE数据库启停、闪回和锁表查询以及创建DBLINK
    数据库启动和停止停止orcale/oracle7//停止1.ps-ef|grepsmon2.exportORACLE_SID=cbsdba(cbsdba是实例名)3.sqlplus/assysdba 4.shutdown immediate;启动1.ps-ef|grepsmon2.exportORACLE_SID=cbsdba3.sqlplus/assysdba 4.startup;5.alter pluggabledatabas......
  • Golang连接Oracle数据库
    Golang连接Oracle的库有很多,比较常见的如下:不过,oralce只提供了oci8的接口,必须通过它来调用,所以下面方案都逃不过相关设置。1、go-db-oracle地址:https://code.google.com/p/go-db-oracle/官方介绍:OracleDriverusingcgotocallOCIlibrariesfromOracleInstantClient11.......