• 文章搜索:
  • IP技术专栏

        • 分享到...

        • 新浪微博
        • 腾讯微博
        • 推荐到豆瓣 豆瓣空间
        • 分享到搜狐微博 搜狐微博
        • 分享到QQ空间 QQ空间
        • 分享到腾讯朋友 腾讯朋友
        • 网易微博分享 网易微博
        • 添加到百度搜藏 百度搜藏
        • 转贴到开心网 开心网
        • 转发好友 告诉聊友
    • 推荐
    • 打印
    • 收藏

    电信IDC网络解决方案-服务器接入和租户隔离

    文/陈安

    IDC机房无论是资源租赁或是电信直接提供业务,都需要部署很多的服务器,可以说IDC机房就是服务器的大集中。服务器数量巨大,少则几百台,多则成千上万,尤其是在云计算进入IDC后,物理服务器虚拟化,虚拟机规模进一步扩大。从IDC网络角度,如何将这么大量的服务器接入到网络是必须要解决的问题。

    IDC是提供租户使用的,每个租户都有不同的业务,这些业务对安全的需求是必然的,而业务隔离(即租户隔离)是安全措施里最重要的一个环节。对于IDC网络而言,必须考虑将各个不同租户进行隔离。

    一、 IDC网络中的服务器接入

    对于大规模服务器接入,需要从两个方面进行考虑:服务器接入设计和接入网络设计。服务接入首先要考虑服务器的安装和布线方式,这决定了接入交换机的部署。

    服务器的布线方式

    IDC机房平面布局通常采用矩形结构,为了保证制冷效果,通常将 10 至 20 个机柜背靠背并排放置成一行,形成一对机柜组(又称为一个POD)。每个POD由服务器机柜和网络机柜组成,其中服务器机柜占多数。由于服务器的形态差异(机架式服务器、刀片服务器),POD中服务器机柜和网络机柜的布线方式也存在差异,总的来说有三种方式:EOR(End of Row)、MOR(Middle of Row)和TOR(Top of Rack)。从当前IDC数据中心机房实际部署来看,机架式服务器常用TOR方式部署,而刀片服务器则更多采用EOR方式或MOR方式部署。

    服务器多网卡接入

    通常服务器配置有多个网卡,常见的是4个网卡,其中一个用于管理,一个用于连接存储,另外两个用于跑业务。这种情况下,服务器就有两个业务网卡要与接入交换机相连,通过服务器多网卡绑定(Nic Teaming)技术实现服务器多网卡接入,主要有以下几种方式:

    主备模式

    简言之就是两块业务网卡,一主一备,正常情况下只有一块网卡工作,当该网卡故障后,再切换到另一块网卡。这种模式下,主网卡和备网卡共用同一个IP地址,对外保持业务IP统一。对于MAC地址的选择,正常工作时,服务器采用主网卡对应的MAC地址,当主网卡故障时,根据操作系统不同有不同的处理方式:

    如果服务器的操作系统是Windows系统,主网卡故障后,备网卡接管业务,但MAC地址依然采用主网卡的MAC,即保持MAC不变。这种方式的好处是不需要接入交换机重新学习MAC,可以保证业务的连续性。

    如果是Unix操作系统,主网卡故障后,备网卡接管业务,MAC地址也随之切换到备网卡的MAC。此时MAC地址发生切换,需要接入层交换机重先学习MAC地址,同样业务网关设备也需要更新ARP表。

    负载分担模式

    负载分担模式就是两块网卡同时工作,实现流量负载分担。该模式又可以分为发送负载分担(ALB)和发送接收负载分担(ALB&RLB)两种方式。发送负载分担方式,即两块网卡同时发送数据,但只有一块网卡接收数据时。发送接收负载分担方式,即两块网卡都同时发送数据和接收数据。

    在发送负载分担模式(ALB)下,服务器的ARP响应报文由负责接收的网卡(即主网卡)进行回复,这样确保数据只能全部发给该网卡。对于服务器发送出去的数据,封装的MAC则采用发送网卡的MAC。

    在发送接收负载分担模式(ALB&RLB)下,通过统一的控制策略实现发送和接收的负载分担。其中,对于接收负载分担主要依靠ARP响应策略来实现,简单来说是通过网卡驱动程序截获ARP请求报文后,根据统一的策略,对不同的主机回复不同的MAC。这种情况下,对于网关而言,仍旧只能够学习到其中一块网卡的MAC,在南北向三层流量较大的场景中,该方式对于接收负载分担的效果不明显。

    聚合模式

    聚合模式,即服务器的两块甚至更多网卡通过聚合方式接入到网络,聚合的实现方式可以是静态聚合或动态聚合。该方式要求接入层交换必须同样使用聚合,实现与服务器的对接,通常此时接入交换机需要实现虚拟化(IRF2)或者服务器只接入单台接入交换机。

    接入网络设计

    接入网络即为服务器和核心设备之间的网络。在当前IDC网络建设中,由于服务器虚拟化要求,接入网络大都部署成大二层网络,以方便实现服务器虚拟机的二层迁移等功能。对于中小IDC网络而言,通常扁平化部署,接入层交换机直接上连核心交换机,省去了中间的汇聚层;对于大型IDC网络而言,仍旧采用接入、汇聚、核心的三层架构模式,汇聚层的作用在于减轻核心交换机的东西向流量压力,同时增加接入能力。也有不少IDC机房网络采用混合组网的模式,即部分东西向流量较大的业务区采用三层架构,而东西向流量相对较少的业务区直接接入到核心交换机。

    接入交换机组网

    通常接入层交换机以两台为一组,根据设备是否支持虚拟化(通常是多虚一),可以分为两种组网情形:

    虚拟化组网:即接入层交换机支持多虚一功能,接入交换机与汇聚交换机或核心交换机采用聚合互联,服务器也以聚合方式接入。

    非虚拟化组网:接入交换机不支持多虚一功能,此时推荐单台接入交换机与汇聚交换机或核心交换机聚合互联,两台接入交换机之间没有连线,如下图所示。这种组网方式下,服务器以主备方式部署接入。

    二、 IDC中的租户隔离

    在传统IDC机房中,若以接入交换机作为服务器的接入网关,每个租户拥有独立的物理服务器,不同租户之间的隔离只要通过接入交换机的端口隔离技术即可实现,若以核心交换机作为网关,则部署super vlan技术,方便地实现租户隔离。

    在云计算业务开始部署后,网络发生很大变化,租户隔离也有较大不同:

    l 接入网络以大二层方式部署,服务器的网关通常部署在核心交换机上

    l 服务器虚拟化后,租户的业务都跑在虚机上,接入交换机上一个物理端口上接入多个租户,

    l 服务器虚拟化后存在vSwitch,虚机间可以通过vSwitch实现二层互通

    l 对于运营商来说,在给租户分配IP地址时,从考虑节约地址资源角度出发,多个租户会分配同一个网段

    可以看出通过物理接入交换机上的端口隔离技术已经无法实现租户二层隔离,必须考虑使用新的隔离技术。在云计算业务场景下,租户的二层隔离有以下几种实现方式:

    l 虚拟化软件实现

    当前主流的虚拟化软件都能实现针对虚机下发控制策略,确保虚机与外界通信时受此策略控制。在虚拟化软件上配置ACL访问控制策略,即可实现虚拟机之间的隔离,也就是租户间隔离。

    l 通过Super vlan技术实现

    Super vlan技术通过super vlan和子vlan设计,实现子vlan之间二层隔离。每个租户分配一个子vlan,实现租户间二层隔离,再通过super vlan实现统一网关。该方案能实现的前提是交换机设备能够支持Super vlan技术。

    l 通过新兴技术vxlan实现

    IDC云计算业务场景,传统网络技术面临众多困难,但也因此催生了一大批新兴技术,其中比较著名的是VXLAN技术。VXLAN技术利用传统的VLAN隔离思想,通过在二层帧中插入新的VXLAN协议字段,实现不同虚机(租户)的隔离。考虑租户规模,新增加的字段中,VXLAN标识长度达到24位,从而可以支持1600万个租户。VXLAN十分方便地解决了租户隔离问题,但需要虚拟化软件支持和网络设备支持。

    在云计算业务场景中,租户不单是原来的企业用户,而更多可能会面向个人用户。个人用户规模庞大,租户间依然需要实现二层隔离。如果采用第一种隔离方案,则要求虚拟化软件支持该功能,而采用super vlan方式,vlan数量是非常大的瓶颈。而针对新业务产生的VXLAN等新技术,非常完美的弥补了传统网络技术存在的不足,并带来新的部署方式,为新业务的开展提供更多想象空间!

    顶端