1、环境准备:

设备 IP地址 作用 系统版本
web1 10.0.0.18 Nginx-Web服务器 Rocky8.6
web2 10.0.0.28 Nginx-Web服务器 Rocky8.6
Haproxy 172.20.0.248、10.0.0.101 反向代理web+负载均衡 Ubuntu2004
DNS 172.20.0.247 DNS服务器 Ubuntu2004
client 172.20.0.43 测试 Rocky8.6

2、安装后端web服务器

 #web服务器(10.0.0.18、10.0.0.28):
 [root@rocky8 ~]#yum install -y nginx
 [root@rocky8 ~]#echo `hostname -I` > /usr/share/nginx/html/index.html

3、配置HAProxy

 [root@ubuntu2004 ~]#bash install_haproxy.sh        #脚本参见:https://blog.51cto.com/dayu/5795076
 [root@ubuntu2004 ~]#vim /usr/lib/systemd/system/haproxy.service
 ExecStartPre=/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -f /etc/haproxy/conf.d/ -c -q
 ExecStart=/usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -f /etc/haproxy/conf.d/  -p /var/lib/haproxy/haproxy.pid
 #证书制作
 [root@ubuntu2004 ~]#mkdir /etc/haproxy/certs
 [root@ubuntu2004 ~]#cd /etc/haproxy/certs
 [root@ubuntu2004 certs]#openssl genrsa -out www.wang.org.key 2048
 Generating RSA private key, 2048 bit long modulus (2 primes)
 .......................+++++
 .+++++
 e is 65537 (0x010001)
 [root@ubuntu2004 certs]#openssl req -x509 -newkey rsa:2048 -subj "/CN=www.wang.org" -keyout www.wang.org.key -nodes -days 3650 -out www.wang.org.crt
 Generating a RSA private key
 ........................+++++
 ......................................+++++
 writing new private key to 'www.wang.org.key'
 -----
 [root@ubuntu2004 certs]#cat www.wang.org.key www.wang.org.crt > www.wang.org.pem
 # 配置Https
 [root@ubuntu2004 ~]#vim /etc/haproxy/conf.d/ha_test.cfg
 frontend http_80
    bind 172.20.0.248:80
    bind 172.20.0.248:443 ssl crt /etc/haproxy/certs/www.wang.org.pem
    redirect scheme https if !{ ssl_fc }
    http-request set-header X-forwarded-Port %[dst_port]
    http-request add-header X-forwarded-proto https if { ssl_fc }
 ​
    mode http
    balance roundrobin
    log global
    option httplog
    use_backend servers
 ​
 backend servers
    mode http
    server web01 10.0.0.18:80 check inter 3000 fall 3 rise 3
    server web02 10.0.0.28:8008 check inter 3000 fall 3 rise 3
 ​

4、配置DNS

 [root@ubuntu2004 ~]#apt install bind9 bind9-utils
 ​
 [root@ubuntu2004 ~]#vim /etc/bind/named.conf.options
 // dnssec-validation auto;      #注释
 ​
 [root@ubuntu2004 ~]#cd /etc/bind/
 [root@ubuntu2004 bind]#vim named.conf.default-zones
 zone "wang.org" {
    type master;
    file "/etc/bind/wang.org.zone";
 };
 [root@ubuntu2004 bind]#cp -p db.local wang.org.zone
 $TTL    604800
 @   IN SOA admin admin.wang.org. (
                   2     ; Serial
              604800     ; Refresh
               86400     ; Retry
             2419200     ; Expire
              604800 )   ; Negative Cache TTL
 ;
 @   IN NS admin
 admin   IN A   172.20.0.247
 www     IN A   172.20.0.248
 [root@ubuntu2004 bind]#systemctl restart bind9.service
 [root@ubuntu2004 bind]#dig www.wang.org @127.0.0.1
 ......
 ;; ANSWER SECTION:
 www.wang.org. 604800 IN A 172.20.0.248
 ......
 ​

5、客户端测试

 [root@rocky8 ~]#vim /etc/resolv.conf
 nameserver 172.20.0.247
 [root@rocky8 ~]#curl -Lk www.wang.org
 10.0.0.28
 [root@rocky8 ~]#curl -Lk www.wang.org
 10.0.0.18
 [root@rocky8 ~]#curl -Lk www.wang.org
 10.0.0.28
 [root@rocky8 ~]#curl -Lk www.wang.org
 10.0.0.18
 ​

