AICon 上海站|90%日程已就绪,解锁Al未来! 了解详情
写点什么

基于 AWS 的企业 IT 网络架构

  • 2019-12-11
  • 本文字数:3220 字

    阅读完需:约 11 分钟

基于 AWS 的企业 IT 网络架构

背景

自 2006 年 Amazon.com 推出 S3 服务以来,云计算市场已经发展了十多年。越来越多的开发者,初创公司和企业开始拥抱云计算。AWS 的云服务给企业赋能:敏捷业务开发,按需供给 IT 资源,优化 IT 成本,加速创新,并让快速全球部署成为可能[1]。



目前已经有很多企业客户采取了尽在云端或云优先的策略,把基础架构全部或大部分迁移到 AWS 云端。典型的架构是这样的:



很多承担业务负载的基础设施已经或正在从传统的 IDC 迁移到 AWS 云上。那么,企业自身的 IT 需求是否一样能享受 AWS 云的好处呢?在可预期的将来,云服务将像电一样成为标准的公共服务,IT 和业务基础设施全部在云端会变成趋势。企业的基础设施架构会变成下图的样子。



AWS Marketplace[2]已经在北京和宁夏区域上线。它提供了数量庞大的来自 AWS 合作伙伴的产品,包括安全、网络、存储、开发运营等等许多门类。购买,管理和部署这些软件变得像从应用市场下载一个 APP 到手机上一样简单。


对企业来说,上云能降低 IT 运维的压力。AWS Marketplace 进一步赋能,简化了管理和部署 IT 商业软件的过程。


接下来,我将展示 IT 上云的可能的几种基础架构形式。

基于虚拟桌面的解决方案


AWS 的虚拟桌面服务 WorkSpaces[3]已经在宁夏区域推出。企业可以在几分钟内预置桌面并快速扩展。WorkSpaces 消除了管理和运维虚拟桌面基础设施的复杂性,比传统的虚拟桌面方案更节省成本。


用户通过客户端(Mac,Windows,平板,甚至支持 Chrome 或 Firefox 的瘦客户端)远程登陆到 WorkSpaces,然后从这里访问云上的 IT 服务,或通过云端的出口访问 Internet。

基于 Proxy 的解决方案

有些企业可能暂时还不能把一些 IT 资源迁移到云上(比如目录服务等·),或者 IT 上云处于评估阶段。这种情况下,部分 IT 基础设施部署在云端,最终用户的终端仍然在办公室,采用 IT 的混合架构。


由于 VPC 的安全保护机制[4],网络流量的源 IP 地址或目标 IP 地址两者之一必须是 VPC 内部的有效 IP****地址,否则流量包将被丢弃。这样,来自企业的网络流量路由到云上再通过云上的网络出口访问 Internet 是不可行的。



解决办法就是把这个流量拆分成两部分:把来自企业的流量的目标 IP 地址变成 VPC 的有效地址,同时把流向 Internet 流量的源地址变成 VPC 的有效 IP 地址。



通常用设置代理服务器的方法就能实现这种流量拆分,不过代理服务器可能会有安全性和兼容性上的问题,有些客户端程序可能不支持代理服务器。它不能支持纯三层流量的代理,做高可用的方案会比较复杂。

隧道+NAT 方案


还有一种方案是结合隧道和 NAT 转换,通过隧道的方式把真实的目标 IP 地址封装起来,并在云上的软路由器内完成源地址的 NAT 转换。


接下来,我将在一个实验环境中对这个方案的细节进行展示。

隧道+NAT 方案实验配置


在这个实验里,AWS 北京区域用来模拟企业的物理 IDC,AWS 宁夏区域作为云,两个区域通过 VPC 对等[5]连接。北京区域的 client 要通过 VPC 对等连接到宁夏区域,并通过宁夏区域的 Internet 网关(IGW)访问 Internet。


