首页 / 运用配置 / 用haporxy端口转发给kvm虚拟机,实现一个公网IP对多个kvm虚拟机的访问

用haporxy端口转发给kvm虚拟机,实现一个公网IP对多个kvm虚拟机的访问

2023-04-20 16:34:24运用配置 阅读 915
HAProxy 是一款高性能的负载均衡器和代理服务器,可以用于端口转发和负载均衡。按照以下步骤操作:

安装 HAProxy:
yum install haproxy


编辑 /etc/haproxy/haproxy.cfg 文件,为每个 KVM 虚拟机配置端口转发规则。在文件末尾添加如下内容:


frontend [名称]
    bind *:[公网端口]
    mode tcp
    default_backend [后端名称]

backend [后端名称]
    mode tcp
    balance roundrobin

    server [服务器名称] [虚拟机IP:虚拟机端口] check


启动并使 HAProxy 开机自启:


systemctl start haproxy
systemctl enable haproxy

d.如果有防火墙,则需要放行新端口

firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --reload

如果在nginx http上,要从kvm获取真实IP,即日志的remote_addr是真实IP而不是现在的haproxy网关IP,需要加send-proxy


frontend gt3_frontend
    bind *:443
    mode tcp
    default_backend back3

backend back3
    mode tcp
    balance roundrobin
    server my_server 192.168.122.81:443 check send-proxy    
frontend gt4_frontend
    bind *:80
    mode tcp
    default_backend back4

backend back4
    mode tcp
    balance roundrobin

    server my_server 192.168.122.81:80 check send-proxy


且nginx端也要相应配置

listen  80 proxy_protocol;
listen 443 ssl proxy_protocol;

set_real_ip_from 192.168.122.1;

real_ip_header proxy_protocol;

原来可能只是listen,现在要在Listen后边加 proxy_protocol并加两行header设置,nginx日志格式则不需要变动,remote_addr会变成真实IP。

其它场景,如ssh则默认配置即可,如果不需要真实IP。

frontend gt1_frontend
    bind *:8122
    mode tcp
    default_backend back1

backend back1
    mode tcp
    balance roundrobin
    server my_server 192.168.122.81:22 check

本文《用haporxy端口转发给kvm虚拟机,实现一个公网IP对多个kvm虚拟机的访问》由爱思考吧 isres.com 分享,转载请注明出处。本文网址:https://www.isres.com/peizhi/26.html

本站主要收集测评能够节省时间和提升效率的软件工具并分享使用与学习的过程和感受,任何情况下用户都需遵守所使用软件资源的相关协议。与《用haporxy端口转发给kvm虚拟机,实现一个公网IP对多个kvm虚拟机的访问》有关的本站文章及资源仅供个人学习交流使用,相关资源请下载后24小时内删除,请勿用于其它用途,因此产生的任何问题由您自行承担。

猜你喜欢

  • 用haporxy端口转发给kvm虚拟机,实现一个公网IP对多个kvm虚拟机的访问

    HAProxy 是一款高性能的负载均衡器和代理服务器,可以用于端口转发和负载均衡。按照以下步骤操作: 安装 HAProxy: yum install haproxy 编辑 /etc/haproxy/h...

    2023-04-20 16:34:24 915
  • 简单三步实现Linux下mysql数据库定时备份

    Linux下实现mysql数据库定时备份,只需要掌握这简单的三步即可。 1、你必须登录数据库创建一个用于备份的帐号密码,可以给大权限也可以细化。 #创建用户和密码 CREATE USER 'back...

    2023-04-25 00:28:17 692
  • 使用acme.sh实现服务器ssl证书自动签发续签

    使用acme.sh实现服务器ssl证书自动签发续签

    工具介绍 acme.sh是一个实现从letsencrypt 自动签发证书,自动更新续签证书的脚本。 大致了解流程之后,使用还是相对简单的。 (1)工具自己生成必要的ssl申请文件,无需干预 (2)设...

    2024-05-24 23:26:39 649
  • 基于文件的php跨机房session同步方案

    场景: 公司网站接入CDN, CDN有两个回源后端做负载均衡以及故障转移,经过测试,CDN的回源是按权重比例轮询的。 要解决用户session状态在不同后端回源时不丢失,造成重复登录。 解决方案: s...

    2023-04-25 12:12:44 511
  • 源格式转换 txt转m3u 在线工具及源码

    源格式转换 txt转m3u 在线工具及源码

    一般txt转m3u指的是不同播放器的源格式转换,而txt和m3u是两种流行的格式。 一般txt格式如下: 节目名称,节目URL 一般m3u格式如下: EXTINF:-1,节目名称 节目URL 有些节...

    2024-03-07 01:21:46 2459
  • mysql运维日常命令大全

    学习不仅需要投入时间和成本,更重要的是通过大量实践来达到精通的境界。在日常工作和学习中,我们需要掌握的技能繁多,因此,首先应该掌握常用技能,再选择一个感兴趣的领域进行深入学习,从而在保证时间效益的同时...

    2023-04-24 23:50:17 597
  • 华为安卓手机访问电脑共享文件,无需安装三方APP

    华为安卓手机访问电脑共享文件,无需安装三方APP

    在电脑上下载了不少电影,以前想在手机看的方法是 1、USB拷贝到手机或用微信文件助手转到手机 2、搭建内网流媒体服务器,把电影放到内网服务器上,通过浏览器访问内网 一直没有买NAS,那玩意贵,以前也...

    2023-07-09 21:38:24 1802
  • 让linux的history记录时间 ip 用户等

    修改一下,使这个日志能记录 时间 ip 用户等。 vim /etc/profile 追加 USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed...

    2017-12-07 14:37:31 2479