本文主要是介绍828华为云征文|基于华为云Flexus X实例搭建Nginx集群负载均衡,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
前言
一、Flexus云服务器X介绍
1.1 Flexus云服务器X实例简介
1.2 Flexus X实例购买
1.3 登录服务器
三、Springboot集群服务
3.1 部署9901节点服务
3.2 部署9902节点服务
四、Nginx负载均衡配置
五、集群负载调用测试
5.1 负载调用9901端口
5.2 负载调用9901端口
总结
前言
华为云Flexus X实例凭借其高性能、灵活性和易管理性,成为了众多企业的首选。本文将带领大家深入了解如何在华为云Flexus X实例上部署后端Spring Boot工程的集群服务。通过实际操作,部署并验证9901和9902节点的服务,确保集群的高可用性和负载均衡能力。
一、Flexus云服务器X介绍
1.1 Flexus云服务器X实例简介
Flexus云服务器X是华为云推出的一款高性能、高可用性的云服务器,它采用了最新的处理器技术,支持多种操作系统和应用程序,具备灵活的资源配置和强大的扩展能力。无论是Web应用、数据库服务还是大数据处理,Flexus云服务器X都能为您提供稳定、高效的运行环境。
1.2 Flexus X实例购买
本文实践前,开始前需要在华为云官网购买Flexus X实例,可以根据实际需求选择合适的配置,如CPU、内存、存储和网络带宽等。
购买成功后,再控制台,就可以看到刚刚购买的Flexus X实例服务器,如下已购买4核12g的实例。
1.3 登录服务器
重置密码之后,就可以使用刚刚的密码登录到Flexus云服务器X实例,可以使用xShell等SSH客户端工具登录服务器或者选择使用自带的cloudshell。
接下来就可以登录到Flexus云服务器X实例中,进入终端之后,会提示 Welcome to Huawei Cloud Service,说明成功登录。
三、Springboot集群服务
在上一篇文章Flexus X实例部署后端Springboot工程中,已经详细讲解了如何在华为云Flexus X实例上部署后端Spring Boot工程了,然而,那篇文章主要关注的是单实例部署和调用。为了实现高可用性和负载均衡,在实际开发中需要将服务部署到多个实例上,本文就利用Flexus云服务器X实例实例部署验证Springboot集群,以体现Flexus云服务器X实例性能强大。
3.1 部署9901节点服务
在集群服务部署完成后,需要验证9901节点的服务是否正确部署。为此,可以通过直接调用接口来进行测试。
首先,启动9901端口的服务,使用nohup命令,并且指定端口启动,这里需要注意的时候,由于pring Boot应用程序的端口参数应该是--server.port
而不是--serverport,可以参考springboot配置文件。
nohup java -jar /mydata/springboot/springboot-activity.jar --server.port=9901 >/mydata/springboot/log/activity.log &
启动成功查看9901工程日志,工程成功监听9901端口
同时也可以使用浏览器请求接口是否能正确访问。
3.2 部署9902节点服务
接下来,部署9902节点的服务。同样地,启动9902端口的服务:
nohup java -jar /mydata/springboot/springboot-activity.jar --server.port=9902 >/mydata/springboot/log/activity_9902.log &
同样启动成功查看9902工程日志,工程成功监听9902端口
以上说明我们的后端集群部署完成了。
四、Nginx负载均衡配置
关于Flexus云服务器X实例nginx安装配置,可以参考这篇文章:
Flexus X实例部署后端Springboot工程
在已经安装好Nginx的Flexus云服务器X中,需要修改配置文件。默认Nginx的配置文件位于/usr/local/nginx/conf
目录下。vi命令进行编辑操作,主要是配置两个上游服务器9902和9901,浏览器只要访问nginx的/api 接口,就会自动转发到对应的上游服务器。完整配置文件如下:
events {worker_connections 1024;
}http {include mime.types;default_type application/octet-stream;sendfile on;#tcp_nopush on;#keepalive_timeout 0;keepalive_timeout 65;# 配置上游服务器,负载均衡upstream mynginx {server 127.0.0.1:9901;server 127.0.0.1:9902;}#gzip on;server {listen 80;server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;location / {root html;index index.html index.htm;}location /api {# proxy_pass mynginx;proxy_pass http://mynginx/;}error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}}
}
这样配置后,当浏览器访问Nginx的/api
接口时,请求会自动转发到对应的上游服务器。
五、集群负载调用测试
上述已经完成集群部署和nginx负载均衡配置,为了验证最终负载均衡的效果,进行集群负载调用测试。无需指定端口调用,而是通过Nginx请求转发来实现负载均衡,在浏览器请求下面地址。
http://ip/api/red-package/rob?redPackageKey=657ba58d316f48b18479aa221583fe7c&userId=77
5.1 负载调用9901端口
第一次调用服务接口时,通过Nginx转发,发现最终调用的是9901端口的服务,只有9901的日志有输出。
5.2 负载调用9901端口
再次调用服务接口时,这次只有9901端口的日志有输出,说明请求已经切换到了9901端口的服务。
通过以上测试,可以确认已经成功利用Flexus X实例实现了集群Nginx负载均衡调用。这种方式不仅能够减轻单体服务的压力,还能让两个服务轮流休息,从而保证后端服务的稳定运行。
总结
在本文中,主要详细探讨了如何在华为云Flexus X实例上部署后端Spring Boot工程的集群服务。通过分别部署9901和9902节点的服务,并验证它们的正确性,充分展示了华为云Flexus X实例在实现集群高可用性和负载均衡方面的强大能力。
🎉华为云828 B2B企业节盛大启幕!Flexus X实例限时特惠,错过等一年!🎁
对于那些对算力性能有着极高要求,同时希望自建MySQL、Redis、Ngin下性能更上一层楼的企业和个人,Flexus X实例的这次特惠活动绝对不容错过。赶快把握机会,让业务更上一层楼!
这篇关于828华为云征文|基于华为云Flexus X实例搭建Nginx集群负载均衡的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!