分类: 服务器

服务器

服务器ping ip突然无法ping通

服务器ping ip 突然无法ping通 其他服务器都可以ping通 请大神帮忙解决是需要再设置什么吗

qq_24684521 MLieV 2年前
首先看是不是本地机器出问题了,是否能ping通其他机器

shijp2009 shijp2009 3年前
如果是虚拟机,那么试试ssh是否可以连上,如果ssh也连不上,那就是服务器宕机了,服务器宕机有可能是虚拟机要用的资源不够了。

qq_38762881 qq_38762881 3年前
1.查看本地eth0是否有地址,例如DHCP或静态地址。
2.查看防火墙设置,可临时禁用测试一下。service iptables stop
3.ping一个网段的机子进行测试。

qq_35636920 qq_35636920 3年前
首先要检查本地是否能ping通,检查ip地址,再用另一台机器ping这台机器,排除因素后,再一一检查

w625349026 w625349026 3年前
先看网络连接 连接正常后查看 ip获取地址是否跟你ping的是不是一个网段,然后再看ping的pc是否开着能获取同网段地址

a461477412 kongcz 3年前
尝试关闭防火墙看看,看起来像是开着防火墙禁ping了

u010439370 嗳无虺 3年前
防火墙的问题吧 关闭试试

DBCai DBCai 3年前
从两个方面入手:
1、本地电脑:
a、确定本地是否可以ping 别人,比如 ping www.baidu.com ,不行基本都是网络问题

2、远程服务器
a、设置是否允许被 ping
①先copy 一份 如下文件 /proc/sys/net/ipv4/icmp_echo_ignore_all ,方便后期的还原
②echo “0” >/proc/sys/net/ipv4/icmp_echo_ignore_all

其中, 2.a.② 步骤中,0表示可以被ping,1表示不可以。*后,如果怀疑自己的操作,可以使用copy的文件来还原

sunhaoran1115 sunhaoran1115 3年前
看一下本地的网络配置

weixin_42920757 小小菜鸟2020 3年前
1、先看一下本地的网络配置,确认一下没有问题
2、然后在本地ping本地是否正常,ping 127.0.0.1 不是localhost
3、然后ping其他机器是否正常
4、如果上面都没有问题,就用其他机器ping这台机器试试

husong_ 明天的地平线 3年前
可以看一下是否开启的防火墙

Open_Li Open_Li 3年前
问题描述详细点,只是一个无法ping通,本地能否ping通,外网其它机器能否ping通

qq_34946428 qq_34946428 3年前
问题描述的不是很详细,可能性很多。如果确定不是针对性的限制,那就应该是发起ping的这台机器的问题,先用重启大法试试吧。

云服务器上Wamp搭建网站

说明:想要在云服务器搭建网站,且需要被外网访问浏览的苦逼程序员可以参考本文。前提是你已经购买好了服务器以及公网IP。

近一个月买了3次服务器,使用wamp搭建了3次网站了。本以为*后一次会轻车熟路,但是东搞西搞还是花了1个多小时。看来还是要把一些关键的东西记录下来,不然隔久了真的会忘记。

总结下出现这3次配置中遇到的问题:
1,新的服务器上安装wamp一般会报错
报错系统缺少msvcr110.dll 文件。解决办法:安装VS开发组建后重新安装即可,下载地址:http://pan.baidu.com/s/1hsCXR28 或者 http://pan.baidu.com/s/1miQwQZe

2,wamp配置文件httpd.conf外网访问设置问题
wamp配置文件httpd.conf要设置能让外网访问,否则别的设备无法访问你的网站。设置方法网上一大堆,具体的设置可能与版本也有关系,我使用到的是2.2版本的wamp,屏蔽下面两行代码即可。
%title插图%num

关于wamp的配置只用配置这两行就能被外网访问了,不知道怎么网上还流传了各种其他的配置方法(在配置方法,配置这两行就能确保你的网站可以被外网访问)

3,服务器防火墙80端口问题
为了这件事折腾了两次,总结就是新购买的服务器需要打开防火墙的80端口。怎么打开呢?
a,问客服,至少我两次都是这样解决的。。。
b,按照图中说明狂点下去

%title插图%num

c,有些服务器不能在本地修改防火墙的端口(比如说UCloud),但是他们的网页控制台中是提供了修改接口的。

4,关于www目录下设置项目首选项的问题
毕竟在wamp中所有工程都放在www文件目录下,但是我们往往希望进入我们的域名首选项是某个特定的网站。那么如果设置呢?
同样在httpd.conf中修改DocumentRoot 的位置即可,比如默认位置是DocumentRoot “c:/wamp/www/”
改为
DocumentRoot “c:/wamp/www/xxxx”   xxxx 就是你指定的工程目录

希望能给刚刚接触网站搭建这块的朋友一些帮助

wamp搭建本地服务器

安装wamp

服务器配置文件的修改
• 路径:D:\wamp\bin\apache\apache2.4.9\conf\httpd.conf(根据安装目录自行修改)
• *个地方

AllowOverride none
Require all denied

修改为

<Directory “D:/wamp/bin/apache/apache2.4.9/cgi-bin”>
AllowOverride None
Options None
Require all granted

