由于目前现有网络的各个核心部分随着业务量的提高,访问量和数据流量的快速增长,其处理能力和计算强度也相应地增大,使得单一的服务器设备根本无法承担。在此情况下,如果扔掉现有设备去做大量的硬件升级,这样将造成现有资源的浪费,而且如果再面临下一次业务量的提升时,这又将导致再一次硬件升级的高额成本投入,甚至性能再卓越的设备也不能满足当前业务量增长的需求。
网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了上街免费建站欢迎大家使用!
而采用dnsceo的DNS负载均衡技术就能很好的为您解决这个问题,而且资金投入非常少。那如何使用dnsceo的负载均衡技术呢?
1.实现负载均衡需要有2台以上的服务器,我们假设有4台服务器,IP分别为
192.168.1.100 (电信)
192.168.1.101 (电信)
192.1.1.100 (联通)
192.1.1.101 (联通)
并且4台服务器都在为www提供服务。
假设域名为dnsceo点抗
2.首先登录dnsceo.COM进入到域名解析页面,分别添加两条主机名为WWW,
主机名 www
类型 A
解析组 电信
参数值 192.168.1.100
主机名 www
类型 A
解析组 电信
参数值 192.168.1.101
接着我们添加联通线路的解析记录。
主机名 www
类型 A
解析组 联通
参数值 192.1.1.100
主机名 www
类型 A
解析组 联通
参数值 192.1.1.101
3.解析记录添加完毕,接下来我们在负载均衡栏目里添加这4组IP,分别设置权重*,检测端口。
*权重:DNS轮询的时候,IP是将根据的权重参数,依次给出解析IP。
4.测试记录的工具可以使用WINDOWS下的NSLOOKUP
C:\Documents and Settings\Administratornslookup
Default Server: FJ-DNS.fz.fj点吸烟
Address: 218.85.157.99
set type=a
Server: FJ-DNS.fz.fj点吸烟
Address: 218.85.157.99
Non-authoritative answer:
Name:
Address: 192.168.1.100, 192.168.1.101,
如果是网通用户,可以得到下面的结果
C:\Documents and Settings\Administratornslookup
Default Server: FJ-DNS.fz.fj点吸烟
Address: 218.85.157.99
set type=a
Server: FJ-DNS.fz.fj点吸烟
Address: 218.85.157.99
Non-authoritative answer:
Name:
Address: 192.1.1.100,192.1.1.101
DNS轮询的时候,IP将根据设置的权重参数,依次给出解析IP。
参考: ,联系dnsceo801 qq:1191324307
负载均衡
先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可以解释N台服务器平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。那么负载均衡的前提就是要有多台服务器才能实现,也就是两台以上即可。
测试环境
由于没有服务器,所以本次测试直接host指定域名,然后在VMware里安装了三台CentOS。
测试域名 :a点抗
A服务器IP :192.168.5.149 (主)
B服务器IP :192.168.5.27
C服务器IP :192.168.5.126
部署思路
A服务器做为主服务器,域名直接解析到A服务器(192.168.5.149)上,由A服务器负载均衡到B服务器(192.168.5.27)与C服务器(192.168.5.126)上。
域名解析
由于不是真实环境,域名就随便使用一个a点抗 用作测试,所以a点抗 的解析只能在hosts文件设置。
打开:C:WindowsSystem32driversetchosts
在末尾添加
192.168.5.149 a点抗
保存退出,然后启动命令模式ping下看看是否已设置成功
从截图上看已成功将a点抗 解析到192.168.5.149IP
A服务器nginx.conf设置
打开nginx.conf,文件位置在nginx安装目录的conf目录下。
在http段加入以下代码
upstream a点抗 {
server 192.168.5.126:80;
server 192.168.5.27:80;
}
server{
listen 80;
server_name a点抗 ;
location / {
proxy_pass ;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
保存重启nginx
B、C服务器nginx.conf设置
打开nginx.confi,在http段加入以下代码
server{
listen 80;
server_name a点抗 ;
index index.html;
root /data0/htdocs/www;
}
保存重启nginx
测试
当访问a点抗 的时候,为了区分是转向哪台服务器处理我分别在B、C服务器下写一个不同内容的index.html文件,以作区分。
打开浏览器访问a点抗 结果,刷新会发现所有的请求均分别被主服务器(192.168.5.149)分配到B服务器(192.168.5.27)与C服务器(192.168.5.126)上,实现了负载均衡效果。
B服务器处理页面
C服务器处理页面
假如其中一台服务器宕机会怎样?
当某台服务器宕机了,是否会影响访问呢?
我们先来看看实例,根据以上例子,假设C服务器192.168.5.126这台机子宕机了(由于无法模拟宕机,所以我就把C服务器关机)然后再来访问看看。
访问结果:
我们发现,虽然C服务器(192.168.5.126)宕机了,但不影响网站访问。这样,就不会担心在负载均衡模式下因为某台机子宕机而拖累整个站点了。
如果b点抗 也要设置负载均衡怎么办?
很简单,跟a点抗 设置一样。如下:
假设b点抗 的主服务器IP是192.168.5.149,负载均衡到192.168.5.150和192.168.5.151机器上
现将域名b点抗 解析到192.168.5.149IP上。
在主服务器(192.168.5.149)的nginx.conf加入以下代码:
upstream b点抗 {
server 192.168.5.150:80;
server 192.168.5.151:80;
}
server{
listen 80;
server_name b点抗 ;
location / {
proxy_pass ;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
保存重启nginx
在192.168.5.150与192.168.5.151机器上设置nginx,打开nginx.conf在末尾添加以下代码:
server{
listen 80;
server_name b点抗 ;
index index.html;
root /data0/htdocs/www;
}
保存重启nginx
完成以后步骤后即可实现b点抗 的负载均衡配置。
主服务器不能提供服务吗?
以上例子中,我们都是应用到了主服务器负载均衡到其它服务器上,那么主服务器本身能不能也加在服务器列表中,这样就不会白白浪费拿一台服务器纯当做转发功能,而是也参与到提供服务中来。
如以上案例三台服务器:
A服务器IP :192.168.5.149 (主)
B服务器IP :192.168.5.27
C服务器IP :192.168.5.126
我们把域名解析到A服务器,然后由A服务器转发到B服务器与C服务器,那么A服务器只做一个转发功能,现在我们让A服务器也提供站点服务。
我们先来分析一下,如果添加主服务器到upstream中,那么可能会有以下两种情况发生:
1、主服务器转发到了其它IP上,其它IP服务器正常处理;
2、主服务器转发到了自己IP上,然后又进到主服务器分配IP那里,假如一直分配到本机,则会造成一个死循环。
怎么解决这个问题呢?因为80端口已经用来监听负载均衡的处理,那么本服务器上就不能再使用80端口来处理a点抗 的访问请求,得用一个新的。于是我们把主服务器的nginx.conf加入以下一段代码:
server{
listen 8080;
server_name a点抗 ;
index index.html;
root /data0/htdocs/www;
}
重启nginx,在浏览器输入a点抗 :8080试试看能不能访问。结果可以正常访问
既然能正常访问,那么我们就可以把主服务器添加到upstream中,但是端口要改一下,如下代码:
upstream a点抗 {
server 192.168.5.126:80;
server 192.168.5.27:80;
server 127.0.0.1:8080;
}
由于这里可以添加主服务器IP192.168.5.149或者127.0.0.1均可以,都表示访问自己。
重启Nginx,然后再来访问a点抗 看看会不会分配到主服务器上。
192.168.1.100 (电信)
192.168.1.101 (电信)
192.168.1.102 (电信)
10.10.10.100 (网通)
10.10.10.101 (网通)
并且5台服务器都在为www提供服务。
本例子再假设域名为qicaispace点抗
为电信用户实现负载均衡
根据前面的资料,电信一共有3台www服务器,分别是
192.168.1.100
192.168.1.101
192.168.1.102
首先登陆DNSPod的後台,添加一个qicaispace点抗 的域名。
然後在 管理域名记录 中添加一条记录
主机记录 www记录类型 A线路类型 电信
记录值 192.168.1.100点击增加接着,再分别添加两条记录
主机记录 www记录类型 A线路类型 电信
记录值 192.168.1.101
主机记录 www记录类型 A线路类型 电信
记录值 192.168.1.102
为网通用户实现负载均衡
电信用户的记录添加完毕後,接着添加网通的。
网通的添加方法跟电信的没太大分别
主机记录 www记录类型 A线路类型 网通
记录值 10.10.10.100
主机记录 www记录类型 A线路类型 网通至此,所有记录添加完毕