haproxy 安装启动

前段时间因为安全考虑需要mysql 做内网隔离,再需要的时候打开代理,通过外网来进行访问,同事推荐了haproxy,官网有些慢,这里通过一些文章可以正常的打开haproxy,这里纪录一下,希望能帮助到大家


文章目录

  • 一、haproxy安装
  • 二、配置haproxy
  • 三、启动haproxy


一、haproxy安装

1.下载

由于到官网下载需要,这里提供百度云链接。

链接: https://pan.baidu.com/s/1uaSJa3NHFiE1E6dk7iHMwQ 提取码: irz6

2.将haproxy-1.7.8.tar.gz拷贝至/opt目录下,解压缩:

tar zxvf haproxy-1.7.8.tar.gz

进入目录,编译成可执行文件。
将源代码解压之后,需要运行make来将HAProxy编译成为可执行文件。如果是在Linux2.6系统上面进行编译的话,需要设置TARGET=linux26以开启epoll支持,这也是为什么网上许多博客里面都是这么写的。对于其他的UNIX系统来说,直接采用TARGET=generic方式,本文进行安装的系统为CentOS7 ,内核3.10版本。

cd haproxy-1.7.8
make TARGET=generic

执行完毕之后,目录下出现haproxy的可执行文件。

配置环境变量
为方便使用,可以进行环境变量的配置。在/etc/profile中加入haproxy的路径:

export PATH=$PATH:/opt/haproxy-1.7.8/haproxy

最后执行source /etc/profile让此环境变量生效。

二、配置haproxy

HAProxy配置文件说明

HAProxy配置文件通常分为三个部分,即global、defaults和listen。global为全局配置,defaults为默认配置,listen为应用组件配置。

global为全局配置部分,属于进程级别的配置,通常和使用的操作系统配置相关。

defaults配置项配置默认参数,会被应用组件继承,如果在应用组件中没有特别声明,将使用默认配置参数。

haproxy.cfg 配置

0.0.0.0:8001 是外网映射端口
192.168.0.122:3306 内网访问mysql 的ip 地址和端口

global
  #日志输出配置,所有日志都记录在本机,通过local0输出
  log 127.0.0.1 local0 info
  #最大连接数
  maxconn 1024
  #以守护进程方式运行
  daemon

defaults
  #应用全局的日志配置
  log global
  mode http
  #超时配置
  timeout connect 5000
  timeout client 5000
  timeout server 5000
  timeout check 2000

listen mysql
    bind 0.0.0.0:8001
    mode tcp
    balance roundrobin
    server mysql1 192.168.0.122:3306

这里需要说明的是,端口映射要考虑到各层的防火墙的影响,如果想要外网访问到,请把防火墙中的端口开启

三、启动haproxy

启动命令: 这个是找下面安装包中的 haproxy 启动文件 和 cfg 配置文件,我这里为了方便启动,写到了sh 脚本里面 每次直接执行,会方便一点

/opt/haproxy-1.7.8/haproxy -f /opt/haproxy-1.7.8/haproxy.cfg

验证是否启动成功:

[root@localhost haproxy-1.7.8]# lsof -i:8888
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
haproxy 45031 root    3u  IPv4 228341      0t0  TCP localhost.localdomain:ddi-tcp-1 (LISTEN)

然后就是通过外网访问mysql 能否访问就可以了

参考网址:

https://blog.csdn.net/u014116780/article/details/96499029

你可能感兴趣的:(服务器,centos,运维,linux,mysql)