• 第二个地方

onlineoffline tag – don’t remove

Require local

修改为

onlineoffline tag – don’t remove

  1. Require local
  2. Require all granted

连接同一个wifi使得本机与其他设备在同一个局域网下

关闭本机防火墙

通过ipconfig查看本机的ipv4地址

连接了wifi的设备可以通过ip地址进行访问本地服务器了

设置WampServer让局域网内的人都能访问我的电脑上的本地网站

WampServer只允许本地访问,我们可以通过设置httpd.conf文件和httpd-Vhosts.conf文件,让局域网内的人都能访问自己本地电脑上的本地网站
注意:在改动这两个文件前,请先备份,否则万一改错,会导致wamp启动失败!!!!
这两个文件,你点击wamp小图标,选择打开,具体如图所示
%title插图%num

*步:打开httpd.conf文件

1.检查一下Listen服务器端口,默认监听端口为80,不是就改成80

%title插图%num

2.配置服务器根目录权限

<Directory “D:/www/”>
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Allow from all
Require all granted
</Directory>

注意“D:/www/”为你网站根目录。一般情况下都是c:/www/,我的是安装在D盘上。
Require all granted 是允许别人访问你的网站。
这段代码你也可以直接复制粘贴,改一下根目录,也是可以的。
搜索关键字:onlineoffline tag – don’t remove,将 Require local 修改成 Require all granted;

3.配置虚拟主机

<VirtualHost 10.10.12.120>
ServerName 10.10.12.120:80
DocumentRoot “D:/wamp/www”
</VirtualHost>

注意:VirtualHost 与ServerName一致。这个ip是我本机的,你要改成你电脑的ip,DocumentRoot 为你网站的存放目录,你要发布的网页就在这个目录下,注意要在服务器根目录下,否则要另外配置权限。

IP的查询的方式:点击运行 —->输入cmd–>输入ipconfig–>ipv4对应的就是你的IP地址

第二步:打开httpd-Vhosts.conf文件
%title插图%num

蓝色地方要修改,与上面httpd.conf文件一样
红色地方是我们要增添的,Require local 修改成 Require all granted(这个地方是大多数博客没有写的)

**

两个文件修改好后,重启服务器
**

第三步:增添一个80端口
注意这一步是必需的,如果没有的话,别的电脑还是访问不到的,本人亲测过!!端口的建立可以参考我的另一篇博客中的第二步(过程大致一样):https://blog.csdn.net/qq_43453731/article/details/96287445
*后还有一点,访问你的电脑必需和你的电脑在同一个局域网下(连接同一个WiFi)

python搭建本地服务器

为什么要搭建服务器?
在进行JavaScript开发或一些可视化工作的时候,搭建服务器是必不可少的。作为穷学生党,不可能去购置一台价格昂贵的服务器,只能选择阿里云或其他平台的云服务器,但是每月需要一定的费用。如果用的不多,也不需要云存储服务的话,可以搭建一个本地服务器。

如何搭建本地服务器
其实通过python可以轻松地搭建一个本地服务器,几行代码就能轻松地搞定了。

import SimpleHTTPServer;
import SocketServer;
PORT = 8000; #指定服务器端口号
Handler = SimpleHTTPServer.SimpleHTTPRequestHandler;
httpd = SocketServer.TCPServer((“”, PORT), Handler);
httpd.serve_forever();

将代码保存成py文件,直接运行后,文件所在的文件夹就成为本地服务器了,可以直接在浏览器中输入本机IP地址加端口号访问。
需要注意的是,这个程序需要在运行的情况下才能搭建本地服务器,也就是关闭程序窗口后也不能通过IP端口访问服务器。另外,若是有其他文件需要调用服务器的数据,文件编码格式和这个py文件的编码格式需要一致,所以推荐*好把html和py文件编码格式都设置为UTF-8格式。

ubuntu16.04阿里云ECS安装图形化界面

前提:阿里云ECS ubuntu16.04

时间:2019年11月

步骤简要说明:

阿里云 ECS服务器版本: ubuntu16.04 抢占式 64bit

step1: 安装图形化界面操作

step2: 阿里云服务器后台进入图形化界面

​ 远程连接密钥是多少,要记住 比如:437493

step3: 阿里云控制台进行远程连接,下载teamviewer

​ *好登录自己本地的teamviewer账号,并自己设置连接的密码

step4: 在自己电脑(win or linux)装上teamviewer进行远程ID连接

​ 一般是输入密码即可匹配

step5: 关于屏幕分辨率匹配问题,teamviewer连接后一共才那几个选项,慢慢试,暂未找到好的解决方案。

下面是亲测可用的流程


安装图形化界面操作

更新软件源

# apt-get update

安装图形化界面(该步骤大概需要花2分钟)

# apt-get install ubuntu-desktop

重启

reboot

如需使用其他用户登录,需要修改50-ubuntu.conf配置文件

# vi /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf

修改为

  1. [Seat:*]
  2. user-session=ubuntu
  3. greeter-show-manual-login=true
  4. allow-guest=false

然后重启

# reboot

%title插图%num

管理员控制台

进入阿里云-控制台-ECS-选择自己的ECS服务器-远程控制

