Bind+Nginx实现负载均衡 推荐

本文涉及的产品
网络型负载均衡 NLB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
全局流量管理 GTM,标准版 1个月
简介: Nginx实现负载均衡1 基础环境 1.1 服务器列表1.2 DHCP分配内外地址1.3 端口转发策略1.4 初始化信息主机名称内外IP系统实现功能Upstream172.

Nginx实现负载均衡

1 基础环境

1.1 服务器列表

wKioL1ixh6PiHSAWAADCl1Nv56I937.png

1.2 DHCP分配内外地址

wKioL1ixhxqyiT0WAACR82hhiBc002.png

1.3 端口转发策略

wKioL1ixh8vB82BuAABj_uqTe0s747.png

1.4 初始化信息

主机名称

内外IP

系统

实现功能

Upstream

172.16.16.10

Centos 6.5 64

DNSserver+Nginx实现负载均衡

Nginx-20

172.16.16.20

Centos 6.5 64

后端nginx提供web服务

Nginx-30

172.16.16.30

Centos 6.5 64

后端nginx提供web服务

云路由器公网IP:103.21.118.91

初始化保证关闭iptables或开放相关端口,selinux处于禁用状态,内外各主机可以相互正常通讯。

1.5 相关知识

nginx upstream目前支持5种方式的分配
1.5.1 轮询(默认)
    每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
1.5.2 weight
    指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
1.5.3 ip_hash
    每个请求按访问iphash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。 
1.5.4 fair(第三方)
    按后端服务器的响应时间来分配请求,响应时间短的优先分配。 
1.5.5 url_hash(第三方)

    按访问urlhash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。

2 配置DNS

2.1 安装软件包

这里只须安装最基本的bindbind-libsbind-utils三个组件即可

yum -y install bind bind-libs bind-utils

安装完成后启动服务

service named start

2.2 修改配置文件

named.conf主配置文件

vim  /etc/named.conf

wKiom1ixiDDD_4_VAAKymRaWIFQ600.png

wKioL1ixiGOxQE93AADq4Vj1TLY359.png

区域配置文件在/var/named 目录下

wKiom1ixiIbA0fp0AAMOY7L8xyg257.png

主机IP

域名

172.16.16.10

www.xuel.com

172.16.16.20

www20.xuel.com

172.16.16.20

www30.xuel.com

正向区域配置文件

wKiom1ixiQzjb5czAAFFoDkDjMc266.png

方向区域配置文件

 wKioL1ixiRrBRLkKAAFfYujtnF4824.png

更改三台主机DNS172.16.16.10

 wKioL1ixiSnRN0C3AADTM8tqoTk595.png

重启dns服务重写加载配置文件

wKiom1ixiTaRZhiiAACAggQAtD4165.png

测试ping域名是否解析到对于的IP地址

wKioL1ixiY-jd0zCAAWhwdVKATc991.png

使用nslookup测试反向解析是否成功

 wKiom1ixiaHjuHNJAAISiOG4xeU397.png

3 Nginx的安装与负载均衡的配置

3.1 安装Nginx

安装开发组环境工具与相关软件包

yum install -y pcre-devel openssl-devel
yum groupinstall "Development tools"
wget  http://nginx.org/download/nginx-1.11.2.tar.gz
tar zxvf nginx-1.11.2.tar.gz
cd nginx-1.11.2
./configure  --prefix=/usr   --sbin-path=/usr/sbin/nginx   --conf-path=/etc/nginx/nginx.conf   --error-log-path=/var/log/nginx/error.log   --http-log-path=/var/log/nginx/access.log   --pid-path=/var/run/nginx/nginx.pid
make && make install

Nginx前端负载均衡的页面

wKioL1ixij2htgJKAABvqwa3r4c577.png

Web20的页面

wKioL1ixik7w_-WgAABlZuWJcKE868.png

Web30的页面

wKiom1ixilvgdfhfAAByEYl9Sns734.png

