1. 网络与VPC背景
VPC是在最新的SDN软件定义网络的基础上,进一步研发而来的。
• 2010年的5月,阿里云ECS首次对外亮相。
• 2012年以后,随着计算虚拟化,存储虚拟化等一系列技术的发展,单个物理机的虚拟化的比例在逐步提高,对网络设备提出了更高的要求,阿里云抛弃了传统的大二层架构,设计了新的网络虚拟化的技术方案,经过了多年发展和三个大版本的迭代,形成了今天的阿里云网络,特别是VPC网络的基础。
• 2016年,在虚拟化平台基础上,引入Overlay技术(隧道技术),完成了租户端的租户隔离。
• 2019年,在多地域部署业务以后,完成了云上的全球互联,云下的IDC跟云上的VPC进行互通等。
• 2020年以后,进入了崭新的阿里云网络3.0时代,形成了用户从应用、到云、到边的一体化网络。
2. 专有网络VPC
1) 什么是VPC
专有网络VPC(Virtual Private Cloud),是基于阿里云构建的一个隔离的网络环境,通过Overlay技术,实现专有网络之间逻辑上的彻底隔离。
2) VPC主要提供了两个能力
• 用户可以自定义网络拓扑,包括选择自有 IP 地址范围、划分网段、配置路由表和网关等。
• 通过专线或VPN与原有数据中心连接,云上和云下的资源使用同一个网络地址规划,实现应用的平滑迁移上云。
3) VPC的两个基础组件:路由器与交换机
• 路由器(VRouter)可以连接VPC内的各个交换机,同时也是连接VPC和其他网络的网关设备。
• 每个专有网络创建成功后,系统会自动创建一个路由器。每个路由器关联一张路由表。
• 交换机(VSwitch)是组成专有网络的基础网络设备,用来连接不同的云产品实例,主要是ECS、SLB、RDS。
4) 弹性公网IP
弹性公网IP(Elastic IP Address,简称EIP),独立的公网IP资源,可以绑定到阿里云专有网络VPC类型的ECS、NAT网关、私网负载均衡SLB上,并可以动态解绑,实现公网IP和ECS、NAT网关、SLB的解耦,满足灵活管理的要求。
• 灵活:独立的公网IP资源,可以灵活地对ECS、NAT网关、私网负载均衡SLB绑定和解绑。
• 高可用:基于高可用的底层架构实现,无单点故障,并支持跨可用区容灾。
• 低成本:支持按使用流量付费,包年包月价格更优惠。
• 简单:开通即用,带宽变更实时生效。
5) 连接方式和应用场景
不同VPC网络默认是互相无法通信的,想要不同的VPC之间通信需要打通两边的路由。
a) VPC连接VPC
• 云企业网:支持将多个不同地域、不同账号的VPC连接起来,构建互联网络。
• VPN网关:通过在两个VPC之间创建IPsec连接,建立加密通信通道。
• VPC对等连接:实现两个VPC之间私网互通。
b) VPC连接本地IDC
• 高速通道:通过物理专线接入使VPC与本地IDC网络互通。
• VPN网关:
通过建立IPsec-VPN,将本地IDC网络和云上VPC连接起来。
通过建立SSL-VPN,将本地客户端远程接入VPC。
• 云企业网:
与本地IDC互通:支持将要互通的本地IDC关联的边界路由器(VBR)加载到已创建的云企业网实例,构建互联网络。
多VPC与IDC互通:支持将要互通的多个网络实例(VPC和VBR)加载到已创建的云企业网实例,构建企业级互联网络。
• 智能接入网关:
可实现线下机构(IDC/分支机构/门店等)接入阿里云数据中心,即插即用,轻松构建混合云。
可实现线下机构之间互通。
c) VPC连接公网
• ECS的PublicIP
• 弹性公网EIP
• NAT网关
• SLB:CLB/ALB
3. VPC实践
1) VPC的网络规划
问题一:应该使用几个VPC?
规划思路:
• 需要多地域部署,则要使用多个VPC。
• 同一地域,系统之间需要强隔离,则为多个VPC。
• 同一地域,系统之间不需要强隔离,一个VPC内可以通过交换机和一些权限配置进行隔离,而一个VPC内可以容纳15000个节点。
问题二,应该使用几个虚拟交换机?
规划思路:
• 即使是使用一个VPC,也推荐使用两个交换机,且最好在不同的可用区,这主要是考虑容灾问题,同地域的不同可用区的延迟很低。
• 容灾要保证至少两个交换机,ECS在两个交换机,RDS、SLB主备在两个交换机里,在不增加费用的情况下,尽可能提高系统的可用性。
问题三,应该选择什么网段?
规划思路:
• 在创建VPC或交换机的时候,都会遇到网段的问题,一般来说,10网段、172网段、192网段都是可以使用的。
• 选择网段要从业务角度出发,如果有多个VPC,尽量保证各VPC之间的网段各不相同。
• 如果VPC内的网段做不到互不相同,也可以在交换机内部保证网段各不相同。
• 目前阿里云已提供网段修改的功能,如果遇到问题可以进行修改。
问题四,考虑一个比较复杂的业务系统,云上存在多个VPC且需要和云下IDC互通,如何规划网段?(略)
2) VPC的访问控制
a) 网络ACL
• 专有网络已经有独立的访问控制策略,在网络ACL页面。
• 可以自定义网络ACL规则,并将网络ACL与交换机绑定,从而实现对交换机中ECS的流量访问控制。
• 过滤已绑定的交换机中的ECS流量。
• 出方向/入方向:
生效顺序
协议类型
源地址范围
源端口范围
策略(允许/拒绝)
类型
b) RDS白名单
• 基于RDS的白名单功能,可定义允许访问RDS的IP地址,指定之外的IP地址将被拒绝访问。
• 在专有网络中使用RDS产品时,需要将云服务器的IP地址加入到需要访问的RDS的白名单后,云服务器才能访问RDS实例。
c) SLB白名单
• 可以为负载均衡监听设置仅允许哪些IP访问,适用于应用只允许特定IP访问的场景。
3) VPC的路由表和路由条目
• VPC内网路由:目前VPC有多个路由表,且用户路由表和系统路由表分离,可以支持比较多的路由条目的设置(最早只有48条),但虚拟路由表暂时还只支持静态路由,不支持动态路由。
• VPC互连:对等连接/云企业网/VPN网关连接两个VPC;
• 物理专线/VPN/云企业网/SD-WAN连接专有网络和本地网络。