Haproxy实现web的页面的动静分离

Haproxy实现web的页面的动静分离,第1张

一、Haproxy概述;

概述:Haproxy是一个开源的高性能的反向代理或者说是负载均衡服务软件之一,由C语言编写而成,支持会话保持、七层处理、健康检查、故障修复后自动加载、动静分离。HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接;

Haproxy软件引入了frontend,backend的功能,frontend(acl规则匹配)可以运维管理人员根据任意>

通过kubeadmin安装K8S集群可以做到快速部署,但是如果需要调整K8S各个组件及服务的安全配置,高可用模式,最好通过二进制模式进行K8S的安装

生产环境K8S Master节点最好在3个节点以上,且配置不低于4核16g

生产环境:确保Master高可用,启用安全访问机制

PS:

服务器节点只是起名字,与是否为k8s-master或k8s-node无关,可根据需要增加或删减测试用例的数量,如多台master主机只部署k8s-master组件。多台node主机只部署k8s-node组件

master1 192168100100

node1 192168100101

node2 192168100102

注:本节中创建的证书为部署流程全过程证书,测试用例为openssl生成证书,cfssl生成证书需要参考cfssl生成k8s证书,并在对应配置文件的相关证书位置替换对应证书

配置文件中需要在[alt_names]设置Master服务的全部域名和IP地址,包括:

参数解析

配置文件详解:

分发配置文件

配置文件详解:

配置详解

分发配置文件

分发配置文件

在三个kube-apiserver的前段部署HAProxy和keepalived,使用VIP(虚拟IP地址)192168100200作为Master的唯一入口地址,供客户端访问

将HAProxy和keepalived均部署为至少有两个实例的高可用架构,以避免单点故障。

接下来在主机master(192168100100)和主机node1(192168100101)中部署

HAProxy负责将客户端请求转发到后端的3个kube-apiserver实例上,keepalived负责维护VIP的高可用

准备 HAProxy 的配置文件 haproxycfg

参数说明:

分发配置文件

在master(192168100100)和node1(192168100101)上使用docker部署HAProxy,并将配置文件挂载到容器的/usr/local/etc/haproxy下

访问192168100100:8888/stats,192168100101:8888/stats

keepalived用于维护VIP地址的高可用,同样在master和node1中部署

主节点配置文件

子节点配置文件

参数解析

主节点和子节点配置异同

健康检查脚本

keeplived需要持续监控HAProxy的运行状态,在某个节点运行不正常时转移到另外的节点上去

监控运行状态需要创建健康检查脚本,定期运行监控

脚本内容如下:

分发脚本

在master(192168100100)和node1(192168100101)上使用docker部署keeplived,并将配置文件挂载到容器的/container/service/keepalived/assets下,将脚本挂载到容器的/usr/bin下

检查ens33网卡是否存在keeplived VIP地址

检测keeplived是否进行转发

注:master集群已经配置完毕,后续需要在node中需要部署docker,kubelet,kube-proxy,且在加入k8s集群后,还需要部署CNI网络插件、DNS插件等

之前已经在master,node1,node2中部署了docker,接下来需要部署其他服务组件,本节部署kubelet组件

参数说明

参数说明

参数说明

当前显示所有node为NOT READY,需要部署完网络插件才可使用

为方便使用kubectl

先使用 docker 创建两个 php 网站。

可以看到同一个请求,访问到了不同的服务器。

可以观察到, 当一台web服务挂掉时, 自动访问到了另外一台。

haproxy 是通过健康监测来判断,服务是否可用

通过haproxy, 实现了集群部署, 可以通过添加服务器来增强网站的处理能力,

当其中一些服务器停止服务,并不会导致网站不可用,

但是, 如果 haproxy 停止服务,那网站就会无法访问了。

HAProxy自带监控页面,需要在HAProxy使用的配置文件haproxycfg中添加配置项进行开启,重启HAProxy服务后生效。

添加的配置大致如下:

浏览器地址栏输入 >

Nginx的优点是:

1、工作在网络的7层之上,可以针对>

以上就是关于Haproxy实现web的页面的动静分离全部的内容,包括:Haproxy实现web的页面的动静分离、负载均衡——LVS,HAProxy和Nginx对比分析、二进制安装K8S(基于1.19.16版本)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/10093790.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存