实验中用到北京区的 2 个私有子网(无指向 IGW 的默认路由),宁夏区的 1 个公有子网(默认路由指向 IGW)。每个子网内各有一台可突增性能[6]的 T2.micro 类型的 EC2 实例,其中,router-inside 和 router-outside 在本实验中作为软件路由器,安装了 AWS Market Place 上的合作伙伴提供的镜像 VyOS[7]。VyOS 是一个基于 Linux 的开源的网络操作系统,支持基于软件的网络路由,防火墙和 VPN 等功能。


col 1col 2col 3col 4col 5
主机名区域IP****地址默认的下一跳路由器配置-
client北京192.168.3.111/24router-inside
router-inside北京192.168.4.195/24GRE
router-outside宁夏172.31.22.79/20IGWGRE, NAT


下图是 IP 包的源地址目标地址在传输过程中的变化示意图。



对于 router-inside 来说,它要做 IP 包转发,因此 EC2 设置中要禁用源/目标检查[8]。


对于 router-outside 来说,如果不做源地址 NAT 则流量会被丢弃。因为 IP 包的源地址不是宁夏区 VPC 内部的地址,目标地址也不是宁夏区 VPC 内部的地址。


宁夏区这里不能用 NAT Gateway 代替路由器的 NAT,因为它只对源地址属于本 VPC 的 IP 包进行地址转换[9]。


配置完成后,下一步是登陆到 client 来进行验证。因为 client 处于私有子网,不能直接登陆,需要从公有子网的一台实例跳转登陆。


在 client 上执行 traceroute,可以看到 IP 包经过 router-inside 和 router-outside,然后通过宁夏区的 IGW 传向 Internet。



下面是两个软路由器的详细设置:


Bash


vyos@router-inside:~$ show confinterfaces {    ethernet eth0 {        address dhcp    }    tunnel tun0 {        address 192.168.254.1/30        encapsulation gre        local-ip 192.168.4.195        remote-ip 172.31.22.79    }}protocols {    static {        route 0.0.0.0/0 {            next-hop 192.168.254.2 {            }        }        route 172.31.0.0/16 {            next-hop 192.168.4.1 {            }        }        route 192.168.0.0/21 {            next-hop 192.168.4.1 {            }        }    }}system {    host-name router-inside}vyos@router-inside:~$
复制代码


默认路由的下一跳是 GRE 隧道对端的 IP 地址 192.168.254.2,由路由器控制。


到北京 VPC 和宁夏 VPC 网段的下一跳是路由器 router-inside 所在子网(192.168.4.0/24)的默认网关 192.168.4.1,由 VPC 控制。


Bash


vyos@router-outside:~$ show confinterfaces {    ethernet eth0 {        address dhcp    }    tunnel tun0 {        address 192.168.254.2/30        encapsulation gre        local-ip 172.31.22.79        remote-ip 192.168.4.195    }}nat {    source {        rule 100 {            outbound-interface eth0            source {                address 192.168.0.0/16            }            translation {                address masquerade            }        }    }}protocols {    static {        route 192.168.0.0/21 {            next-hop 192.168.254.1 {            }        }        route 192.168.4.195/32 {            next-hop 172.31.16.1 {            }        }    }}system {    host-name router-outside}vyos@router-outside:~$
复制代码


对所有来自北京 VPC 的 IP 包进行了源地址 NAT,变成路由器的接口地址。


到北京 VPC 网段的下一跳是 GRE 隧道对端的 IP 地址 192.168.254.1,由路由器控制。


到路由器 router-inside 的下一跳是路由器 router-outside 所在子网(172.31.16.0/20)的默认网关 172.31.16.1,由 VPC 控制。

总结

本文介绍了企业通过 AWS 云构建 IT 基础环境的 3 种方法,并对基于隧道+NAT 的方法给出了利用 AWS Market Place 上的 VyOS 镜像进行实验的配置方法。

参考资料

  1. https://infrastructure.aws/

  2. https://www.amazonaws.cn/marketplace/help/

  3. https://www.amazonaws.cn/workspaces/

  4. https://aws.amazon.com/answers/networking/vpc-security-capabilities/

  5. https://docs.amazonaws.cn/vpc/latest/peering/what-is-vpc-peering.html

  6. https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/burstable-credits-baseline-concepts.html

  7. https://vyos.readthedocs.io/en/latest/about.html

  8. https://docs.aws.amazon.com/zh_cn/vpc/latest/userguide/VPC_NAT_Instance.html#EIP_Disable_SrcDestCheck

  9. https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html


