今天我们来聊聊云原生,这两年,关于云原生的讨论如同雨后春笋般密集生长, 清新又不失清甜。关于云原生的定义在业界中一直存在“ 百家争鸣 ”的各持观点的现象,没有统一的解
今天我们来聊聊云原生,这两年,关于云原生的讨论如同雨后春笋般密集生长, 清新又不失清甜。关于云原生的定义在业界中一直存在“百家争鸣”的各持观点的现象,没有统一的解释。但这并不妨碍我们更好地了解它。
01 什么是云?此云非彼云,云即云。说人话......
如同象征意义,云是网络、互联网的一种比喻说法。指你作为接受服务的对象,是云端,不管你在何时何地,都能享受云计算提供的服务。云服务分为私有云、公有云、混合云及行业云等等。
02 为什么要上云? 冲上云端很舒坦但殊不知,高处不胜寒。不是每朵云都那么好驾驭。
03 所以什么是云原生?“云”表示应用程序运行于分布式云环境中,“原生”则是为云设计的,表示应用程序在设计之初就充分考虑到了云平台的弹性和分布式特性。云原生,就是一种能充分利用云计算优势对应用程序进行设计、实现、部署、交付和操作的应用架构方法。
然而,随着技术的不断发展,迭代和更新,不同组织和公司对于云原生的理解不尽相同。云原生计算基金会(CNCF)对云原生的概念有更广泛的定义——
相较于传统IT架构,云原生的最大价值和愿景,就是认为未来的软件会从诞生起就生长在云上,并且遵循一种新的软件开发、发布和运维模式,从而使得软件能够最大化地发挥云的能力。
04 云原生的作用利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。
以上这些关键技术能够构建容错性好、易于管理和便于观察的松耦合系统,结合可靠的自动化手段,轻松地对系统作出频繁和可预测的重大变更。
所以回到最开始的问题,因为云本身具有可见和不可预见的弊端,所以大佬们开发出了因云而生的技术应用,即云原生。充分地发挥云的优势,在云上以最佳的方式运行。
那么云原生安全的问题又该如何解决呢?
05 云原生安全问题 面对快速开发和部署的迫切需要,基于边界的传统安全保障显得力不从心。为适应云原生应用的规模扩展以及快速变化,要求使用面向安全的架构设计,云原生安全构建在云原生应用开发、发布、部署、运行的整个生命周期中,涉及云(Cloud)、集群(Cluster)、容器(Container)和代码(Code)等不同层级的安全性建设。 PKI技术及数字证书应用能够提供身份证明、数字签名、数据加解密等安全能力,为云原生应用实现机密性、完整性、真实性、抗抵赖性等安全特性。 容器编排系统组件通信安全、服务网格数据传输加密、微服务架构下的认证管理等都需要涉及证书应用。以Kubernetes为例,Kubernetes(也被称为K8s)是Google于2014年6月开源出来的容器编排调度引擎,用于管理云平台中多个主机上的容器化的应用, 让部署容器化的应用简单并且高效。 Kubernetes中包含多个以独立进程形式运行的组件, 这些组件之间通过HTTP/gRPC 相互通信,在进行网络通信时,通信双方需要验证对方的身份,以避免恶意第三方伪造身份窃取信息或者对系统进行攻击。因此,Kubernetes 需要 PKI 证书才能通过 TLS 进行身份验证。