此时会提示远程连接的验证码,只提示一次,务必记住

为确保万一,请设置自己的ECS的登录密码。

username:root password:请自行设置且记住

此时已经登录进图形化界面了,接下来就是下载teamviewer

打开火狐浏览器,搜索 teamviewer,选择download,下载指定版本

♥ ubuntu16.04 64bit 下载 ubuntu支持的版本 .deb x86 64位

♥ 下载完成,执行deb 进行 install即可

♥ 安装完毕,在software搜索teamviewer打开即可

打开teamviewer进行

? 首选登录自己teamviewer账号

? 在password旁边有个刷新按钮,点击选择 set personal password

这样会比较方便进行远程连接

本地teamviewer连接

*好可以在计算机和联系人这里添加远程计算机的连接方式

阿里云服务器Ubuntu安装图形化界面

此处以安装GNOME桌面环境为例,步骤如下。

通过ECS管理控制台的管理终端连接到ECS实例
依次执行如下命令,安装GNOME桌面环境。

apt-get install x-window-system-core
apt-get install gnome-core
apt-get install gdm

通过startx命令,启动图形化桌面。
重新登录该实例后,确认图形化桌面运行成功。

若出现E: Unable to locate package x-window-system-core
则执行sudo apt-get update更新下载源,之后再按上述方法执行即可。

之后使用startx启动,重新登陆即可

服务器负载均衡是什么意思?

负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外供应效力而无须其他服务器的辅助。经过某种负载分管技术,将外部发送来的央求均匀分配到对称结构中的某一台服务器上,而接收到央求的服务器独登时回应客户的央求。均衡负载可以平均分配客户央求到服务器列阵,籍此供应快速获取重要数据,解决很多并发访问效力问题。这种群集技术可以用*少的出资取得接近于大型主机的性能。

负载均衡的类型

根据DNS的负载均衡

经过DNS效力中的随机姓名解析来完结负载均衡,在DNS服务器中,可认为多个不同的地址配置同一个姓名,而*终查询这个姓名的客户机将在解析这个姓名时得到其中一个地址。因此,关于同一个姓名,不同的客户时机得到不同的地址,他们也就访问不同地址上的Web服务器,然后达到负载均衡的目的。

反向署理负载均衡

运用署理服务器可以将央求转发给内部的Web服务器,让署理服务器将央求均匀地转发给多台内部Web服务器之一上,然后达到负载均衡的目的。这种署理方式与一般的署理方式有所不同,标准署理方式是客户运用署理访问多个外部Web服务器,而这种署理方式是多个客户运用它访问内部Web服务器,因此也被称为反向署理模式。Apusic负载均衡器就归于这种类型的。

%title插图%num

据NAT的负载均衡技术

网络地址变换为在内部地址和外部地址之间进行变换,以便具备内部地址的计算机能访问外部网络,而当外部网络中的计算机访问地址变换网关拥有的某一外部地址时,地址变换网关能将其转发到一个映射的内部地址上。因此如果地址变换网关能将每个衔接均匀变换为不同的内部服务器地址,尔后外部网络中的计算机就各自与自己变换得到的地址上服务器进行通讯,然后达到负载分管的目的。

负载均衡服务器的好处

由于网民数量激增,网络访问路径过长,用户的访问质量简略遭到严重影响,尤其是当用户与网站之间的链路被出人意料的流量拥塞时。而这种情况经常发生在异地互联网用户急速增加的运用上。这时候,如果在效力端运用负载均衡(GSLB)技术,就可以合理分管系统负载、提高系统可靠性、支持网站内容的虚拟化。在实际运用中,许多IDC,如互联通更是选用GSLB与Cache、Mirror相结合的方法来供应网络加速效力。负载均衡效力具有如下特点:

高智能化

运用虚拟IP(VIP)地址代表方针服务器和运用,将会话分配到*高可用性的服务器,全程监控每个会话,效力恢复后自动重新挂号,并转发客户机和服务器信息包时供应全地址变换。简略有用的负载均衡算法可以配置包括循环法、*少衔接法、散列法或*少失误法等多种不同的负载均衡方法,也可以对个别服务器配置*大衔接数量阈值和加权值,以防止服务器超载。

高可靠性

架构在专用的高速骨干网之上,该骨干网络供应延迟*小的网络连通性,然后保障GSLB的功能正常发挥和高性能,远远优于根据公网的GSLB。并且,当主站点机房的Internet 出口呈现毛病时,还能将用户自动、透明地从其他分站点Internet入口导向主站点服务器。

高可用性

选用热备份方法,在*短时间内对服务器链路、交换端口和交换机进行检测和毛病转移,使运用免受毛病影响;任何一个服务器或服务器群发生毛病或阻塞,用户将被自动引导到下一个*佳备份服务器或站点,然后更进一步提高了效力和内容的可用性。

服务器负载均衡

网络的负载均衡是一种动态均衡技术,经过一些东西实时地分析数据包,掌握网络中的数据流量状况,把任务合理均衡地分配出去。

