基于lvs+keepalived+nginx的web高性能集群项目

这篇具有很好参考价值的文章主要介绍了基于lvs+keepalived+nginx的web高性能集群项目。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

项目描述

模拟企业里的web项目需求,最终目的是构建一个高性能高可用的web集群系统。部署lvs负载均衡系统和keepalived高可用软件,后端使用nginx做web服务器,同时搭建内部的一套基于prometheus的监控系统。使用ansible实现整个集群系统的自动化运维工作。

项目环境

ceotos7 nginx1.25.3 node_exporter-1.4.0 keepalived 1.3.5
nfs4 prometheus-2.43.0 grafana-9.1.2

项目步骤

1、 构建项目架构图

基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx

2、安装部署6台虚拟机,做好网络初始化工作

静态配置6台虚拟机的ip地址:(注意:配置后,service network restart刷新网络服务)
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
关闭防火墙服务,selinux功能等
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx

3、在两台服务器上部署nginx web服务以及使用基于域名的虚拟主机功能,配置2个虚拟主机分别对应两个网站,安装vts模块,了解nginx负载和访问情况

1、到nginx官方网站上下载镜像,解压
curl -O https://nginx.org/download/nginx-1.25.3.tar.gz
tar xf nginx-1.25.3.tar.gz
2、编写nginx安装脚本
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
3、将脚本scp到web2机器上,编译安装
scp onekey_install_nginx_2023_summer.sh 192.168.196.163:/root
source onekey_install_nginx_2023_summer.sh
4、基于域名的虚拟主机,两个虚拟主机对应两个网站
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
5、了解nginx的负载和访问情况
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx

4、配置lvs(DR模式)+keepalived实现整个集群高可用和负载均衡

在两台LB负载均衡器上安装keepalived和ipvsadm
yum install keepalived ipvsadm -y

1、在2台负载均衡服务器上的keepalived里实现双vip配置

基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
2、查看vip效果
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
3、在DR调度器上配置负载均衡策略
在lb1和lb2上执行脚本
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
4、在后端的realserver上配置vip和arp毒化功能
执行脚本
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx

5、安装nfs服务器,共享网页目录

1、在网络综合服务器,web1,web2上安装nfs服务
yum install nfs-utils -y
在web1和web2上,不需要启动nfs服务,主要是使用nfs服务器共享的文件夹,需要挂载nfs文件系统

2、刷新服务,输出共享目录
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
3、新建共享目录/web和复制web1上的html目录过来
然后将web1上以前新建的2个网站的网页都scp到nfs的共享目录/web下

基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
4、在web1和web2都挂着nfs共享的目录到html目录下

基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
5、设置web1和web2开机自动挂着nfs共享目录
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx

6、安装ansible服务器,设置好主机清单,配置免密通道,方便批量自动化运维

1、在网络综合服务器上安装ansible自动化运维工具

基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx

2、在ansible服务器和其他的服务器之间建立免密通道(单向信任关系)
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
注意:ansible.cfg 是ansible的配置文件
hosts 里面定义主机清单
Roles 基于角色的playbook存放的文件夹
中括号里的web是一个分组的名字,我们可以在这个分组里添加很多需要去管理的机器的ip地址。

3、在ansible服务器和其他的服务器之间建立免密通道(单向信任关系)
生成密钥对
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
4、上传公钥到其他服务器
例:web1

基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
5、测试免密通道是否成功
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
6、测试ansible服务器能否控制所有的服务器
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx

7、安装Prometheus服务,给每个集群里的节点服务器安装node_exporter,再安装 grafna出图展示监控效果

1、源码安装
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
2、修改解压后的压缩包名字
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
3、临时和永久修改PATH变量,添加prometheus的路径
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
4、把prometheus做成一个服务来进行管理,非常方便日后维护和使用
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
5、重新加载systemd相关的服务,识别Prometheus服务的配置文件,设置开机启动
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
6、访问Prometheus 的web server
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
7、安装exporter
将node-exporter传递到所有的服务器上的/root目录下
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
编写在其他机器上安装node_exporter的脚本
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
让systemd进程识别node_exporter服务
设置开机启动
启动node_exporter
在ansible服务器上执行安装node_exporter的脚本
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
在Prometheus服务器上添加被监控的服务器
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
在windows的浏览器访问http://192.168.196.159:9090/targets
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
8、安装grafana出图展示
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
因为这里在做项目的过程种已经导入grafana模板,所以直接进入dashboard界面展示视图效果
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx

8、部署堡垒机,设置防火墙,设置tcp wrapps,只允许堡垒机访问内部服务器并且发布内网的web服务器和堡垒机