作者介绍:


!



### [](https://amazonaws-china.com/cn/blogs/china/tag/%E5%96%BB%E4%BA%AE/)
AWS解决方案架构师,负责AWS云计算方案的咨询、设计和架构评估。在运维,DevOPS和DBA方面有十余年经验,目前侧重于大数据领域的研究。
复制代码


本文转载自 AWS 技术博客。


原文链接:https://amazonaws-china.com/cn/blogs/china/enterprise-it-network-architecture-based-on-aws/


2019-12-11 15:24884

评论

发布
暂无评论
发现更多内容

如何在线绘制流程图?3个简单易用的AI画图软件盘点!

职场工具箱

人工智能 流程图 办公软件 AIGC 绘图软件

鸿蒙操作系统HarmonyOS NEXT中级开发环境搭建与会议记录APP开发

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT中级开发环境搭建与健康管理APP开发

yimapingchuan

HarmonyOS NEXT

Kong 可观测性最佳实践

观测云

kong

AI驱动下软件市场的4块蛋糕

深清秋

AI coding

机器人的眼眸中,vivo看见了怎样的未来?

脑极体

AI

HarmonyOS NEXT 中级开发环境搭建与应用程序开发:从零开始构建资讯类深度分析APP

yimapingchuan

HarmonyOS NEXT

AI 网关需要具备的 10 大基本能力

阿里巴巴云原生

阿里云 云原生 AI网关

SvelteKit 最新中文文档教程(11)—— 部署 Netlify 和 Vercel

冴羽

Vue 前端 React Svelte SvelteKit

HarmonyOS NEXT 中级开发环境搭建与体育竞技类应用开发

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT 中级开发环境搭建与旅游攻略APP开发

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT 中级开发环境搭建与实时天气应用开发

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT 中级开发环境搭建与运动健康类应用开发实战

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT 中级开发环境搭建与汽车智驾类应用开发

yimapingchuan

HarmonyOS NEXT

鸿蒙操作系统HarmonyOS NEXT中级开发环境搭建与房产装修类APP开发

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT 中级开发环境搭建与外语课程APP开发

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT 中级开发环境搭建与音乐畅听类 K歌唱吧 APP 开发

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT 中级开发环境搭建:启智儿歌 APP 开发实战

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT 中级开发环境搭建与新闻快讯类应用开发

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT 中级开发环境搭建与工具效率类应用开发

yimapingchuan

HarmonyOS NEXT

VMware Tools 12.5.1 下载 - 客户机操作系统无缝交互必备组件

sysin

vmware

AI Agent:构建以数据为中心的智能体

阿里巴巴云原生

阿里云 云原生

HarmonyOS NEXT 中级开发环境搭建与记账类APP开发

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT 中级开发环境搭建:打造时尚团购APP的全流程解析

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT 中级开发环境搭建与美颜拍照APP开发

yimapingchuan

HarmonyOS NEXT

HarmonyOS NEXT 中级开发环境搭建与阅读类APP开发

yimapingchuan

HarmonyOS NEXT

【经验】几种数据库优化技巧

不在线第一只蜗牛

数据库

鸿蒙操作系统HarmonyOS NEXT中级开发环境搭建与政务服务类APP开发

yimapingchuan

HarmonyOS NEXT

用户标签与画像,精准运营更进一步 - ClkLog 埋点分析系统

ClkLog

开源 埋点 sdk 行为分析 画像

因为懒得点鼠标,我给B站做了个语音助手

JYeontu

前端 JavaScrip 浏览器插件 浏览器脚本插件 #前端

HarmonyOS NEXT 中级开发环境搭建与聊天社交类应用开发

yimapingchuan

HarmonyOS NEXT

基于 AWS 的企业 IT 网络架构_文化 & 方法_AWS_InfoQ精选文章