计算集中型的运用,比如电子商务网站,服务器计算负荷会很大;读写频繁的运用,比如网络数据库,存储系统则面临着检测;传输量大的运用,比如视频效力,数据总是无法快速传送,无法完结*好的效果;访问量大的运用,路由器与防火墙简略成为瓶颈。想要合理解决这些问题,晋级设备、改动拓扑是”笨办法”,相对巧妙的方法是选用负载均衡技术,用多个设备一起完结任务。

负载均衡技术根据现有网络结构,供应了一种扩展服务器带宽和增加服务器吞吐量的廉价有用的方法,加强了网络数据处理能力,提高了网络的灵活性和可用性。负载均衡的运用,可以有用地解决网络拥塞问题,可以就近供应效力,完结地理位置无关性(异地负载均衡)。同时,这项技术还能提高服务器的响应速度,提高服务器及其他资源的利用效率,防止网络关键部位呈现单点失效,然后为用户供应更好的访问质量。

构建负载均衡服务器之一 负载均衡与集群详解

一、什么是负载均衡

首先我们先介绍一下什么是负载均衡: 负载平衡(Load balancing)是一种计算机网络技术,用来在多个计算机(计算机集群)、网络连接、CPU、磁盘驱动器或其他资源中分配负载,以达到*佳化资源使用、*大化吞吐率、*小化响应时间、同时避免过载的目的。这是来自维基百科的介绍。负载均衡的目的,就在于平衡负载,给用户提供优质,可靠,稳定的服务。

*简单的负载均衡实例, 应用服务器并不直接与用户相连, 用户连接负载均衡服务器,然后由负载均衡服务器把消息转发给实际应用服务器。负载均衡器内部会根据应用服务器的负载情况,决定把消息转发给哪台服务器处理。同时负载均衡器还可以对用户屏蔽应用服务器失效,只要把用户的消息转发到非失效服务器即可。

提到负载均衡,就不能不介绍另外一个概念: 集群。集群就是一组部署有相同应用的服务器。例如web 服务器。用户的请求无论连接到哪台服务器上,都能得到相同的处理。这样我们实现一种服务器,可以将用户的请求根据特定规则转发到应用服务器上进行处理。就实现了完整的集群处理系统。这个服务器如果实现了后台服务器感知和配置功能,能够了解后台服务器的可用情况。就可以被称作为负载均衡器。

负载均衡在目前网络服务规模越来越庞大的情况下,成为一个大型服务器系统必须要面对的问题。随着用户和业务的增多,来自用户的访问量和数据流量不断增大,对服务器的计算能力和储存要求也在不断增加,单台服务器根本无法承担这么庞大的数据处理请求。这个时候,我们必须利用集群技术,采用一组服务器对来自用户的请求进行处理,服务器的数量要能够不断的扩充。在集群的前端,我们采用负载均衡技术,平均分散用户的请求到不同的处理服务器,并且能够在集群中某个服务失效时,即时感知,屏蔽,将消息转发到其他可用服务器上。

负载均衡分为硬件和软件:

(1).硬件LB(比较出名的)

F5 公司的 BIG-IP系列、Citrix 公司的 NetScaler系列、A10 公司的 AX系列

(2).软件LB

四层:LVS(Linux VirtualServer)注:国人开发的、七层:Nginx,HAProxy

二、集群的类型

1.scale on:向上扩展  

将服务器的内存容量调大和cpu数量增加些(简单说升级服务器硬件)

缺点:在一定的范围之内它的性能是上升的趋势,但是超出范围之后就是下降的趋势。因为随着它的cpu的个数增加我们需要给我们的cpu仲裁,而且随着cpu个数的增加资源竞争性越大。

2.scale out:向外扩展  

一台服务器应付不过来,我们就再增加一台服务器。  

优点:增减服务器很方便,而且没有向上扩展随着增加性能下降。

向外扩张的工作模式:当客户端向服务器端发送请求,服务器端只拿出来一台服务器来相应我们的客户端的请求。

(1).LB:Load Balancing:负载均衡集群

负载均衡集群中有一个分发器或者叫调度器,我们将其称之为Director,它处在多台服务器的上面,分发器根据内部锁定义的规则或调度方式从下面的服务器群中选择一个以此来响应客户端发送的请求。

(2).HA:High Availability 高可用集群  

高可用集群是服务的可用性比较高,当我们某台服务器死机后不会造成我们的服务不可用。其工作模式则是将一个具有故障的服务转交给一个正常工作的服务器,从而达到服务不会中断。一般来说我们集群中工作在前端(分发器)的服务器都会对我们的后端服务器做一个健康检查,如果发现我们服务器当机就不会对其在做转发。

衡量标准:可用性=在线时间/(在线时间+故障处理时间) 99%、99.9%、99.99%、99.999%

(3).HP:Hight Performance 高性能  

高性能的集群是当某一个任务量非常大的时候,我们做一个集群共同来完成这一个任务。这种处理方式我们称为并行处理集群,并行处理集群是将大任务划分为小任务,分别进行处理的机制。一般这样的集群用来科学研究与大数据运算等方面的工作。现在比较火的Hadoop就是使用的并行处理集群。

说明:三种集群之间的区别  

负载均衡着重在于提供服务并发处理能力的集群,高可用以提升服务在线的能力的集群。高性能着重用于处理一个海量任务。

三、主要负载均衡方案介绍

