企业在迁移上云过程中,经常遇到要逐步迁移上云的情况,企业在IDC机房可能有依赖防火墙白名单,或者软件内没有使用域名而使用固定IP地址,监管或者合规性等要求,要求业务迁移上云后IP地址保持不变。
常见的方法有1. 迁移的主机划分单独子网,通过专线三层打通云和IDC机房。2. 使用二层网关L2GW来,二层打通云上业务主机和IDC机房内主机,云上云下可以属于同一个网段。
方案1 子网划分,专线/V P N三层互通:
某公司的业务要部分迁移到云上,客户希望保留原来的业务IP地址段,且业务上云后仍然和IDC机房未迁移的业务正常通信。如果迁移的业务比较明确,可拆分子网,建议可以采用子网拆分,专线三层打通IDC和云上,通过明细路由来实现互通。可以使用扩展网段来实现迁移的子网不连续的问题。
例如客户原IDC机房使用的网段是192.168.0.0/16网段,例如web1 前端 192.168.1.0/24迁移到云上,数据库192.168.2.0/24仍保留在IDC机房。那么可以在云上先创建192.168.1.0/24的VPC。在天翼云侧设置路由192.168.0.0/16,下一跳为天翼云和客户IDC机房互联的POP1;在客户IDC机房侧设置路由192.168.1.0/24,下一跳为客户侧IDC 的边缘POP2。
然后使用迁移工具将web1从线下迁移到IDC,迁移可以使用专线网络或者Internet来实施,具体可参考云间迁移上云解决方案
当后续又有新的业务迁移了,比如其他web2 系统192.168.3.0/24,可以使用VPC扩展网段功能扩充VPC的网段范围。
此时在客户IDC机房侧增加路由192.168.3.0/24,下一跳为客户侧IDC 的边缘POP2.
以此方式,可以逐步将IDC机房的业务迁移到云上。
这种方式的优点是对云上资源池和IDC机房的设备没有特殊要求,三层互通即可。
方案2:使用L2GW将云上和IDC机房二层打通
客户部分业务要迁移上云,但迁移的主机和未迁移的主机是完全离散的,不容易按子网划分开,例如要迁移的主机为192.168.1.5,.7, .9, .11, 而保留在IDC机房的为.4, .6, .8。迁移到云上的主机如192.168.1.5和.7和还要继续和IDC机房的主机如192.168.1.4及.6进行互通。
1. 网关设置
如果IDC机房和云上均采用DHCP自动分配IP,IDC机房和云上的网关可以设置成相同或者不同的地址,建议网关设置为相同的地址。
云上创建VPC和子网时,可以指定网关地址,默认是子网的第一个IP地址。
2. ARP代答/代理
如果IDC机房子网网关和云上子网网关的IP相同但MAC地址不同,为了避免IDC内的网关发出ARP或者免费ARP,错误了刷新了云内网络各主机的子网网关的ARP表项,所以天翼云侧的L2GW隧道接口使能ARP代理。例如IDC内的主机192.168.1.4请求192.168.1.5的ARP,则ARP请求到达L2GW时,由L2GW来做ARP代理,回应的MAC地址为L2GW的 MAC。部分资源池L2GW使用的是ARP代答模式,回应的MAC使用的是云主机真实的MAC。
对于IDC侧隧道交换机,也建议使能ARP泛洪抑制,并开启ARP代答。这样如果host-1曾经请求过ECS-1的ARP,ECS-1的ARP表项会缓存在IDC机房的GW上。当host-2也想请求ECS-1的ARP时,可以直接由IDC机房的GW应答此ARP请求,从而起到减少专线之间ARP广播数量的作用,节省了网络的带宽和广播的泛洪。
3. IDC机房的主机和云上主机组成集群或者主备
1) 如果需要将IDC机房的主机和天翼云上的云主机组成应用层的业务集群,如果业务本身需要使用二层相关协议来建立心跳,除了考虑L2GW,还要考虑IDC机房和天翼云站点之间的延时是否满足业务心跳检测的需求。
2) 目前不能通过VRRP协议将云上主机和IDC内的主机组成VRRP集群。
配置方法:
隧道交换机和IDC路由器可以合并为一台物理设备。
Ø 第一步:在IDC、云上分别添加一个子网,用于建立VXLAN隧道。例如IDC使用3.3.3.3/32, 天翼云上192.168.0.5/24来建立vxlan隧道
Ø 第二步:创建专线/VPN
以IDC和云上使用专线互联为例
1)创建物理专线
2)创建专线网关
3)在专线网关内配置客户侧路由
这里的客户侧路由,包含IDC隧道交换机(支持vxlan的交换机)的子网,3.3.3.3/32,不需要配置二层互通的子网192.168.1.0/24
4)VPC路由,包含L2GW所在子网192.168.0.0/24
Ø 第三步:创建二层连接网关。
在虚拟私有云->二层连接网关下,创建二层连接网关,关联网关为第二步创建的专线网关。
Ø 第四步:创建二层连接,也指定云上云下需要打通的网段信息。
二层连接子网指的是云上和IDC机房二层互通的子网,本例中为192.168.1.0/24; 接口IP为二层连接子网中负责转发到IDC机房的网关地址,如果没有指定,系统会自动生成一个默认地址;隧道号是和线下IDC机房协商一致的Vxlan ID,本例中为1000;远端隧道IP指的是隧道交换机中用于建立隧道的源IP地址,本例子中为3.3.3.3。
Ø 第五步:配置IDC侧交换机。
以H3C交换机为例,其他品牌交换机可以参考厂商二层vxlan静态隧道配置指导
1.配置环回口
[switch1]interface LoopBack 0
[switch1-LoopBack0] ip add 3.3.3.3 32
2. 开启L2VPN能力
[switch1] l2vpn enable
3. 配置VXLAN隧道工作在二层转发模式。
[switch1] undo vxlan ip-forwarding
4. 创建VSI实例vpna和VXLAN 1000。
[switch1] vsi vpna
[switch1-vsi-vpna] vxlan 1000
5.创建静态vxlan隧道,关联vxlan1000,对端是天翼云的L2GW ip
[switch1]interface Tunne1000 mode vxlan
[switch1]source LoopBack 0
[switch1] destination 192.168.0.5
6. 将vsi和隧道绑定
[switch1] vsi vpna
[switch1-vsi-vpna] vxlan 1000
[switch1-vsi-vpna-vxlan1000] tunnel 1000
[switch1-vsi-vpna-vxlan1000] quit
[switch1-vsi-vpna] quit
7. 将IDC机房客户侧的子网和VSI关联
在VXLAN交换机接口Bridge-Aggregation1上创建以太网服务实例1000,该实例用来匹配VLAN 100的数据帧,将该服务实例与vpna(VXLAN 1000)关联。
[switch1] Bridge-Aggregation 1
[switch1-Bridge-Aggregation1] port link-type trunk
[switch1-Bridge-Aggregation1] service-instance 1000
[switch1-Bridge-Aggregation1-srv1000] encapsulation s-vid 100
[switch1-Bridge-Aggregation1-srv1000] xconnect vsi vpna
[switch1-Bridge-Aggregation1-srv1000] quit
[switch1-Bridge-Aggregation1] quit
8. [可选]IDC开启ARP 泛洪抑制和ARP代答
这样如果IDC机房的主机曾经请求过云上某个云主机的ARP,IDC的网关就会缓存该ARP。并在IDC机房其他主机再此请求云上该云主机ARP时,由IDC的网关直接代答ARP。
[switch1] vsi vpna
[switch1-vsi-vpna] arp suppression enable
[switch1-vsi-vpna] arp suppression mode proxy-reply
Ø 第六步:验证云上主机和IDC机房未迁移的主机二层可以继续互通。
从IDC机房的主机192.168.1.4可以ping通192.168.1.5
IDC机房和VPC的其他网段三层互通,可以复用IDC天翼云的专线,但不需要再经过L2GW到IDC的隧道交换机。
这种方式要求云上资源池需要具备二层网关能力和IDC机房的也需要有支持vxlan静态隧道的交换机,组网相对于三层互通方案要求更高。