K8S原理剖析:云原生技术的前世今生

简介: K8S原理剖析:云原生技术的前世今生

大纲

  • CNCF云原生介绍
  • 容器技术发展介绍
  • Kubernetes技术架构


CNCF云原生介绍

CNCF ToC: CNCF Cloud Native Definition v1.0

云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建

和运行可弹性扩展的应用。云原生的代表技术包括容器、 服务网格、 微服务、
不可变基础设施和声明式API。

这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的

自动化手段,云原生技术使工程师能够轻松地对系统作出频繁和可预测的重大

变更。

云原生计算基金会( CNCF)致力于培育和维护一个厂商中立的开源生态系统

来推广云原生技术。我们通过将最前沿的模式民主化,让这些创新为大众所用。


云计算的发展历程

“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。这种特性经常被称为像水电一样使用IT基础设施。

云计算的发展历程


云计算伴随云原生技术步入新时代

云计算伴随云原生技术步入新时代


容器是云原生技术发展的第一波热潮

容器是云原生技术发展的第一波热潮


容器服务的目标就是打造Cloud Native应用的运行环境

容器服务的目标就是打造Cloud Native应用的运行环境


CNCF当前项目介绍

CNCF当前项目介绍

CNCF当前项目介绍

CNCF当前项目介绍


容器技术发展介绍

容器技术发展历史

容器虚拟化( LXC) :提供应用隔离运行的能力;

Docker:基于容器提供统一的应用分发平台

容器技术发展历史


容器的三大好处, 为应用而生

容器的三大好处, 为应用而生


Docker – Build, Ship, and Run Any App, Anywhere

Docker – Build, Ship, and Run Any App, Anywhere

 

容器底层关键技术 - Linux Cgroup

Docker使用Linux Cgroup技术来实现容器实例的资源管理

cgroup子系统 资源管理 对应的docker接口
memory 限制cgroup中的任务所能使用的内存上限 -m
--memory-swap
--memory-reservation
--kernal-memory
--oom-kill-disable
--memory-swappiniss
cpu 使用调度程序提供对CPU的cgoup任务访问 -c
--cpu-period
--cpu-quota
Cpuset 为cgroup中的任务分配独立CPU和内存节点 --cpuset-cpus
--cpuset-mems
Blkio 为块设备设定输入/输出限制 --blkio-weight
--blkio-weight-device
--device-read-bps
--device-write-bps
--device-read-iops
--device-write-iops


容器底层关键技术 - Linux Namespace

Docker使用linux namespace技术来实现容器实例间的资源隔离

Namespace 系统调用参数 隔离内容
PID namespace CLONE_NEWPID 隔离不同用户的进程,不同的namespace中可以有相同的pid。
允许嵌套,可以方便实现docker in docker
UTS namespace CLONE_NEWUTS 允许每个容器拥有独立的hostname和domain name,使其在网络上可
以被视为独立的节点。
IPC namespace CLONE_NEWIPC 保证容器间的进程交互,进行信号量、消息队列和共享内存的隔离。
Network namespace CLONE_NEWNET 实现网络隔离,每个net namespace有独立的network devices、 ip
addresses、 ip routing tables、 /proc/net目录。
Mount namespace CLONE_NEWNS 隔离不同namespace的进程看到的目录结构,每个namespace的容器在
/proc/mounts的信息只包含所在namespace的mount point。
User namespace CLONE_NEWUSER 允许每个容器可以有不同的user和group id


容器底层关键技术 – 联合文件系统

容器底层关键技术 – 联合文件系统

概念:一个基于文件的接口,通过把一组目录交错起来,形成一个单一视图。

优点:

1、多个容器可以共享image存储,节省存储空间;

2、部署多个容器时, base image可以避免多次拷贝,实现快速部署;

Docker目前支持的联合文件系统种类包括devicemapper、 overlay2、 aufs、 btrfs、 vfs和


新一代Kata容器实现多租户容器强隔离

新一代Kata容器实现多租户容器强隔离

  • 虚拟化层的存在,保障了容器在多租户场景下的安全性。
  • 高度裁剪和优化过的KVM, guest OS保证了VM启动时间极短,性能损耗极小。
  • 接口层支持对接docker引擎或crio,镜像完全兼容docker镜像,无需修改。完美融入K8S容器生态。


Kubernetes技术架构

什么是Kubernetes?

什么是Kubernetes?

Kubernetes系统组件

Kubernetes系统组件


Kubernetes架构

Kubernetes架构

Declarative (申明式API) vs Imperative (命令式API)