1:HTTP 重定向负载均衡

这种负载均衡方式仅适合WEB 服务器。用户发出请求时,负载均衡服务器会根据HTTP请求,重新计算出实际的WEB服务器地址,通过302重定向相应发送给用户浏览器。用户浏览器再根据302响应信息,对实际的WEB服务器发出请求。HTTP重定向方案有点是比较简单,缺点是性能比较差,需要2次请求才能返回实际结果,还有就是仅适合HTTP服务器使用。

2: DNS 域名解析负载均衡

在DNS中存储了一个域名的多个主机地址,每次域名解析请求,都可以根据负载均衡算法返回一个不同的IP地址。这样多个WEB服务器就构成了一个集群,并由DNS服务器提供了负载均衡服务。DNS域名解析负载均衡的优点是由DNS来完成负载均衡工作,服务本身不用维护负载均衡服务器的工作。缺点也是,由于负载均衡服务器不是自己维护,没法做精细控制,而且DNS在客户端往往带有缓存,服务器的变更很难及时反映到客户端上。

3:反向代理负载均衡

反向代理服务器位于实际的服务器之前,他能够缓存服务器响应,加速访问,同时也启到了负载均衡服务器的效果。反向代理服务器解析客户端请求,根据负载均衡算法转发到不同的后台服务器上。用户和后台服务器之间不再有直接的链接。请求,响应都由反向代理服务器进行转发。优点是和负载均衡服务集成在一起,部署简单。缺点是所有的请求回应都需要经过反向代理服务器。其本身可能会成为性能的瓶颈。著名的 Nginx服务器就可以部署为反向代理服务器,实现WEB 应用的负载均衡。上面的三种都是工作在OSI网络模型中的应用层,我们可以统称为应用层负载均衡(七层负载均衡)。下面介绍的几种工作在OSI网络模型中的4层以及4层以下(四层负载均衡),解决方案也具有更大的通用性。

4:IP负载均衡

用户请求包到达负载均衡服务器114.100.20.200后,负载均衡服务器在操作系统内核层获取网络数据包,根据负载均衡算法获取真实后台服务器地址192.168.1.1, 然后将数据包的目标地址改为192.168.1.1, 转发给内部服务器。整个过程都在内核层进行处理。收到192.168.1.1的响应包之后,会更改响应包的SRC IP, 转发给客户端用户。采用IP层负载均衡算法,全部处理过程都在内核层(Ring 0)进行。和七层负载均衡相比,具有更好的性能。但是由于所有的响应包都要经过负载均衡服务器,负载均衡服务器的网卡带宽,很容易成为系统的瓶颈,如果能够让响应包不经过负载均衡服务器,就可以*大的提升整个负载均衡服务器的服务能力。我们下面介绍的数据链路层负载均衡,就具有这个能力。

5:数据链路层负载均衡

数据链路层负载均衡,顾名思义,就是工作在TCP/IP协议*底层的数据链路层,进行负载均衡。我们常用的以太网中,在这一层主要采用数据帧进行通信,每个网卡都具有唯一的MAC地址,数据帧用MAC地址来标识数据的来源与目的地。数据链路层负载均衡通过修改数据包的MAC地址,实现负载均衡。

这种数据传输方式又称为三角传输,负载均衡数据分发过程中不修改IP地址,只修改目的MAC地址,通过配置真实物理服务器集群所有机器虚拟IP和负载均衡服务器IP一致,从而达到不修改数据包的源地址和目的地址就可以进行数据分发的目的,由于实际处理请求的真实物理服务器IP和数据请求目的IP一致,不需要通过负载均衡服务器进行地址交换,可将响应数据包直接返回给用户,避免负载均衡服务器网卡带宽成为瓶颈。这种负载均衡方式又称之为直接路由方式(DR).

如上图所示,用户请求到达负载均衡服务器114.100.20.200后,负载均衡服务器将数据包的目的MAC地址更改为00:1e:ec:bc:5e:03,并不修改数据包目的IP,由于服务器集群所有服务器的虚拟IP地址和负载均衡服务器IP地址一致,因此数据可以正常传输到达MAC地址为00:1e:ec:bc:5e:03的机器上,该服务器处理完之后,将响应数据包发送到网关服务器,网关服务器直接将数据包发送给用户,响应数据不需要通过负载均衡服务器,这样就避免了负载均衡服务器成为传输瓶颈的可能。

数据链路层负载均衡是目前使用*广泛的一种负载均衡方式。著名的负载均衡开源产品LVS(Linux Virtual Server),同时支持上面的IP负载均衡和数据链路层负载均衡。是学习负载均衡技术必须了解的产品。基于数据链路层的负载均衡虽然有非常好的性能,但是对网络拓扑也有比较大的限制,负载均衡服务器和后台服务器必须处于同一网络环境中才可以。

四、负载均衡算法介绍

前面介绍的内容,解决了从用户到实际后台服务器之间的数据包发送和响应的问题。下面我们介绍选择实际后台运行服务器的具体负载均衡算法。考虑到服务请求的不同类型服务器的不同处理能力以及随机选择造成的负载分配不均匀等问题,为了更加合理的把负载分配给内部的多个服务器,就需要应用相应的能够正确反映各个服务器处理能力及网络状态的负载均衡算法。我们以LVS为参考,介绍比较经典的8种负载均衡算法。

