VPC(virtual private cloud,虚拟私有云)是一个公共云计算资源的动态配置池,相当于企业用户通过VPN访问它们在公有云中托管的私有局域网。公有云是多租户架构各租户之间资源是隔离的,而局域网中可以是定义了很多网段但这些网段之间是可以互通的也就是说它是单租户架构。所以一个VPC基本上把云提供商的多租户架构变成单租户架构。VPC下又会有很多的tenant, 所以使用openstack来实现的话:
1, 需要定义一个shared network让VPC下各tenant的VM能互联(相当于neutron中的public network,但限制了作用域)
2, 为每个企业用户定义external network让它们可以通过VPN或MPLS远程访问
3, openstack keystone中的domain administrator能将VPC的管理代理给该domain下的user或group
4, 一个domain下的user可以根据VPC名字创建一个project, 这样就可以在这个project下定义private network,同时将路由下一跳设置成上面的shared network或者external netework, 并且VM自动关联shared network.
5, 每个企业用户可能需要自己的DNS Zone, LB Resource, flavors, images等资源
6, 为VPC指定quota