Linux服务器测试页面可以正常访问

wKiom1iximiDpVOaAAFA0XOee7c543.png

3.2 配置nginx负载均衡

核心配置如下

wKioL1ixiuHjSOF5AAICl0C60pA271.png

在本实验内我们定义的upstream xuel.com

后端两天web服务器nginx核心配置如下

wKioL1ixiv_j5HwIAADW6c6qXOA247.png

测试访问云路由其公网IP,不断刷新,后端的web20web30页面依次出现

wKiom1ixiyOAt3ypAAFptKfofXc254.png

wKiom1ixizjRhlZ1AAFJArfatMA419.png

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
2月前
|
负载均衡 算法 搜索推荐
Nginx 常用的负载均衡算法
【10月更文挑战第17天】在实际应用中,我们需要根据具体的情况来选择合适的负载均衡算法。同时,还可以结合其他的优化措施,如服务器健康检查、动态调整权重等,来进一步提高负载均衡的效果和系统的稳定性。
123 59
|
2月前
|
负载均衡 应用服务中间件 Linux
nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件,很全
这篇博客文章详细介绍了Nginx的下载、安装、配置以及使用,包括正向代理、反向代理、负载均衡、动静分离等高级功能,并通过具体实例讲解了如何进行配置。
165 4
nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件,很全
|
1月前
|
负载均衡 算法 应用服务中间件
Nginx 常用的负载均衡算法
【10月更文挑战第22天】不同的负载均衡算法各有特点和适用场景。在实际应用中,需要根据具体的业务需求、服务器性能和网络环境等因素来选择合适的算法。
40 3
|
2月前
|
负载均衡 监控 应用服务中间件
除了 Nginx,还有以下一些常见的负载均衡工具
【10月更文挑战第17天】这些负载均衡工具各有特点和优势,在不同的应用场景中发挥着重要作用。选择合适的负载均衡工具需要综合考虑性能、功能、稳定性、成本等因素。
|
2月前
|
负载均衡 应用服务中间件 nginx
Nginx的6大负载均衡策略及权重轮询手写配置
【10月更文挑战第9天】 Nginx是一款高性能的HTTP服务器和反向代理服务器,它在处理大量并发请求时表现出色。Nginx的负载均衡功能可以将请求分发到多个服务器,提高网站的吞吐量和可靠性。以下是Nginx支持的6大负载均衡策略:
169 7
|
2月前
|
负载均衡 算法 Java
腾讯面试:说说6大Nginx负载均衡?手写一下权重轮询策略?
尼恩,一位资深架构师,分享了关于负载均衡及其策略的深入解析,特别是基于权重的负载均衡策略。文章不仅介绍了Nginx的五大负载均衡策略,如轮询、加权轮询、IP哈希、最少连接数等,还提供了手写加权轮询算法的Java实现示例。通过这些内容,尼恩帮助读者系统化理解负载均衡技术,提升面试竞争力,实现技术上的“肌肉展示”。此外,他还提供了丰富的技术资料和面试指导,助力求职者在大厂面试中脱颖而出。
腾讯面试:说说6大Nginx负载均衡?手写一下权重轮询策略?
|
2月前
|
缓存 负载均衡 算法
nginx学习:配置文件详解,负载均衡三种算法学习,上接nginx实操篇
Nginx 是一款高性能的 HTTP 和反向代理服务器,也是一个通用的 TCP/UDP 代理服务器,以及一个邮件代理服务器和通用的 HTTP 缓存服务器。
78 0
nginx学习:配置文件详解,负载均衡三种算法学习,上接nginx实操篇
|
2月前
|
开发框架 负载均衡 前端开发
Nginx负载均衡
Nginx负载均衡
|
2月前
|
负载均衡 Java 应用服务中间件
Nginx负载均衡配置
Nginx负载均衡配置
|
2月前
|
负载均衡 算法 Java
java中nginx负载均衡配置
java中nginx负载均衡配置
46 0