码迷,mamicode.com
首页 > Windows程序 > 详细

基于Window Azure 静态网站的跨站点高可用!

时间:2015-08-03 22:50:22      阅读:251      评论:0      收藏:0      [点我收藏+]

标签:windows azure   azure   

??

   我们上篇文章讨论了基于PAAS的简单网页的Failover,由于相对操作比较简单,因为PAAS的接口对应给用户相对较少,因此针对无状态的配置相对简单。而针对通过虚拟机来配置我们可以实现本地高可用和跨站点高可用来结合提供更高的可用性。

而基于虚拟机方式提供的高可用,我们可以在本地建立两台虚拟机,保证我们应用访问的高可用,因为没有涉及到交互的静态页面,因此我们可以采用建立可用性群集的方式保证我们的网站在同一个数据中心的可用性。同时我们用Traffic Manager来保证我们在跨数据中心的时候依然保证了我们数据访问不会出现异常。

拓扑架构如下:

技术分享

上图就是我们在面对静态网站或者非交互性网站的虚拟机可以采用的架构,现在我们用三台标准A2级别服务器来完成本次的模拟,我们还是利用之前的网站,建立基于Windows Server 2008 R2 IIS的网站来满足客户访问的要求。

接下来让我们模拟这个过程吧:

  1. 我们先按照步骤建立第一台服务器,服务器的网络和存储账号定义东部数据中心:

    技术分享

  2. 选择中文 2008 R2 系统后点击下一步:

    技术分享

  3. 输入相应的参数州我们点击下一步:

    技术分享

     

     

     

     

     

     

     

     

  4. 我们新建一个云服务,存储选择东部数据中心。选择我们预先创建的网络:

    技术分享

  5. 勾选需要安装的agent:

    技术分享

     

     

     

     

     

     

  6. 我们到此已经创建完成了:

    技术分享

  7. 接下来我们创建另外一台服务器来完善创建可用性集合,其他过程都一样,需要特别注意下这个机器必须和上一台机器处于同一个云服务中:

    技术分享

     

     

     

     

     

     

本地高可用基本上我们创建完毕,接下来我们必须来找到实现高可用的方法,对于用户来说,保证前端和无状态的情况下保证高可用,我们可以使用负载均衡的方式来实现,而为了保证这些机器是有关联的,我们需要创建服务器可用性群集,接下来我们按照负载均衡和可用性群集的方式分别创建负载均衡和可用性群集。首先我们先创建负载均衡。

  1. 我们转向到Windows ServerA的端点,创建一个80的端口,同时创建负载均衡:

    技术分享

  2. 选择添加独立终结点:

    技术分享

  3. 勾选创建负载均衡集:

    技术分享

  4. 我们选择探测的方式和端口:

    技术分享

     

     

     

     

     

     

     

  5. 我们已经创建完成,可以看到80端口已经创建:

    技术分享

  6. 接下来我们将ServerB加入到负载均衡中:

    技术分享

     

     

     

     

     

  7. 设置好名词后创建完成:

    技术分享

  8. 我们回到端口列表就能够看到列表已经创建完成了:

    技术分享

     

     

     

     

     

     

     

     

     

  9. 接下来我们根据需要创建可用性集,可用性集不是必要的,但是在多数情况下,最好建立可用性集合来完成我们的虚拟机的可用性集合,主要也是为了将来实现基于云的缩放功能完成资源的自动缩放。接下来我们来设置可用性集合来完成我们的虚拟机的设置,我们直接选择我们的虚拟机:

    技术分享

  10. 选择创建新的可用性群集:

    技术分享

     

  11. 可用性集合创建完成:

    技术分享

  12. 接下来我们选择另外一台机器,将另外一台机器加入可用性群集:

    技术分享

    完成上面步骤操作,我们已经完成了需要的一些操作达成了本地的网站的可用性目标了。接下来我们将网站部署到两台服务器上。我们登录到两台服务器上,然后安装IIS

    技术分享

    将数据拷贝到IIS根目录:

    技术分享

    同时将文件部署在另外的一台的IIS中,接下来我们测试下,打开http://piloteast.chinacloudapp.cn/,我们发现可以正常访问了:

    技术分享

    接下来我们部署跨站点的访问了,这边我们依然使用traffic manager 来达成我们的目标,其实也是利用Traffic Manager的技术达成故障转移来完成我们的高可用目标,我们来看看Traffic Manager技术:

    技术分享

      如上图,我们有4个访问站点,我们利用DNS来查询出Traffic Manager 的地址,Traffic Manager 通过查询当前4个站点的WEB状态来确定我们业务状态,返回给我们一个健康的应用地址,来达成我们数据高可用访问目标,接下来我们就先创建一台远端的高可用服务器,接下来利用Traffic manager 技术来将Failover 流量在出现问题后倒入到远程站点。

  1. 我们先在远程站点建立一套访问服务器:

    技术分享

     

     

     

     

  2. 接下来将网站部署在第三台服务器上:

    技术分享

  3. 接下来我们就需要设置我们的Traffic Manager 来达到应用的故障转移功能,首先我们创建一个新的故障转移的Traffic Manager 。我们转移到Portal 界面中的流量管理器,点击新建:

    技术分享

     

     

     

     

     

  4. 创建完成后,我们添加东部数据中心和北部数据中心的机器,因为是虚拟机,虚拟机挂靠在windows Azure,由于我们在东边和北部数据中心:

    技术分享

  5. 创建完成后就开始检查状态是否正常:

技术分享

 

 

  1. 我们看下终结点是否正常:

    技术分享

  2. 接下来配置TTL的时间及相关的配置:

    技术分享

     

     

  3.  保存完毕后我们开始做测试,测试步骤如下:

    技术分享

  4. 我们打开IE,测试下网站是否正常。

技术分享

 

 

 

  1. 关闭ServerA,我们再试着开启网站,网站依然正常:

    技术分享

  2. 接下来我们看看我们是否能够实现跨站点的虚拟机高可用,接下来就是关闭ServerB咯,看下是否能够切换到远程站点,已经OK了:

    技术分享

    技术分享

    到此,我们目前基于无状态的IAAS的应用的高可用已经配置完成,目标也完整实现

版权声明:本文为博主原创文章,未经博主允许不得转载。

基于Window Azure 静态网站的跨站点高可用!

标签:windows azure   azure   

原文地址:http://blog.csdn.net/fogyisland2000/article/details/47262101

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!