HAProxy反向代理实例的更多相关文章

  1. haproxy反向代理配置示例

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  2. Httpd Nginx Haproxy反向代理

    Apache反向代理 部署httpd反向代理 准备工作: 三台虚拟机Ip地址分配: linux-node1:192.168.1.5 (源码编译httpd,并且配置proxy用于代理后端的httpd服务 ...

  3. Nginx、haproxy反向代理设置

    Nginx反向代理配置: #user nobody; worker_processes ; events { worker_connections ; } http { include mime.ty ...

  4. linux之反向代理,反向代理实例,负载均衡实例

    目录 nginx反向代理 1. 概述 2. 反向代理服务器的工作原理 (1)作为内容服务器的替身 (2)作为内容服务器的负载均衡器 二. nginx反向代理实例 1.前期准备 2.代理服务器配置 3. ...

  5. 项目详解4—haproxy 反向代理负载均衡

    一.企业服务架构图及负载均衡的要求 1.场景说明 在企业生产环境中,每天会有很多的需求变更,比如增加服务器.新业务上线.url路由修改.域名配置等等,对于前端负载均衡设备来说,容易维护,复杂度低,是首 ...

  6. haproxy反向代理

    haproxy是个高性能的tcp和http的反向代理.它就是个代理.不像nginx还做web服务器 官网地址为www.haproxy.org nginx的优点和缺点 优点: 1.web服务器,应用比较 ...

  7. haproxy反向代理环境部署(http和https代理)

    操作背景:前方有一台haproxy代理机器(115.100.120.57/192.168.1.7),后方两台realserver机器(192.168.1.150.192.168.1.151,没有公网i ...

  8. Nginx配置实例-反向代理实例:根据访问的路径跳转到不同端口的服务中

    场景 Ubuntu Server 16.04 LTS上怎样安装下载安装Nginx并启动: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detai ...

  9. 记一次haproxy反向代理配置

    首先借用一下前辈的话,解释下反向代理是什么? 反向代理:以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客 ...

随机推荐

  1. java-servlet-EL表达式和java标签

    1      Servlet线程安全问题 1st.              为什么说servlet会有线程安全问题? 容器默认情况下,对于某个servlet,只会创建一个实例. 容器收到一个请求,就 ...

  2. flask-restful使用指南

    flask-restful是flask模块的一个扩展,能够快速构建restful风格的api.对于其他的扩展也有很高的兼容性. 安装flask_restful pip install flask_re ...

  3. ELK技术-Logstash

    1.背景 1.1 简介 Logstash 是一个功能强大的工具,可与各种部署集成. 它提供了大量插件,可帮助业务做解析,丰富,转换和缓冲来自各种来源的数据. Logstash 是一个数据流引擎 它是用 ...

  4. 字节跳动端智能工程链路 Pitaya 的架构设计

    Client AI 是字节跳动产研架构下属的端智能团队,负责端智能 AI 框架和平台的建设,也负责模型和算法的研发,为字节跳动开拓端上智能新场景.本文介绍的 Pitaya 是由字节跳动的 Client ...

  5. Sqoop 组件安装与配置

    下载和解压 Sqoop Sqoop相关发行版本可以通过官网 https://mirror-hk.koddos.net/apache/sqoop/ 来获取 安装 Sqoop组件需要与 Hadoop环境适 ...

  6. 总在用户态调试 C# 程序,终还是搭了一个内核态环境

    一:背景 一直在用 WinDbg 调试用户态程序,并没有用它调试过 内核态,毕竟不是做驱动开发,也没有在分析 dump 中需要接触用内核态的需求,但未知的事情总觉得很酷,加上最近在看 <深入解析 ...

  7. dp-背包模型

    一:01背包问题模型 1 题目: 有一个箱子容量为 V,同时有 n 个物品,每个物品有一个体积(正整数). 要求 n 个物品中,任取若干个装入箱内,使箱子的剩余空间为最小. 输入格式 第一行是一个整数 ...

  8. ORM增删改查并发性能测试2

    前言 上一篇<ORM增删改查并发性能测试>出现了点小失误,有的输出SQL日志的代码没有禁用,数据库连接字符串可能有问题.统一环境,统一代码后,重新写一篇. 这次重点是并发性能测试,真不是为 ...

  9. jenkins流水线部署springboot应用到k8s集群(k3s+jenkins+gitee+maven+docker)(2)

    前言:上篇已介绍了jenkins在k3s环境部署,本篇继续上篇讲述流水线构建部署流程 1.从gitlab上拉取代码步骤 在jenkins中,新建一个凭证:Manage Jenkins -> Ma ...

  10. Chrome 浏览器缓存的问题

    浏览器缓存的问题 Chrome 在浏览器中设置: 1 Ctrl + Shift + Delete 2 Ctrl + F5 强制刷新 3 F12 打开控制台 ---> Network ---> ...