1.轮叫调度(Round Robin)

调度器通过“轮叫”调度算法将外部请求按顺序轮流分配到集群中的真实服务器上,它均等地对待每一台服务器,而不管服务器上实际的连接数和系统负载

2.加权轮叫(Weighted Round Robin)

调度器通过“加权轮叫”调度算法根据真实服务器的不同处理能力来调度访问请求这样可以保证处理能力强的服务器能处理更多的访问流量调度器可以自动问询真实服务器的负载情况,并动态地调整其权值

3.*少链接(Least Connections)

调度器通过“*少连接”调度算法动态地将网络请求调度到已建立的链接数*少的服务器上如果集群系统的真实服务器具有相近的系统性能,采用“*小连接”调度算法可以较好地均衡负载

4.加权*少链接(Weighted Least Connections)

在集群系统中的服务器性能差异较大的情况下,调度器采用“加权*少链接”调度算法优化负载均衡性能,具有较高权值的服务器将承受较大比例的活动连接负载调度器可以自动问询真实服务器的负载情况,并动态地调整其权值

5.基于局部性的*少链接(Locality-Based Least Connections)

“基于局部性的*少链接”调度算法是针对目标IP地址的负载均衡,目前主要用于Cache集群系统该算法根据请求的目标IP地址找出该目标IP地址*近使用的服务器,若该服务器是可用的且没有超载,将请求发送到该服务器;若服务器不存在,或者该服务器超载且有服务器处于一半的工作负载,则用“*少链接”的原则选出一个可用的服务器,将请求发送到该服务器

6.带复制的基于局部性*少链接(Locality-Based Least Connections with Replication)

“带复制的基于局部性*少链接”调度算法也是针对目标IP地址的负载均衡,目前主要用于Cache集群系统它与LBLC算法的不同之处是它要维护从一个目标IP地址到一组服务器的映射,而LBLC算法维护从一个目标IP地址到一台服务器的映射该算法根据请求的目标IP地址找出该目标IP地址对应的服务器组,按“*小连接”原则从服务器组中选出一台服务器,若服务器没有超载,将请求发送到该服务器;若服务器超载,则按“*小连接”原则从这个集群中选出一台服务器,将该服务器加入到服务器组中,将请求发送到该服务器同时,当该服务器组有一段时间没有被修改,将*忙的服务器从服务器组中删除,以降低复制的程度

7.目标地址散列(Destination Hashing)

“目标地址散列”调度算法根据请求的目标IP地址,作为散列键(Hash Key)从静态分配的散列表找出对应的服务器,若该服务器是可用的且未超载,将请求发送到该服务器,否则返回空

8.源地址散列(Source Hashing)

“源地址散列”调度算法根据请求的源IP地址,作为散列键(Hash Key)从静态分配的散列表找出对应的服务器,若该服务器是可用的且未超载,将请求发送到该服务器,否则返回空

服务器之间如何实现负载均衡的知识

企业实现服务器负载均衡常见的四种方法
为了提高服务器的性能和工作负载能力,企业通常会使用DNS服务器、网络地址转换等技术来实现多服务器负载均衡,特别是目前企业对外的互联网Web网站,许多都是通过几台服务器来完成服务器访问的负载均衡。

目前企业使用的所谓“负载均衡服务器”,实际上它是应用系统的一种控制服务器,所有用户的请求都首先到此服务器,然后由此服务器根据各个实际处理服务器状态将请求具体分配到某个实际处理服务器中,对外公开的域名与IP地址都是这台服务器。负载均衡控制与管理软件安装在这台服务器上,这台服务器一般只做负载均衡任务分配,但不是实际对网络请求进行处理的服务器。

一、企业实现Web服务器负载均衡

为了将负载均匀的分配给内部的多个服务器上,就需要应用一定的负载均衡策略。通过服务器负载均衡设备实现各服务器群的流量动态负载均衡,并互为冗余备份。并要求新系统应有一定的扩展性,如数据访问量继续增大,可再添加新的服务器加入负载均衡系统。

对于WEB服务应用,同时有几台机器提供服务,每台机器的状态可以设为regular(正常工作)或backup(备份状态),或者同时设定为 regular状态。负载均衡设备根据管理员事先设定的负载算法和当前网络的实际的动态的负载情况决定下一个用户的请求将被重定向到的服务器。而这一切对于用户来说是完全透明的,用户完成了对WEB服务的请求,并不用关心具体是哪台服务器完成的。

二、使用网络地址转换实现多服务器负载均衡

支持负载均衡的地址转换网关中可以将一个外部IP地址映射为多个内部IP地址,对每次TCP连接请求动态使用其中一个内部地址,达到负载均衡的目的。很多硬件厂商将这种技术集成在他们的交换机中,作为他们第四层交换的一种功能来实现,一般采用随机选择、根据服务器的连接数量或者响应时间进行选择的负载均衡策略来分配负载。然而硬件实现的负载控制器灵活性不强,不能支持更优化的负载均衡策略和更复杂的应用协议。

