游戏搭建如何负载均衡( 二 )


比如,使用虚拟机上的SQL Server实例开发应用 。然后在你需要对开发实例进行压力测试的时候,将它灾难恢复到集群中更强的物理机器上 。集群服务器可以用于SQL Server的高可用性、灾难恢复、可扩展性和负载均衡 。
单个更大的、由更多的节点组成的集群往往比小的、只有少数节点的集群更好 。大个集群允许更灵活环境,为了负载均衡和维护,实例可以从一个节点移动到另外的节点 。
如何在ubuntu14.0下为WordPress应用服务器搭建四层负载均衡

游戏搭建如何负载均衡

文章插图
在本教程中,我们将教你如何使用HAProxy为你的WordPress服务器搭建第四层负载均衡--特别是web应用层 。负载均衡web服务器要在设置中增加冗余,这会在碰到服务器失败、网络问题时增加服务的可靠性;同时将负载分摊在多个服务器上可以提交读操作的性能 。
如果你只是运行了一个单独的web服务器应用程序,那么第四层负载均衡就比较适用 。如果你的环境更复杂(例如你想通过一个单一的入口在不同的服务器上运行WordPress和一个静态web服务器),那么就可能就需要关注应用层(第七层)负载均衡 。本文是以WordPress为例子,但是它的一般概念可以用于负载平衡,无状态的web应用 。预备知识在继续本教程之前,你需要首先要完成架设一个拥有单独数据库服务器的WordPress站点的教程(或者使用类似的步骤):如何使用MYSQL建立一个远程数据库来优化站点性能 。
当你跟着教程在单独Web应用和数据库服务器下搭建完WordPress后,你应该有两个VPS 。因为我们要处理几个VPS,为了参考,我们就成这两个VPS为:wordpress-1:你的WrodPress web应用服务器mysql-1:你的Mysql服务器现在你的环境的抽象视角看起来像下图这个样子:除了你当前的环境外,我们在本教程中还需要有两个额外的VPS 。我们称他们为:wordpress-2:第二个WordPress web应用服务器haproxy-www:HAProxy服务器,做负载均衡用如果你对负载均衡的基本概念或者数据还不熟悉,比如四层负载均衡或者后端或者ACL,这里有篇文章解释这些基本概念:HAProxy及负载均衡概念介绍(译注:大家可百度查找) 。
我们的目标最终,我们想拥有以下一个环境:也就是说,你的用户将通过HAProxy服务器到达WordPress站点,其中HAProxy服务器会议轮循的方式将用户请求负载均衡至WrodPress应用服务器 。你的两个WordPress应用服务器(或者更过,如果你愿意)将都会请求MYSQL数据库 。当前环境快照可选:在继续本教程之前,你可能想为你当前环境创建快照 。
本教程中快照有两个目的:如果发生错误可以回滚到可工作环境对原始服务器做一次性复制,而不需要再次安装和配置PHP以及Nginx注意:为环境创建快照需要短暂的关闭VPS为wordpress-1和mysql-1两个VPS做一个快照 。现在有了快照以后,我们就可以准备好继续搭建环境中其他部分了 。创建第二台web应用服务器现在我们需要创建第二个VPS来分担原始应用服务器的负载 。
有两种选择:从之前的快照wordpress-1中创建一个新的VPS从头开始重新创建一个VPS并且设置该VPS和wordpress-1有相同的软件和配置不论那种方法,如果网络可用,一定要确保勾选个人网络 。个人网络是本教程中所有VPS都需要的 。如果没有个人网络选项,用你的VPS的公开IP来替代内网IP 。需要注意的是,当使用公网IP在应用服务器和数据库服务器之间传输敏感数据比如非加密的数据库密码,并不是一个很好的选择,因为这些信息需要在互联网上传输 。
方式一:使用快照创建新的VPS创建一个新的VPS,叫做wordpress-2,使用你为wordpress-1做的快照来做 。如果你选择的这种方式,可以跳过“方式二”直接去看“同步web应用文件”小节 。方式二:从头创建一个新的VPS这种方式和“方式一”可二选一 。如果你想从头设置wordpress-2服务器,而不是使用wordpress-1的快照,那么你要确保安装的软件相同 。
如果你忘了如何安装和设置原始wordpress服务器,可以参考预备知识章节中如何设置web服务器小节 。快速参考,这里是一个相关软件和配置文件的列表,需要你来安装或复制:软件方面:Mysql客户端NginxPHP安装完这些软件后,在你的wordpress-2服务器上运行一下命令:sudo apt-get updatesudo apt-get install mysql-clientsudo apt-get install nginx php5-fpm php5-mysql原始应用服务器上需要创建或编辑的配置文件:/etc/php5/fpm/php.ini /etc/php5/fpm/pool.d/www.conf /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com当你修改完配置文件后,不要忘了冲洗PHP和Nginx,可以使用一下命令:sudo service php5-fpm restartsudo service nginx restart在新服务器的安装和配置完成以后,我们需要同步wordpress应用文件 。同步Web应用文件在应用程序可以进行负载均衡之前,我们需要确保新应用服务器的应用程序文件和原始wordpress服务器的文件是同步的 。这些文件的位置也就是你安装wordpress的位置,以及其他的一些文件 。