国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 操作系統 > 正文

爛泥:高負載均衡學習haproxy之TCP應用

2024-06-28 13:18:56
字體:
來源:轉載
供稿:網友
爛泥:高負載均衡學習haPRoxy之TCP應用

本文由ilanniweb提供友情贊助,首發于爛泥行天下

在前幾篇文章中,我們介紹了haproxy的配置參數,而且配置例子都是http協議(7層應用)的。

這篇文章,開始介紹haproxy的4層TCP應用。

想要獲得更多的文章,可以關注我微信ilanniweb。

clip_image001

一、業務要求

現在我們有兩個要求,這兩個要求的協議都是通過tcp協議的。

1.1 haproxy代理ssh

為了安全起見,要求所有業務服務器都關閉公網的連接,只開放haproxy所在的服務器,并且其他業務服務器的ssh連接通過haproxy來實現。

實際業務,訪問192.168.5.171的8098端口就是訪問192.168.5.174的ssh端口。

1.2 haproxy代理MySQL

為了安全起見,要求mysql數據庫的連接只能通過內網ip,但是因為使用的是云數據庫,所以如果公司內部要連接數據庫的話要通過haproxy來實現。

實際業務,訪問192.168.5.171的8099端口就是訪問192.168.7.7的3306端口。

二、配置haproxy

因為是haproxy的7層和4層混合使用,所以在defaults中,我們不定義haproxy的運行模式。

注意:有關http模式的相關配置參數不要出現在default中。

有關業務要求的TCP 4層應用,我們的haproxy配置如下:

listen 8099

bind 0.0.0.0:8099

mode tcp

server 174_22 192.168.5.174:22 maxconn 1024 weight 5 check inter 2000 rise 2 fall 3

listen 8098

bind 0.0.0.0:8098

mode tcp

server 77_3306 192.168.7.7:3306 maxconn 1024 weight 5 check inter 2000 rise 2 fall 3

clip_image002

整個haproxy的配置文件如下:

grep -vE "^#|^$" haproxy.cfg

global

log 127.0.0.1 local0

log 127.0.0.1 local1 notice

maxconn 4096

uid 1005

gid 1005

daemon

defaults

log global

retries 3

option redispatch

maxconn 2000

contimeout 5000

clitimeout 50000

srvtimeout 50000

listen admin_stats

bind 192.168.5.171:1080

mode http

option httplog

maxconn 10

stats refresh 30s

stats uri /stats

stats auth admin:admin

stats hide-version

frontend weblb

bind *:80

acl is_dg hdr_beg(host) dg.test.com

mode http

acl is_ilanni hdr_beg(host) ilanni.test.com

acl is_171 hdr_beg(host) 192.168.5.171

acl is_ip src 192.168.5.140

acl is_port dst_port 8090

use_backend acl if is_171 is_ip

use_backend mui_acl if is_171 is_ip is_port

use_backend dgserver if is_dg

use_backend ilanni if is_ilanni

use_backend 171server if is_171

default_backend backend_default

backend dgserver

balance source

mode http

server web1 192.168.5.171:8080 maxconn 1024 weight 3 check inter 2000 rise 2 fall 3

server web2 192.168.5.174:8080 maxconn 1024 weight 3 check inter 2000 rise 2 fall 3

server web3 192.168.5.178:8080 maxconn 1024 weight 3 check inter 2000 rise 2 fall 3

backend 171server

balance roundrobin

mode http

server dg1 192.168.5.174:80 check

server dg2 192.168.5.178:80 check

backend ilanni

server web1 www.yuanbaopu.com:80 weight 3 check inter 2000 rise 2 fall 3

mode http

backend acl

balance source

mode http

server web1 www.ilanni.com:80 maxconn 1024 weight 3 check inter 2000 rise 2 fall 3

backend mui_acl

balance source

mode http

server web1 192.168.5.178:80 maxconn 1024 weight 3 check inter 2000 rise 2 fall 3

backend backend_default

server web1 192.168.5.178:8080 weight 3 check inter 2000 rise 2 fall 3

mode http

listen 8090

bind 0.0.0.0:8090

mode http

balance roundrobin

server web1 192.168.5.174:8090 maxconn 1024 weight 5 check inter 2000 rise 2 fall 3

server web2 192.168.5.178:8090 maxconn 1024 weight 3 check inter 2000 rise 2 fall 3

listen 8099

bind 0.0.0.0:8099

mode tcp

server 174_22 192.168.5.174:22 maxconn 1024 weight 5 check inter 2000 rise 2 fall 3

listen 8098

bind 0.0.0.0:8098

mode tcp

server 77_3306 192.168.7.7:3306 maxconn 1024 weight 5 check inter 2000 rise 2 fall 3

三、驗證要求

haproxy配置完畢后,我們來驗證haproxy的配置是否正確,如下:

3.1 驗證haproxy代理ssh

現在我們來驗證haproxy代理ssh,在linux客戶端上使用如下命令:

ssh -p8099 wangxy@192.168.5.171

clip_image003

通過上圖,我們可以很明顯的看出haproxy成功的代理了192.168.5.174的ssh端口。

3.2 驗證haproxy代理mysql

現在我們來驗證haproxy代理mysql,在Linux客戶端上使用如下命令:

mysql -P8098 -h192.168.5.171 -uroot –p

clip_image004

通過上圖,我們可以很明顯的看出haproxy成功的代理了192.168.7.7的3306端口(也即是mysql)。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大城县| 嘉荫县| 新疆| 恩平市| 阿勒泰市| 沙坪坝区| 临清市| 中方县| 鄂托克旗| 兖州市| 枣强县| 应用必备| 安泽县| 湘西| 龙井市| 临颍县| 从化市| 徐水县| 德庆县| 临海市| 锡林浩特市| 南平市| 南江县| 晋宁县| 娱乐| 清原| 内丘县| 定结县| 西吉县| 贵南县| 白山市| 古交市| 革吉县| 仪陇县| 长沙市| 吉木乃县| 邹城市| 临清市| 福建省| 溧阳市| 青浦区|