zoukankan      html  css  js  c++  java
  • Haproxy的Tcp代理搭建

    一、安装说明

    1、我们在192.168.110.66机器上搭建haproxy

    2、haproxy代理端口为6379

    二、操作步骤

    1、下载源码包

    https://www.haproxy.org/download/1.7/src/haproxy-1.7.9.tar.gz

    2、安装

    (1)解压

    [root@localhost ~]# tar -xvzf haproxy-1.7.9.tar.gz

    [root@localhost ~]# cd haproxy-1.7.9

    (2)创建目录

    [root@localhost haproxy-1.7.9]# mkdir -p /usr/local/haproxy

    (3)安装

    [root@localhost haproxy-1.7.9]# yum groupinstall -y "Development Tools"

    [root@localhost haproxy-1.7.9]# yum install -y openssl openssl-devel

    [root@localhost haproxy-1.7.9]# uname -a

    [root@localhost haproxy-1.7.9]# make TARGET=linux26 USE_OPENSSL=1 ADDLIB=-lz  #此处编译的时候需要让haproxy支持SSL模块

    [root@localhost haproxy-1.7.9]# make install PREFIX=/usr/local/haproxy

    (4)安装完成之后查看版本

    [root@i-bapxgqlw examples]# /usr/local/haproxy/sbin/haproxy -v

    HA-Proxy version 1.7.9 2017/08/18

    Copyright 2000-2017 Willy Tarreau <willy@haproxy.org>

    [root@i-bapxgqlw examples]#

    复制haproxy到/usr/sbin/下

    [root@i-bapxgqlw examples]#cp /usr/local/haproxy/sbin/haproxy /usr/sbin/

    (5)设置启动脚本

    复制haproxy脚本到/etc/init.d下

    [root@ceshi haproxy-1.7.9]# cd /root/haproxy-1.7.9/examples/

    [root@i-bapxgqlw examples]# cp haproxy.init /etc/init.d/haproxy

    赋予权限

    [root@i-bapxgqlw examples]# chmod 755 /etc/init.d/haproxy

    创建系统账号

    [root@i-bapxgqlw examples]# useradd -r haproxy

    3、创建配置文件

    [root@localhost ~]# mkdir /etc/haproxy

    [root@localhost ~]# vim /etc/haproxy/haproxy.cfg

    global

            log 127.0.0.1   local0

            log 127.0.0.1   local1 notice

            #log loghost    local0 info

            maxconn 4096

            chroot /usr/local/haproxy

            uid 99

            gid 99

            daemon

            #debug

            #quiet

     

    defaults

            log     global

            mode    tcp

            option  redispatch

            option  dontlognull

            retries 2

            maxconn 2000

            balance roundrobin

    timeout client 50s                        #客户端超时

            timeout server 50s                        #服务器超时

            timeout connect 5s                        #连接超时

    listen  proxy

    bind 192.168.110.66:6379   #对client提供的VIP

            server redis_01 192.168.110.56:7000 check inter 2000 rise 2 fall 5     #我这里转发的是主节点,当然这里也可以添加从节点的端口

            server redis_02 192.168.110.63:7004 check inter 2000 rise 2 fall 5

    4、启动haproxy

    [root@localhost ~]#/etc/init.d/haproxy start

    三、连接测试

    (1)使用haproxy代理服务器的ip加代理端口连接redis

    [root@localhost ~]# redis-cli -h 192.168.110.66 -c -p 6379

    192.168.110.66:6379> KEYS *

    1) "name"

    192.168.110.66:6379> KEYS *

    1) "name"

    192.168.110.66:6379> set name robin

    OK

    192.168.110.66:6379> get name

    "robin"

    192.168.110.66:6379>

    (2)可以正常连接证明配置无误

    (3)我将haproxy中的7000节点关闭之后,使用代理方式连接redis正常,证明实现了高可用

  • 相关阅读:
    MySQL —— 程序连接时的驱动名称和URL
    这该称作什么效应?
    Java 基础 面向对象之关键字内部类代码块修饰符
    Java 基础 面向对象之构造方法和关键字
    Java 基础 接口和多态
    Java 基础 面向对象和抽象类
    Java 基础 引用数据类型 ArrayList集合
    Java 基础 方法
    Java 基础 引用数据类型 和 流程控制
    Mongodb 基础 复制集原理和搭建
  • 原文地址:https://www.cnblogs.com/bazingafraser/p/8579512.html
Copyright © 2011-2022 走看看