炼数成金 门户 大数据 架构 查看内容

安全的云原生微服务架构全景图

2018-11-27 16:27| 发布者: 炼数成金_小数| 查看: 15016| 评论: 0|原作者: Pratik Jain|来自: EAWorld

摘要: 微服务架构多年来一直在发展,有许多开源组件和供应商组件可用于部署安全的微服务平台。 下面,我将把关键组件和如何管理分发所需的不同功能组合在一起,以构建和部署一个模块化的即插即用平台,您可以扩展该平台, ...

网络 管理 安全 Hadoop 架构

作者:Pratik Jain
译者:白小白 
原题:Deploying a Secure Cloud Native Microservices Platform
原文:http://t.cn/EA51syW

微服务架构多年来一直在发展,有许多开源组件和供应商组件可用于部署安全的微服务平台。

下面,我将把关键组件和如何管理分发所需的不同功能组合在一起,以构建和部署一个模块化的即插即用平台,您可以扩展该平台,并满足所有的安全需求。下面的图表看起来可能令人望而生畏,但是构建一个可伸缩的可靠平台确实需要付出一些努力。我试图尽可能地使用大多数开放源码技术,但是在某些情况下,利用商业产品(如Apigee和Cloudflare)是有意义的,因为从成本和协调的角度来自己构建这些功能可能并不值得。团队的主要重点应该是构建微服务和任何可以使其易于管理、部署、编排等的东西。其他组件对团队来说应该是透明的,只需要在用到时可以随手找到即可。


Pratik Jain:部署一个微服务平台

我们可以将整体架构主要分解为4层,以隔离平台的关键角色和职责。

1、外部架构(Outer Architecture)
这一层的主要关注点是安全性,重点是通过缩减威胁向量和攻击表面的方式,来保护您的微服务免受Bots、DDOS等外部攻击的影响,并使您具有可见性和能力来管理和监控进站流量,同时提供一些关键功能来扩展和管理您的平台入口点。

白小白:
威胁向量(threat vectors),指网络攻击的路径,如来自网络的外部攻击,来自网络(VPN)的内部攻击,来自局域网的内部攻击,来自本地系统的内部攻击等;攻击面(attack surface),指潜在安全隐患的集合,如用户输入字段、协议、接口和服务等。

外部架构有三个关键部件:
a.云接入安全代理(CASB)/Web应用防火墙(WAF)
这是您的入口点,是防火墙,可以保护您的网站/基础设施的安全,防止外部攻击,只过滤基于适当协议的有意义的流量对网站的访问,并管理基于防火墙规则的出站流量。

b.API网关(API Gateway)
访问API的中介(代理)

c.内容分发网络(CDN)
内容分发网络(CDN)提供Internet内容的快速分发,允许加载Internet内容所需资产的快速传送,包括HTML页面、Javascript文件、样式表、图像和视频。

2、内部架构(Inner Architecture)
这就是管理您的微服务所需要的,包括API管理、API安全性、服务间通信、性能、可靠性和可伸缩性,以及监视和收集度量来管理整个平台。

内部架构包括3个关键组件:
a.服务网格架构(Service mesh Architecture)
服务网格的两个主要目标是,洞察以前不可见的服务通信层,并完全控制所有微服务通信逻辑,如动态服务发现、负载平衡、超时、回退、重试、断路器、分布式跟踪和服务之间的安全策略执行。这些洞察力有赖于流量审计和跟踪功能的支撑。

b.事件管理基础设施(Event Mgmt. Infrastructure)
这一层有助于管理事件,简化微服务平台内外的通信流程。

c.微服务架构(Microservices Architecture)
这里定义了您希望基于领域驱动和行为设计方法构建微服务的粒度。第一层是您的数据编排服务,其次是领域功能服务,然后是更细粒度的数据和功能服务。

3、数据架构(Data Architecture)
这些是存储和缓存数据所需的数据存储,以及管理平台所需的数据分析、数据仓库功能。您可以根据缓存、文档数据、事务数据的需要,在这里使用具有不同功能的数据库。

4、平台管理架构(Platform Management Architecture)
定义了如何管理平台,着眼于您的内部团队和构建平台所需的各种功能,以及如何在生产环境中部署和监视相关服务。

a.开发(Development)
这是一个开发人员工具箱,帮助开发者端到端地管理API生命周期,并与DevOps功能集成,以管理您的代码库并将其交付给您的测试或生产环境。

b.DevOps
这包括您的CI/CD功能,包括构建管理、容器管理、Kubernetes Pods管理、部署、缩放和交换服务、版本控制等,以便有一个有效的管道将代码迁移到不同的环境中。

c.生产管理(Production Mgmt)
这涉及到管理您的基础设施,包括分布式跟踪、监视/警报功能、索引日志、搜索和检索日志以及查看关键指标的仪表板的能力。其中一些还可以输入您的CI/CD管道,这取决于您想要在平台中构建多少自动化和可伸缩性。

声明:文章收集于网络,如有侵权,请联系小编及时处理,谢谢!

欢迎加入本站公开兴趣群
软件开发技术群
兴趣范围包括:Java,C/C++,Python,PHP,Ruby,shell等各种语言开发经验交流,各种框架使用,外包项目机会,学习、培训、跳槽等交流
QQ群:26931708

Hadoop源代码研究群
兴趣范围包括:Hadoop源代码解读,改进,优化,分布式系统场景定制,与Hadoop有关的各种开源项目,总之就是玩转Hadoop
QQ群:288410967 

鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

即将开课

 

GMT+8, 2018-12-19 21:57 , Processed in 0.162876 second(s), 25 queries .