1、Tcp wrappers 的配置(允许堡垒机ssh访问)
将web集群里的web1和web2,LB1和LB2上进行tcp wrappers的配置,只允许堡垒机ssh进来,拒绝其他的机器ssh过去
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
对web组的机器配置tcp wrappers防火墙
对lb组的机器配置tcp wrappers防火墙
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
测试是否生效,只允许堡垒机ssh过去
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
2、防火墙+路由器的配置
在防火墙服务器上编写脚本,实现snat和dnat功能,并且开启路由功能
永久开启路由功能
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
让内核读取配置文件,开启路由功能
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
编写脚本发布堡垒机
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
查看脚本的执行结果
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
9、进行SNAT和DNAT,堡垒机发布测试
测试SNAT功能

基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx

测试DNAT功能
到windows真实机器上测试
基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx

堡垒机测试

基于lvs+keepalived+nginx的web高性能集群项目,lvs,nginx文章来源地址https://www.toymoban.com/news/detail-830827.html

到了这里,关于基于lvs+keepalived+nginx的web高性能集群项目的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • OpenResty安装-(基于Nginx的高性能Web平台,可在Nginx端编码业务)

    首先你的Linux虚拟机必须联网 首先要安装OpenResty的依赖开发库,执行命令: 你可以在你的 CentOS 系统中添加 openresty 仓库,这样就可以便于未来安装或更新我们的软件包(通过 yum check-update 命令)。运行下面的命令就可以添加我们的仓库: 如果提示说命令不存在,则运行:

    2024年02月07日
    浏览(47)
  • 基于 k8s+docker 环境构建一个高可用、高性能的 web 集群。

    目录 项目架构图 项目描述 项目环境 环境准备 IP地址规划 关闭selinux和firewall 配置静态ip地址 修改主机名 升级系统(可做可不做) 添加hosts解析 项目步骤 一.使用ProcessOn设计了整个集群的架构,规划好服务器的IP地址,使用kubeadm安装k8s单master的集群环境(1个master+2个node节点

    2024年02月07日
    浏览(36)
  • Nginx:高性能的Web服务器与反向代理

    在现代互联网应用程序的开发和部署中,选择一个可靠、高性能的Web服务器是至关重要的。Nginx是一个备受推崇的选择,它以其卓越的性能和可靠性在开发者社区中享有盛誉。本文将介绍Nginx的概念、优势,以及如何使用Nginx作为Web服务器和反向代理。 Nginx(发音为“engine X”

    2024年02月19日
    浏览(32)
  • Nginx - ​一个高性能、灵活可靠的开源Web服务器

    Nginx是什么?   Nginx是一个 高性能的HTTP和反向代理web服务器 ,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。2011年6月1日,nginx 1.0.4发布。   特点是 占有

    2024年02月07日
    浏览(51)
  • linux系统下如何使用nginx作为高性能web服务器

    ✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN新星创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开

    2024年04月14日
    浏览(33)
  • 深入了解Nginx:高性能的开源Web服务器与反向代理

    Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,也可以作为负载均衡器和HTTP缓存服务器使用。它采用事件驱动、异步非阻塞的处理方式,能够处理大量并发连接和高流量负载,同时保持低内存消耗和高性能。在BSD-like 协议下发行。其特点是

    2024年02月11日
    浏览(36)
  • [AIGC] Nginx:一个高性能的 Web 服务器和反向代理

    Nginx(engine x)是一个高性能的 Web 服务器和反向代理,它由 Igor Sysoev 于 2002 年开发,并于 2004 年首次发布为开源软件。Nginx 是当今最受欢迎的 Web 服务器之一,它在互联网上被广泛使用,支持 millions 个网站和应用程序。 Nginx 是一个免费、开源、高性能的 Web 服务器和反向代理

    2024年02月20日
    浏览(36)
  • Nginx搭配负载均衡和动静分离:构建高性能Web应用的完美组合

    目录 前言 一、Nginx简介 1.Nginx是什么 2.Nginx的特点 3.Nginx在哪使用 4.如何使用Nginx 5.Nginx的优缺点 6.Nginx的应用场景 二、负载均衡和动静分离 1.负载均衡 2.动静分离 三、Nginx搭载负载均衡并提供前后端分离后台接口数据 1.Nginx安装 2.tomcat负载均衡 3.负载均衡后台项目发布 四、前

    2024年02月06日
    浏览(32)
  • Nginx 入门指南:从入门到放弃(不是!)从零开始掌握高性能 Web 服务器

    Nginx 可以构建高性能、可靠的 Web 服务器。本文将带你了解 Nginx 的基本概念、安装方法以及常见配置,让你快速上手并搭建自己的 Web 服务器。 随着互联网的发展,构建稳定、高性能的 Web 服务器成为了许多开发者的重要需求。而在众多的服务器软件中, Nginx 以其出色的性能

    2024年04月15日
    浏览(41)
  • Ceph入门到精通-大流量10GB/s LVS+OSPF 高性能架构

     LVS 和 LVS+keepalived 这两种架构在平时听得多了,最近才接触到另外一个架构LVS+OSPF。这个架构实际上是LVS+Keepalived 的升级版本,我们所知道LVS+Keepalived 架构是这样子的:        随着业务的扩展,我们可以对web服务器做水平扩展,以此来提高系统的处理能力。但是我们会发现

    2024年02月11日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包