Declarative (申明式API) vs Imperative (命令式API)

 

Declarative (申明式API) vs Imperative (命令式API)


Kubernetes Controllers

Kubernetes Controllers


Kubernetes基于list-watch机制的控制器架构

 

Kubernetes基于list-watch机制的控制器架构


Kubernetes架构分层


K8S社区架构中对各层的详细定


Kubernetes生态系统范畴

• 容器内 – 多样化工作负载

• K8S南向 – 多样化的环境

– 容器、网络、存储插件

– 镜像仓库

– 多云插件

– 集群管理配置

– 认证系统

• K8S北向 – 多样化的服务和工具

– 日志&监控

– 配置语言

– 编排部署

– 持续集成

– PaaS

– 工作流

– 函数服务

– 数据处理服务

– 对象事务服务 (数据库、存储)

– 互联网应用

 


相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
19天前
|
监控 Cloud Native Java
Quarkus 云原生Java框架技术详解与实践指南
本文档全面介绍 Quarkus 框架的核心概念、架构特性和实践应用。作为新一代的云原生 Java 框架,Quarkus 旨在为 OpenJDK HotSpot 和 GraalVM 量身定制,显著提升 Java 在容器化环境中的运行效率。本文将深入探讨其响应式编程模型、原生编译能力、扩展机制以及与微服务架构的深度集成,帮助开发者构建高效、轻量的云原生应用。
117 44
|
3月前
|
运维 Kubernetes Cloud Native
智联招聘 × 阿里云 ACK One:云端弹性算力颠覆传统 IDC 架构,打造春招技术新范式
在 2025 年春季招聘季的激战中,智联招聘凭借阿里云 ACK One 注册集群与弹性 ACS 算力的深度融合,成功突破传统 IDC 机房的算力瓶颈,以云上弹性架构支撑千万级用户的高并发访问,实现招聘服务效率与稳定性的双重跃升。
|
4月前
|
人工智能 Cloud Native 安全
云原生+AI 为企业出海提供全新技术引擎!明天见
5月22日 14:00「飞天发布时刻」,阿里云云原生应用平台产品负责人李国强将重磅揭晓面向 AI 场景的云原生产品体系升级,通过弹性智能的全球一体化架构、开箱即用的云原生 AI 工程化能力,为中国企业出海提供全新技术引擎。
|
8月前
|
消息中间件 存储 Cloud Native
云消息队列 Kafka 版 V3 系列荣获信通院“云原生技术创新标杆案例”
2024 年 12 月 24 日,由中国信息通信研究院(以下简称“中国信通院”)主办的“2025 中国信通院深度观察报告会:算力互联网分论坛”,在北京隆重召开。本次论坛以“算力互联网 新质生产力”为主题,全面展示中国信通院在算力互联网产业领域的研究、实践与业界共识,与产业先行者共同探索算力互联网产业未来发展的方向。会议公布了“2024 年度云原生与应用现代化标杆案例”评选结果,“云消息队列 Kafka 版 V3 系列”荣获“云原生技术创新标杆案例”。
232 94
|
5月前
|
Cloud Native 关系型数据库 分布式数据库
|
6月前
|
存储 关系型数据库 分布式数据库
登顶TPC-C|云原生数据库PolarDB技术揭秘:单机性能优化篇
阿里云PolarDB云原生数据库在TPC-C基准测试中,以20.55亿tpmC的成绩打破性能与性价比世界纪录。此外,国产轻量版PolarDB已上线,提供更具性价比的选择。
|
5月前
|
存储 关系型数据库 分布式数据库
|
6月前
|
Cloud Native 关系型数据库 分布式数据库
登顶TPC-C|云原生数据库PolarDB技术揭秘:Limitless集群和分布式扩展篇
阿里云PolarDB云原生数据库在TPC-C基准测试中以20.55亿tpmC的成绩刷新世界纪录,展现卓越性能与性价比。其轻量版满足国产化需求,兼具高性能与低成本,适用于多种场景,推动数据库技术革新与发展。
|
5月前
|
存储 关系型数据库 分布式数据库
|
4月前
|
存储 缓存 分布式计算
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
本文将深入探讨基于 StarRocks 和 Iceberg 构建的云原生湖仓分析技术,详细解析两者结合如何实现高效的查询性能优化。内容涵盖 StarRocks Lakehouse 架构、与 Iceberg 的性能协同、最佳实践应用以及未来的发展规划,为您提供全面的技术解读。 作者:杨关锁,北京镜舟科技研发工程师
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践

热门文章

最新文章

推荐镜像

更多