首页 > 数据库 >haproxy代理数据库

haproxy代理数据库

时间:2023-07-19 10:56:02浏览次数:36  
标签:haproxy stats 数据库 代理 etc usr tidb check

安装部署

cp haproxy-systemd-wrapper  /usr/sbin/
cp haproxy /usr/sbin

chmod +x /usr/sbin/haproxy
chmod +x /usr/sbin/haproxy-systemd-wrapper
mkdir -p /etc/haproxy

vi /etc/haproxy/haproxy.cfg

useradd haproxy
chown -R haproxy:haproxy /etc/haproxy

mkdir /var/lib/haproxy
chown -R haproxy:haproxy /var/lib/haproxy




vi /etc/sysconfig/haproxy

# Add extra options to the haproxy daemon here. This can be useful for
# specifying multiple configuration files with multiple -f options.
# See haproxy(1) for a complete list of options.
OPTIONS=""




vi /usr/lib/systemd/system/haproxy.service

[Unit]
Description=HAProxy Load Balancer
After=syslog.target network.target

[Service]
EnvironmentFile=/etc/sysconfig/haproxy
ExecStart=/usr/sbin/haproxy-systemd-wrapper -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid $OPTIONS
ExecReload=/bin/kill -USR2 $MAINPID
KillMode=mixed

[Install]
WantedBy=multi-user.target




systemctl daemon-reload
systemctl restart haproxy
安装步骤

 

配置文件说明

#---------------------------------------------------------------------
# 全局设定部分
#---------------------------------------------------------------------
global

defaults
        log     global
        mode    tcp
        option  dontlognull
        timeout connect 5000
        timeout client  50000
        timeout server  50000

#---------------------------------------------------------------------
# HAPROXY状态页面
#---------------------------------------------------------------------
listen admin_stats
   stats       enable
   # 监听端口
   bind        *:12345
   mode        http
   option      httplog
   log         global
   maxconn     10
   # 刷新间隔
   stats       refresh          30s
   # 页面路径
   stats       uri              /
   stats       realm            haproxy
   # 访问认证
   stats       auth             admin:password
   stats       hide-version

#---------------------------------------------------------------------
# TCP转发及负载均衡及简单TCP可用性校验
# weight权重;check inter检测频率;rise 1一次可用恢复;fall 2两次失败降级
#---------------------------------------------------------------------
frontend tidb-in
    bind     *:10000
    maxconn  80000
    default_backend tidb

backend tidb
    #使用HTTP对URI路径可用性进行检测
    #option httpchk
    #http-check send meth GET uri /check.html
    #http-check expect status 200

    server tidb-1    10.30.92.70:4000    maxconn 40480  weight 10  check inter 10s  rise 1 fall 2
    server tidb-2    10.30.92.71:4000    maxconn 40480  weight 10  check inter 10s  rise 1 fall 2
    server tidb-3    10.30.92.73:4000    maxconn 44440  weight 10  check inter 10s  rise 1 fall 2
haproxy.cfg

     

      

       负载均衡配置

       

     haproxy可以不需要虚拟vip,可以在多台主机上同时部署haproxy并且进行同样的配置,这样客户端无论连接哪台haproxy主机都能把请求转发到后台的服务主机上进行处理

标签:haproxy,stats,数据库,代理,etc,usr,tidb,check
From: https://www.cnblogs.com/yxh168/p/17564935.html

相关文章

  • GreatSQL通过错误日志信息判断数据库实例是如何关闭的
    背景概述在一次客户的数据库实例连接不上了,需要我们排查一下原因,通过查看数据库实例进程已经不存在了,在错误日志中没有发现其他报错信息,发现有shutdown的字样出现,怀疑是某个用户手动关闭了实例。我们通过以下测试,发现是由于用户关闭了主机所导致的。问题复现本次测试基于GreatS......
  • 免费使用cloudflare搭建OpenAI的接口代理
    由于GFW以及OpenAI官方的封禁,我们在国内服务器是访问不通OpenAI的官方接口的之前,我一直是使用一个网上找的第三方代理域名,但是担心使用别人的代理不安全、不稳定现在,我们可以使用cloudflare自己搭建一个OpenAI代理服务,使用我们自己的转发代理第一步:注册cloudflare账号前往官方......
  • Mysql基础6-常用数据库函数
    一、字符串函数1、常见Mysql内置字符串函数concat(s1,s2,s3,...):字符串拼接,将s1,s2,s3...等拼接成一个字符串lower(str):将字符串str全部转为小写upper(str):将字符串str全部转为大写lpad(str,n,pad):左填充,将字符串pad对str的左边进行填充,达到n个字符串长度rpad(str,n,......
  • 六月学习之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.......
  • Nginx 代理 WebSocket 、TCP协议
    Nginx代理WebSocket什么是WebSocketWebSocket是一种网络传输协议,可在单个TCP连接上进行全双工通信,位于OSI模型的应用层。WebSocket中的握手和HTTP中的握手过程兼容,且可以使用HTTP中的Upgrade协议头将连接从HTTP升级到WebSocket。代理结构WebSocket可以工作在......
  • 数据库基础
    正文:基本介绍Navicat基本使用数据库操作数据表操作数据操作-增删改 数据库:是指长期存储在计算机内、有组织的数据集合表是数据库中存储数据的基本单位,数据按照分类存储到不同的表中,能够非常高效的查询其中的数据。 常见数据库分类:关系型数据库非关系型数据库查......
  • jfinal 框架学习笔记-第三天 Model相关学习--record+Model增删改查的用法(震惊之今日刷
    1.了解了数据库连接池。其中使用最多也是最广泛的是druid数据库连接池也就是阿里云研发的数据库连接池2.ActiveRecord(jFinal的核心技术)+DruidPlugin(数据库连接词,如何与数据库打交道)ActiveRecord:1.Record(记录,相当于一个通用的Model),2.Model(提供日常CRUD的封装)Model示例......
  • 什么是 数据框,与数据库 有什么区别
    数据框(DataFrame)是一种二维数据结构,它类似于表格,具有行和列的结构。数据框是一种常见的数据结构,用于在统计分析和数据处理中存储和操作数据。在数据框中,每一列可以是不同的数据类型,如数值、字符、逻辑值等。数据框通常被用于在编程语言中处理和分析数据,例如R语言的数据框。数据......