云原生安全的第一篇笔记,一些概念性的东西划划水,大概认知一下(
一些名词
不做过多解释,只是粘贴一些概念性的定义(都是很基础的概念知识了)
容器
Docker
Docker 是一个开放源代码软件,是一个开放平台,用于开发应用、交付(shipping)应用、运行应用。Docker允许用户将基础设施(Infrastructure)中的应用单独分割出来,形成更小的颗粒(容器),从而提高交付软件的速度。
Docker 容器与虚拟机类似,但二者在原理上不同,容器是将操作系统层虚拟化,虚拟机则是虚拟化硬件,因此容器更具有便携性、高效地利用服务器。
容器编排
容器编排(Container Orchestration)是指自动化容器的部署、管理、扩展和联网,容器编排可以为需要部署和管理成百上千个 Linux 容器和主机的企业提供便利。
以下是 Sysdig 在 2021 年给出的容器编排工具流行度图表,可以看到 Kubernetes 可谓是一骑绝尘。

无服务
无服务(Serverless)是一种云原生开发模型,可使开发人员专注构建和运行应用,这并不是说没有服务器,而是说开发者不用去管服务器只负责开发就行。
无服务计算产品通常被分为两类,分别是后端即服务(BaaS)和函数即服务(FaaS),其中 FaaS 是 Serverless 的主要实现方式,FaaS 的相关产品主要有 AWS 的 Lambda、Azure 的 Functions Serverless Compute、GCP 的 Firebase Cloud Functions、阿里云的 Function Compute 等。
微服务
微服务(Microservices)是一种软件架构风格,它是以专注于单一责任与功能的小型功能区块为基础,利用模块化的方式组合出复杂的大型应用程序,各功能区块使用与语言无关的API集相互通信。
如果具体的想了解微服务是什么可以看知乎上的这个帖子:https://www.zhihu.com/question/65502802
服务网格
服务网格(Service Mesh)用于控制应用的不同部分之间如何共享数据,服务网格内置于应用程序中的专用基础架构层,这个可见的基础架构层可以记录应用的不同部分是否能正常交互。
在服务网格中,请求将通过所在基础架构层中的代理在微服务之间路由,构成服务网格的各个代理有时被称为”sidecar”
如果没有服务网格,每项微服务都需要进行逻辑编码,才能管理服务间通信,这会导致开发人员无法专注于业务目标,同时,这也意味着通信故障难以诊断,因为管理服务间通信的逻辑隐藏在每项服务中。
云原生安全
云原生
//此处定义粘贴自网络
云原生(Cloud Native)可以拆分成「云」和「原生」去看。
「云」相对的就是本地,传统应用都跑在本地服务器上,而云则表示跑在云服务器上。
「原生」则可以简单的理解成出生地的意思,放在云环境中所表达的意思就是:在把应用跑到云服务器上时,应该充分的利用云自身的特点,比如弹性和分布式优势。
如果只是简单的把原来本地跑的业务放到云上,高举“上云”大旗,那只能叫做“拆迁户”,不能叫做云原生;当“上云”的风潮过去后,开始出现了直接就部署在云上的业务,这些业务完全按照“云”的特点去设计,这种是“云”的原住民,可以叫做云原生。
安全问题
云原生安全包含了
微服务安全,无服务安全,编排平台安全,服务网格安全,容器安全,以及和传统安全不可分割的宿主机安全
容器安全和编排系统安全之外的都可以笼统的归类为云原生应用安全
棒棒棒