HAProxy反向代理实例
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反向代理实例的更多相关文章
- haproxy反向代理配置示例
*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...
- Httpd Nginx Haproxy反向代理
Apache反向代理 部署httpd反向代理 准备工作: 三台虚拟机Ip地址分配: linux-node1:192.168.1.5 (源码编译httpd,并且配置proxy用于代理后端的httpd服务 ...
- Nginx、haproxy反向代理设置
Nginx反向代理配置: #user nobody; worker_processes ; events { worker_connections ; } http { include mime.ty ...
- linux之反向代理,反向代理实例,负载均衡实例
目录 nginx反向代理 1. 概述 2. 反向代理服务器的工作原理 (1)作为内容服务器的替身 (2)作为内容服务器的负载均衡器 二. nginx反向代理实例 1.前期准备 2.代理服务器配置 3. ...
- 项目详解4—haproxy 反向代理负载均衡
一.企业服务架构图及负载均衡的要求 1.场景说明 在企业生产环境中,每天会有很多的需求变更,比如增加服务器.新业务上线.url路由修改.域名配置等等,对于前端负载均衡设备来说,容易维护,复杂度低,是首 ...
- haproxy反向代理
haproxy是个高性能的tcp和http的反向代理.它就是个代理.不像nginx还做web服务器 官网地址为www.haproxy.org nginx的优点和缺点 优点: 1.web服务器,应用比较 ...
- haproxy反向代理环境部署(http和https代理)
操作背景:前方有一台haproxy代理机器(115.100.120.57/192.168.1.7),后方两台realserver机器(192.168.1.150.192.168.1.151,没有公网i ...
- Nginx配置实例-反向代理实例:根据访问的路径跳转到不同端口的服务中
场景 Ubuntu Server 16.04 LTS上怎样安装下载安装Nginx并启动: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detai ...
- 记一次haproxy反向代理配置
首先借用一下前辈的话,解释下反向代理是什么? 反向代理:以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客 ...
随机推荐
- C#基础_类与对象的关系
类不占内存,对象占内存
- 【SWIFT】从零开始的SWIFT语言学习笔记-2:简单值、数组与字典
1.0.3 简单值.数组与字典 知识点: 使用var创建变量 var myVariable = 65 myVariable = myVariable + 1 使用let创建常量 let myConst ...
- Flume 组件安装配置
下载和解压 Flume 实验环境可能需要回至第四,五,六章(hadoop和hive),否则后面传输数据可能报错(猜测)! 可 以 从 官 网 下 载 Flume 组 件 安 装 包 , 下 载 地 址 ...
- 虚拟机里做LUN映射(RHEL系统和centos系统皆可)(Linux版)
紧接着Windows的LUN映射之后 参考 (https://www.cnblogs.com/zhengyan6/p/16121268.html) 先删除部分配置(没有做之前的LUN映射则不用) 进网 ...
- 十一章 Kubernetes的服务发现插件--coredns
1.前言 简单来说,服务发现就是服务(应用)之间相互定位的过程: 服务发现并非云计算时代独有的,传统的单体架构时代也会用到,以下应用场景更加需要服务发现: 服务(应用)的动态性强: 服务(应用)更新发 ...
- Currtid 函数与性能问题
对于Oracle ,一条tuple 的 rowid正常是不会变化的(引发row movement的操作除外,如:跨分区迁移update,表收缩),因此,应用设计上可以方便的使用rowid,加快访问速度 ...
- 重新扫描磁盘.bat
工作需要,需要常常扫描磁盘, 以前是先调用磁盘管理器,然后使用alt+a,再按r,完成对磁盘的扫描 但是速度慢效率低 昨天帮朋友装台式电脑系统的时候,他说要给磁盘分区, 发现磁盘内有卷被占用,无法删除 ...
- 配置联想IMM使用AD账户登录
IMM是联想(IBM)服务器的管理卡Integrated Management Module的缩写,现在是第二个版本.通过它可以远程管理服务器,就像你在服务器面前操作一样.可以修改BIOS设置,可以重 ...
- kvm上已安装的虚拟机修改为桥接网络
kvm上安装的虚拟机默认使用的nat网络格式,现在已经调整kvm主机为桥接方式了,但是已经安装的虚拟机还是nat方式,所以需要修改一下 让KVM虚拟主机使用桥接网络br0 修改虚拟机的配置文件,默认存 ...
- 天翼云上新增IP备案具体操作步骤
0.点击右上角的备案,进入到备案中心 1.已备案信息管理 点击左侧的已备案信息管理,右侧出现的页面中找到已备案网站信息,网站负责人后面的操作里有5个图标,点击第三个(变更接入),提交订单,进入到下一步 ...