阿里云运维架构实践秘籍--系统技术选型
云端网络的三种选型策略
云端可选的网络架构包括:
- 经典网络。当前阿里云已经不支持选用经典网络,以前已经选择经典网络的老客户还继续支持。
- VPC专有网络
- 金融云网络。金融云网络也是基于VPC的专有网络,只不过在此基础上加入了很多安全规则及限制保障更高的安全性需求。
经典网络与VPC专有网络区别?
经典网络采用三层(网络层,即IP层)隔离,所有的经典网络类型实例都建立在一个共用的基础网络上。
VPC采用二层隔离(数据链路层),相对经典网络而言,VPC具有更高的安全性和灵活性。
经典网络与VPC专有网络的技术特点对比如下:
- 网段方面
经典网络的内网IP是以10开头的随机IP,且内网IP只能随机分配,不能自定义。
而在VPC网络中,每个客户都是独立的网络环境。客户可以自定义网络的IP段、网络架构等。
- 网卡方面
经典网络绑定公网的ECS(Linux系统),系统中网卡是两个网卡。eth0是内网网卡,eth1是公网网卡。如果没有绑定公网,则经典网络仅有一个内容eth0。经典网络下,只能在开通ECS的时候选择绑定公网,如若开通ECS的时候没有绑定公网,开通后没办法在绑定公网。还有一点是在ECS中设置防火墙,因为经典网络的公网IP在eth1上,直接对eth1进行设置iptables -i eth1即可
而VPC网络,即使绑定了弹性IP的ECS网卡也只有一个eth0,即不管有没有绑定弹性IP,VPC网络的ECS仅有一个eth0网卡(绑定弹性IP的时候,公网数据是通过阿里云内部NAT的方式流转到ECS的eth0网卡上的)。VPC网络可以随时绑定EIP,灵活性非常高,不需要时可以随时解绑,非常适合经常更换公网IP的业务。对于VPC网络的ECS设置防火墙,因为公网流量和内网流量都是经过eth0的网卡,因此做IPtables规则比较麻烦。
- 网络隔离方面
经典网络客户和客户之间的数据通过安全组三层隔离。如果需要互通,安全组配置互访规则即可。
VPC和VPC之间默认三层隔离(不管是阿里云账号下的不同VPC还是不同阿里云账号下的VPC),如果需要互通则只能走高速通道(专线)。
经典网络仅支持DNAT,不支持SNAT,而VPC网络却能支持DNAT和SNAT。
VPC连接方式
连接公网
- ECS固定公网IP
- 弹性公网IP(EIP)
- 公网NAT网关
- 负载均衡
连接VPC
- 云企业网
- VPN网关
连接本地IDC
- 高速通道
- VPN网关
- 云企业网
- 智能接入网关
网络规划
在创建VPC和交换机前,您需要结合具体的业务规划VPC与交换机的数量以及VPC与交换机的网段等。
- 应该使用几个VPC?
- 应该使用几个交换机?
- 应该选择什么网段?
- VPC与VPC互通或VPC与本地数据中心互通有什么要求?
应该使用几个VPC?
多地域部署系统或各系统之间需要通过VPC进行严格隔离则需要多个VPC,否则推荐使用一个VPC即可。
应该使用几个交换机?
使用一个VPC时,也请尽量使用至少两个交换机,并且将两个交换机分布在不同可用区,这样可以实现跨可用区容灾。
应该选择什么网段?
您可以使用10.0.0.0/8、172.16.0.0/12或192.168.0.0/16三个RFC标准私网网段及其子网作为VPC的私网地址范围。
VPC与VPC互通或VPC与本地数据中心互通有什么要求?
- VPC可以使用标准网段的子网来增加VPC可用的网段数,请尽量做到不同VPC的网段不同。
- 如果不能做到不同VPC的网段不同,则尽量保证不同VPC的交换机网段不同。
- 如果不能做到不同VPC的交换机网段不同,则保证要通信的交换机网段不同。
专有网络和交换机
交换机(vSwitch)是组成专有网络的基础网络设备,用来连接不同的云资源实例。专有网络是地域级别的资源,专有网络不可以跨地域,但包含所属地域的所有可用区。您可以在每个可用区内创建一个或多个交换机来划分子网。
VPC访问控制概述
网络ACL
网络ACL是VPC中的网络访问控制功能。您可以自定义设置网络ACL规则,并将网络ACL与交换机绑定,实现对交换机中ECS实例的流量的访问控制。
ECS安全组
安全组是一种虚拟防火墙,具备状态检测和数据包过滤能力,用于在云端划分安全域。通过配置安全组规则,您可以控制安全组内一台或多台ECS实例的入流量和出流量。
RDS白名单
在VPC中使用云数据库RDS实例,需要将云服务器的IP地址加入到需要访问的RDS白名单中,云服务器才能访问RDS实例,而其他IP地址将拒绝访问RDS实例。
SLB白名单
负载均衡是将访问流量根据转发策略分发到后端多台云服务器的流量分发控制服务,您可以为负载均衡监听设置允许转发请求的IP地址,适用于至允许特定IP访问应有的场景。
云端存储的四种类型
数据的结构类型一版有以下3种:
- 结构化数据:类似包含预定义的数据类型、格式和结构的数据,常见的如关系型数据库中的数据表里的数据。
- 半结构化数据:具有可识别的模式并且可以解析的文本数据文件,比如XML数据文件、JSON数据文件
- 非结构化数据:顾名思义没有固定结构的数据,通常为不同类型的文件,比如文本文档、图片、视频、日志文件、代码文件等。
跟进以上3中数据结构,云端存储的产品类型主要分为以下两大类:
- 数据库类云产品(主要为云RDS、云MongoDB、云Redis、云Memcache)主要用于解决结构化数据及半结构化数据的持久化存储的问题。
- 块存储(云盘)、共享块存储(共享云盘)、共享文件存储、OSS对象存储主要用于解决非结构化数据的持久化存储问题。
类型一:块存储
云盘的三副本技术能保障数据的高可用性。数据在同一地域不同可用区(不同机房)多份存储冗余,不用担心底层由于物理硬件的问题而丢失数据,并且基于底层多副本冗余,云盘还提供了快照、镜像(主要针对系统盘)的备份,这让磁盘的备份更加方便灵活。
类型二:共享块存储
共享块存储产品本身不提供集群文件系统,需要自行安装集群文件系统来管理共享块存储。
类型三:共享文件存储
NFS、NAS
类型四:对象存储
OSS
云端缓存
静态缓存常用技术:squid、varnish、nginx、云端CDN
云端动态缓存,redis、memcache