基于网络地址转换的负载均衡器可以有效的解决服务器端的CPU和磁盘I/O负载,然而负载均衡器本身的性能受网络I/O的限制,在一定硬件条件下具有一定的带宽限制,但可以通过改善算法和提高运行负载均衡程序的硬件性能,来提高这个带宽限制。不同的服务类型对不同的服务器资源进行占用,我们使用的负载衡量策略是使用同一个负载进行评估,这对于大多数条件是适合的,然而*好的办法是针对不同的资源,如CPU、磁盘I/O或网络I/O等,分别监视服务器负载,由中心控制器选择*合适的服务器分发客户请求。

三、使用DNS服务器实现负载均衡

访问企业网服务器的用户急剧增加,一台服务器难以满足用户的访问需要,那么如何才能保证用户的正常访问呢?解决方法有很多,如使用Windows 2000或Windows Server 2003提供网络负载均衡服务,但该服务的设置非常复杂。而通过DNS服务器实现网络负载均衡则是一种比较简单的方法。

企业网通常由很多子网构成,为了降低网络中的数据流量,客户机*好能访问处于同一子网内的Web服务器。虽然实现了网络负载均衡功能,但并不能保证客户访问的是本子网的Web服务器。其实这个问题也很好解决,只要启用DNS服务器的“启用网络掩码排序”功能即可。在DNS管理器窗口中,右键点击DNS 服务器,在弹出的菜单中选择“属性”,然后在属性对话框中切换到“高级”选项卡,勾选“服务器选项”列表框中的“启用网络掩码排序”选项即可。这样客户机每次都能访问到本子网内的Web服务器了。完成以上设置后,就使DNS服务器实现了网络负载均衡功能,把客户的访问分担到每个Web服务器上,并且还减少了跨子网的网络通信流量,大大降低了企业网的通信负担。

四、企业实现SQL Server数据库服务器负载均衡

MS SQL Server数据库服务器可以说是应用范围*广的数据库产品,并且越来越多地在大型和比较关键的应用系统中提供服务。当企业应用越来越复杂、数据量越来越大的时候,SQL Server数据库要不停的进行处理、存储、查询的工作,这个时候企业就要考虑SQL Server数据库服务器的性能和速度及安全性了。然而,长期以来,SQL SERVER数据库服务器都只有“热备”的解决方案,而没有“负载均衡”和“集群”的解决方案。

随着数据库路由器软件ICX的出现,为基于MS SQL Server的数据库系统提供了一种更优秀的集群解决方案。它可以真正的实现SQL Server数据库服务器的动态负载均衡,提高性能和速度;它可以真正的保证SQL Server数据库服务器不间断的提供服务,在服务器发生故障的时候实时切换到其他服务器上继续提供服务,切换时间为“零”。数据库路由器是实时并发数据库事务处理同步×××和负载平衡器。

所有的数据库客户都通过ICX访问数据库。当访问、查询SQL Server数据库的时候ICX可以根据实际情况分配服务器来提供服务,大大提高服务速度和优化性能,完成负载均衡。ICX可以同时连接多台数据库,这若干台数据库的内容在任何时刻由ICX保证是完全一致的。也就是说,ICX采用了全新的并发事务处理的方式,向连接的N台数据库同步复制事务处理,使得系统在任何时刻具有多个一致的*新逻辑数据库数据集。当其中一台数据库服务器发生故障的时候,ICX可以实时的、*时间切换到其他服务器上来继续提供服务。真正的实现零时间的服务器切换,大大提高安全性,真正意义的实现服务器不间断服务。

原理:

负载平衡把每个IP数据包按某种规则分发到服务器节点,不同的负载平衡实现方式有不同的分发规则。对客户端来说负载平衡系统是透明的。采用网络负载平衡技术的服务对单个客户端请求的响应并比单个主机快,但对大量客户端的密集请求在速度与质量有很大优势。并且当某个主机发生故障或脱机时,不会影响服务的提供,从而带来了高可用性。

负载平衡的不同实现方法

4.1 利用网络设备的动态网络地址转换(NAT)功能实现负载平衡

实现负载平衡的要求:

具备动态NAT功能的路由器,多台运行同一服务的服务器,所有服务器要求在同一局域网内。

负载平衡的设计与配置过程:

内部的多台服务器,有自己的私有IP,提供相同的服务, 但对外映射通过网络地址转换(NAT)成为一个统一的公网IP地址,对外部来讲多台服务器是捆绑在一起的一个虚拟服务器,外部访问这个虚拟服务器时,轮流指向各台服务器,从而达到负载均衡。

例如:以下网络中

路由器动态NAT配置过程如下:(以思科路由器为例)

Router(config)#int f0/1

Router(config-if)#ip address 192.168.1.1 255.255.255.0

Router(config-if)#ip nat inside

Router(config-if)#int s0/0

Router(config-if)#ip address 133.0.0.1 255.255.255.252

Router(config-if)ip nat outside

Router(config-if)#exit

Router(config)#ip nat pool p2 192.168.1.2 192.168.1.4 netmask 255.255.

255.0 type rotary

Router(config)#access-list 2 permit 133.0.0.33

Router(config)#ip nat inside destination list 2 pool p2

