图解虚拟私有云 VPC
虚拟私有云简介
虚拟私有云(Virtual Private Cloud,VPC)为公有云用户提供了一个安全、隔离的私有网络环境,用户可以在VPC中按需部署云服务器、云数据库、云存储等云资源。VPC提供丰富的网络服务功能,例如子网、安全组、网络ACL、路由表、DNS,同时提供外部网络访问能力,例如基于VPC对等连接实现VPC互访、基于公网IP实现访问公网、基于IPSec VPN、专线网关实现VPC和本地互访。
图片来源:华为云帮助中心,https://support.huaweicloud.com/productdesc-vpc/
核心组成
虚拟私有云VPC由一个私有网络、路由表、和至少一个子网组成;
-
私有网络:用户在网络控制台创建虚拟私有云VPC时,需要指定虚拟私有云VPC使用的私有网段,各大云服务商均支持IANA组织划分的标准私有网段(部分云服务商可能会占用私有网段的部分IP地址段,用户无法配置使用已占用子网段),私有网络IP段设置后无法修改,建议用户在使用前做好IP地址规划。
私有IP地址的范围分别是,10.0.0.0/8、172.16.0.0/12、192.168.0.0/16:
A类地址范围:10.0.0.0—10.255.255.255;
B类地址范围:172.16.0.0—172.31.255.555;
C类地址范围:192.168.0.0—192.168.255.255。
-
路由表:顾名思义,路由表是用来控制虚拟私有云的网络流量策略,用户在创建虚拟私有云VPC时,系统会自动生成默认路由表,实现同一个VPC下的所有子网互通。如果用户需要自定义路由策略以满足复杂的网络访问策略,支持用户可以创建自定义路由表并添加路由策略。
-
子网:子网是虚拟私有云VPC里的IP地址块,同一个VPC内子网网段不可重复,用户可以通过子网划分进行合理规划IP地址资源,VPC里的所有云资源(云服务器、云数据库)必须部署在子网内。
服务能力
经过梳理和对比主流公有云服务商(AWS、阿里云、华为云),VPC承担云上业务的基础运行环境,提供了丰富的服务能力,满足用户多场景需求,主要服务能力可分为私有网络、安全访问控制、外部网络访问、审计和监控四大类。
私有网络
- VPC实例:为用户的云资源构建隔离、自主配置和管理的虚拟网络环境。用户可根据业务规划创建多个不同的VPC,修改VPC基本信息,,满足用户业务和维护管理需求。
- 私有网段:用户在创建VPC时需要指定该VPC的私有网段,如当前私有网段不满足业务需求时支持添加拓展私有网段。
- 子网:子网是VPC内的IP地址快,VPC内的所有云资源都必须部署在子网内,子网支持创建、修改和删除操作。
- 路由表:路由表定了了VPC的路由规则,路由规则用于将目标网段的流量路由至指定的目的地,支持添加、修改自定义路由规则。
- ipv4/ipv6双栈:支持云资源同时拥有ipv4和ipv6地址,满足ipv4和ipv6环境网络访问需求。
- 虚拟IP:虚拟IP(Virtual IP Address,VIP)是一个浮动的IP地址,不会固定在指定的弹性网卡上,VIP通过绑定多个云服务器弹性网卡,同时搭配高可用软件(例如,keepalived)的ARP协议来宣告VIP和弹性网卡的绑定关系,实现高可用HA的目的,提高业务可用性。
- 弹性网卡:弹性网卡(Elastic Network Interface,ENI)即虚拟网卡,弹性网卡拥有全局唯一的MAC地址,用于绑定云服务器提供网络服务能力,虚拟网卡支持自定义活和随机指定IP地址。
- 辅助弹性网卡:辅助弹性网卡(Submission Elastic Network Intenfaces,SubENI)是弹性网卡的衍生资源,由于公有云平台对云服务器可绑定的弹性网卡有数量限制,可以通过辅助弹性网卡来解决弹性网卡数量不足的问题,使得单个云服务器可以挂载更多网卡,实现更加灵活的网络方案配置。
安全访问控制
-
安全组:安全组是一种虚拟防火墙,云平台一般是基于iptables实现,安全组具备状态检测和数据包过滤能力,用于控制安全组内云资源的流量流出和流入,从而提升云资源的安全性,安全组规则支持三元组(协议、端口和对端地址)。
-
网络ACL:网络ACL(Network Access Control List)提供VPC中的网络访问控制功能,控制VPC子网的数据流入和流出。网络ACL默认拒绝所有流量,用户需要按需配置流入和流出规则,支持五元组(源地址、目的地址、源端口、目的端口、协议),网络ACL是无状态的,需要同时配置流入和流出规则。
安全组和网络ACL功能对比
对比项 安全组 网络ACL 作用范围 对云资源实例生效 对VPC子网生效 策略对比 支持允许 支持允许和拒绝 规则生效 会评估所有安全组规则 不评估所有规则,按照规则优先级进行匹配处理 报文状态 有状态,会话建立后默认放行相同会话数据包 无状态,返回数据流必须有明确规则允许 -
IAM权限管理:用户可以利用公有云的统一身份认证管理服务(Identity and Access Management,简称IAM),对VPC进行精细化的权限管理,通过IAM权限管理,可以将VPC资源授权给其他用户管理,包括所有权限、只读权限、修改权限。
外部网络访问
-
连接其他VPC:支持用户访问其他VPC的云资源,用来满足不同VPC业务网络访问需求,主要有3种场景:
- VPC对等连接:支持通过VPC对等连接打通同账号、跨账号两个VPC之间的网络连接,实现2个VPC之间私网互通,构建互联网络。
- VPN网关:支持通过VPN网关打通跨资源池两个VPC之间的网络连接,实现2个VPC之间私网互通,构建互联网络。
- 云连接:支持通过云连接打通跨资源池两个VPC之间的网络连接,实现2个VPC之间私网互通,构建互联网络。
-
连接公网:支持用户云资源主动访问公网,获取公网资源、提供公网服务,可以通过弹性公网IP、NAT网关、弹性负载均衡等多种产品实现公网(互联网)访问。
- 弹性公网IP:有固定的IP地址,同时也是云资源访问公网的出口IP,支持共享带宽、共享流量包来降低用户成本。
- NAT网关:支持VPC内的多台云服务器共用NAT网关访问公网,支持配置SNAT和DNAT规则。
- 弹性负载均衡:基于端口提供四层和七层负载均衡能力,支持用户从公网通过弹性负载均衡访问云资源。
-
连接本地IDC:对于自建本地IDC的用户,出于存量系统、安全等因素考虑,并非所有的业务都部署在云上,因此需要搭建混合云环境,实现云上VPC和云下IDC互联;
- 专线连接:结合电信运营商的专线资源,使用物理专线将VPC和用户本地IDC连接起来,专线具备低时延、高安全、链路专用等优点,可以提供高质量的网络连接服务。
- VPN网关:基于Internet使用加密隧道将VPC和本地IDC连接起来,网络质量依赖Internet环境,网络质量和稳定性低于专线连接,但是具备低成本、配置简单、即开即用等优点,对于预算不充足、业务要求不高的用户来说,是一个性价比较高的选择。
- 云连接:将要互通的本地IDC关联的云专线加载到云连接实例中,实现跨区域的VPC、IDC互联,构建云上、云下的互通企业网。
审计和监控
云上私有网络的运维管理对用户来说至关重要,用户需要知道云上私有网络环境的稳定性和安全性,第一时间知道私有网络异常信息进行故障处理、回溯。
-
VPC流日志:可以记录VPC网络中弹性网卡ENI(Elastic Network Interface)流入和流出的网络流量信息,帮助用户监控网络流量、排查网络故障、检查访问控制规则等。捕获的流日志信息包括账号id、源地址、源端口、目的地址、目的端口、协议号等等多个参数
-
VPC流量镜像:VPC流量镜像提供流量采集功能,可以复制经过弹性网卡且符合筛选条件的网络流量,复制后的镜像流量转发给指定的目的实例,用于流量检查、网络威胁监控和问题排查等场景,镜像流量包括筛选条件、镜像源、镜像目的、镜像会话。
-
云监控:搭配公有云的云监控服务,用户可以通过云监控控制台方便的查看带宽、公网IP的流量情况,支持用户创建自定义的告警规则和通知策略,方便用户及时了解私有云的状况。
-
云审计:通过云审计,用户可以记录虚拟私有云相关的操作事件,便于日后的查询、审计和回溯。
计费模式
公有云提供弹性、按需付费的云服务,对用户来说使用云产品必须要关心产品的计费模式,是免费资源还是付费资源?
当前公有云厂商都提供免费的虚拟私有云服务,个别附加服务会进行相应的收费,具体可以参考云服务商的帮助中心,详细标注了计费模式。
免费使用
-
基础功能:私有网络、子网、路由表
-
其他功能:弹性网卡、安全组、网络ACL、HAVIP、DNS、DHCP
付费使用
- 弹性公网IP及带宽
- VPC流日志
- VPC流量镜像
- 对等连接(部分云服务商免费)
- NAT网关
- VPN网关
约束和限制
公有云服务商尽快提供了弹性、按需、可扩展的云服务资源,在实际使用中,云服务商因平台架构、资源可用量及管控需要,用户在使用云服务的过程中,会遇到这样或那样的约束和限制,主要有配额限制、性能限制、操作限制、资费生效限制,在用云阶段要重点关注。