Router(config)#ip route 0.0.0.0 0.0.0.0 s0/0

优、缺点:配置简单,成本低,服务器在本地便于维护,负载平衡算法由路由器提供,不需占用服务器系统资源。但是一般只能支持轮流服务的算法,不能根据服务器性能进行合理的负载分配。

4.2 DNS的负载平衡实现

负载平衡的要求:

要求DNS服务器的支持,一般支持bind8.2以上的类unix系统,安装一个循环复用DNS软件。

负载平衡的设计与配置过程:在DNS中为多个地址配置同一个名字,因而查询这个名字的客户机将得到其中一个地址,从而使得不同的客户访问不同的服务器,达到负载均衡的目的。配置过程在不同的DNS系统中有不同的配置方法,本文不再多述。

优、缺点:服务器可以分布在不同的地域,有利于故障转移。负载平衡算法运行在DNS服务器上,不占用服务器资源。

但是域名服务器无法知道服务结点是否有效,如果服务结点失效,域名系统依然会将域名解析到该节点上,造成用户访问失效。另外,它不能区分服务器性能的差异,也不能反映服务器的当前运行状态。因此,在动态平衡特性上,动态DNS轮询的效果并不理想。

4.3 利用操作系统的群集功能实现负载平衡

负载平衡的要求:

要求使用支持群集功能的操作系统如:windows 2000server以上的服务器版本,Unix或Linux。本文以windows2003 server为例介绍群集功能的配置。

负载平衡的设计与配置过程:群集的实现需要群集内部的通讯以及管理和内容复制的数据传输。这部分通讯占用了网络的可用带宽。为了克服单网卡的局限性,一般使用双网卡,一个用于负载客户端的通讯,另一个用于传输内部通讯,管理和内容的数据。

群集操作模式的选择是设计的重要一步。单播模式是指各节点的网络适配器被重新指定了一个虚拟MAC(由02-bf和群集IP地址组成确保此MAC的唯一性)。多播模式下,网络适配器在保留原有的MAC地址不变的同时,还分配了一个各节点共享的多播MAC地址。一般选用多播模式。

端口规则是windows2003的新特性。NLB提供3种筛选模式,可以针对端口规则采取禁止、多主机负载平衡和单主机的特殊处理。其中,多主机筛选模式提供了真正意义上的负载平衡,并且可以根据节点的实际处理能力进行负载量的分配。

Windows2003引入了网络负载平衡管理器(控制面板->管理工具),使负载平衡的安装和配置更加简单。管理器可以容易的实现群集的建立、删除,节点的添加、删除、修改以及故障的检测。

运行网络负载平衡管理器,选择 群集 -> 新建 ,弹出“群集参数”对话框,然后根据向导按需要配置。

首先配置好参数后点击下一步,系统会提示添加附加群集IP,如果不需要可直接按“下一步”进行端口配置。以web群集配置为例:如果会话状态不保存在该群集上,则相似性选择无,否则选择单一或者类C。

之后,指定一台主机连接,并选择一个可用的网络接口,进行主机参数的设置:点击“完成”,管理器会自动连接到主机上进行相关配置来创建一个新的群集。

优、缺点:选择多主机筛选模式时提供了真正意义上的负载平衡,并且可以根据节点的实际处理能力进行负载量的分配。比较适用于大型网站负载平衡的实现。但使用Unix, Windows 2003 server系统实现时,网络架构成本较高。

友情链接: SITEMAP | 旋风加速器官网 | 旋风软件中心 | textarea | 黑洞加速器 | jiaohess | 老王加速器 | 烧饼哥加速器 | 小蓝鸟 | tiktok加速器 | 旋风加速度器 | 旋风加速 | quickq加速器 | 飞驰加速器 | 飞鸟加速器 | 狗急加速器 | hammer加速器 | trafficace | 原子加速器 | 葫芦加速器 | 麦旋风 | 油管加速器 | anycastly | INS加速器 | INS加速器免费版 | 免费vqn加速外网 | 旋风加速器 | 快橙加速器 | 啊哈加速器 | 迷雾通 | 优途加速器 | 海外播 | 坚果加速器 | 海外vqn加速 | 蘑菇加速器 | 毛豆加速器 | 接码平台 | 接码S | 西柚加速器 | 快柠檬加速器 | 黑洞加速 | falemon | 快橙加速器 | anycast加速器 | ibaidu | moneytreeblog | 坚果加速器 | 派币加速器 | 飞鸟加速器 | 毛豆APP | PIKPAK | 安卓vqn免费 | 一元机场加速器 | 一元机场 | 老王加速器 | 黑洞加速器 | 白石山 | 小牛加速器 | 黑洞加速 | 迷雾通官网 | 迷雾通 | 迷雾通加速器 | 十大免费加速神器 | 猎豹加速器 | 蚂蚁加速器 | 坚果加速器 | 黑洞加速 | 银河加速器 | 猎豹加速器 | 海鸥加速器 | 芒果加速器 | 小牛加速器 | 极光加速器 | 黑洞加速 | movabletype中文网 | 猎豹加速器官网 | 烧饼哥加速器官网 | 旋风加速器度器 | 哔咔漫画 | PicACG | 雷霆加速