1. k8s的简介

news2025/4/19 16:50:09

Kubernetes(k8s)简介

1. 产生背景

随着云计算和微服务架构的兴起,传统的单体应用逐渐被拆分为多个小型、松耦合的服务(微服务)。这种架构虽然提升了开发灵活性和可维护性,但也带来了新的挑战:
部署复杂性:成百上千的微服务需要独立部署、扩展和监控。
资源管理:如何高效利用服务器资源,避免资源浪费?
高可用性:如何确保服务在故障时自动恢复?
跨环境一致性:开发、测试、生产环境如何保持一致?

Google 的实践经验
Google 内部早在 2000 年代初期就面临大规模服务管理的难题,并开发了名为 Borg 的集群管理系统(用于管理数十亿容器的运行)。2014 年,Google 将 Borg 的核心思想开源,推出了 Kubernetes(意为“舵手”或“飞行员”),并将其捐赠给 CNCF(云原生计算基金会)

Kubernetes 的目标是提供一套标准化的容器编排方案,解决分布式系统的运维痛点。


2. Kubernetes 与 Docker 的关系
(1) Docker 的定位

Docker 是容器化技术的代表,解决了应用打包和环境一致性问题:
容器化:将应用及其依赖(如库、配置文件)打包成轻量级、可移植的容器镜像。
环境一致性:开发者的本地环境与生产环境完全一致,避免“在我机器上能跑”的问题。

(2) Kubernetes 的定位

Docker 解决了单个容器的运行问题,但在大规模场景中仍需解决:
容器调度:成百上千的容器如何分配到服务器?
服务发现:容器动态扩缩容时,如何自动更新网络配置?
故障自愈:容器崩溃后如何自动重启?
滚动更新:如何实现零停机更新?

Kubernetes 的作用
Kubernetes 是容器编排平台,负责管理 Docker 容器的 生命周期,包括部署、扩缩容、网络、存储等。
关系比喻
• Docker 是“集装箱”,负责封装货物(应用)。
• Kubernetes 是“港口调度系统”,负责决定集装箱放在哪艘船(服务器)、如何运输(网络)、何时补充货物(扩缩容)。

(3) 技术栈的演进

Docker 单机模式:手动启动容器,适合简单场景。
Docker Compose:单机多容器编排,适合本地开发。
Kubernetes:跨节点、跨集群的容器编排,适合生产环境。


3. Kubernetes 的核心功能
  1. 自动化部署与扩缩容
    • 根据 CPU/内存使用率或自定义指标自动调整副本数量(HPA)。
    • 示例:电商大促时自动扩容后端服务以应对流量高峰。

  2. 服务发现与负载均衡
    • 通过 Service 和 Ingress 暴露服务,自动分配 IP 和 DNS 名称。
    • 示例:前端应用通过服务名 user-service 访问后端,无需关心具体 IP。

  3. 存储编排
    • 支持动态挂载云存储(如 AWS EBS、NFS),解决容器数据持久化问题。
    • 示例:数据库容器的数据卷在 Pod 重启后仍保留。

  4. 自我修复
    • 自动重启崩溃的容器、替换故障节点、重新调度 Pod。
    • 示例:某节点宕机后,其上的 Pod 会被迁移到健康节点。

  5. 密钥与配置管理
    • 通过 ConfigMap 和 Secret 集中管理配置和敏感信息。
    • 示例:数据库密码通过 Secret 注入,而非硬编码在代码中。

  6. 批处理任务
    • 支持一次性任务(Job)和定时任务(CronJob)。
    • 示例:每天凌晨执行数据备份任务。


4. 主要应用场景
(1) 微服务架构

场景特点:大量小型服务独立部署、通信复杂。
K8s 优势
• 服务间通过 Service 通信,自动负载均衡。
• 每个服务可独立扩缩容,提升资源利用率。

(2) 持续交付与 DevOps

场景特点:频繁发布新版本,需快速迭代且不影响用户体验。
K8s 优势
• 滚动更新(Rolling Update)实现零停机部署。
• 与 CI/CD 工具(如 Jenkins、GitLab CI)无缝集成。

(3) 混合云与多云部署

场景特点:业务需跨公有云(AWS、Azure)和私有云运行。
K8s 优势
• 提供一致的部署和管理接口,避免云厂商锁定。
• 示例:在 AWS 和本地数据中心同时运行服务。

(4) 大规模应用管理

场景特点:成千上万的容器需要高效调度。
K8s 优势
• 优化资源分配,提高服务器利用率。
• 自动处理节点故障,保障业务连续性。

(5) 高可用与灾备

场景特点:关键业务需 24/7 稳定运行。
K8s 优势
• 跨可用区(AZ)部署 Pod,避免单点故障。
• 自动检测并替换不健康的实例。


5. 实际案例
  1. Spotify
    • 音乐流媒体平台,使用 Kubernetes 管理 1000+ 微服务,实现快速迭代和全球部署。
  2. Airbnb
    • 从单体架构迁移到微服务,依赖 Kubernetes 处理每日数亿次请求。
  3. Adidas
    • 通过 Kubernetes 在混合云环境中运行电商平台,支撑“黑五”大促流量。

6. 总结

Kubernetes 的定位:容器编排的事实标准,解决分布式系统复杂性的核心工具。
与 Docker 的关系:互补而非替代,Docker 负责“容器化”,Kubernetes 负责“规模化”。
适用场景:微服务、CI/CD、混合云、大规模应用、高可用系统等。

通过 Kubernetes,企业可以专注于业务逻辑,而非底层基础设施的运维细节,真正实现“云原生”。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2337417.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MGR实现mysql高可用性

一。MGR和PXC的区别 1. PXC的消息广播机制是在节点间循环的,需要所有节点都确认消息,因此只要有一个节点故障,则会导致整个PXC都发生故障。而MGR则是多数派投票模式,个别少数派节点故障时,一般不影响整体的可用性。这…

新型多机器人协作运输系统,轻松应对复杂路面

受到鱼类、鸟类和蚂蚁等微小生物体协作操纵的启发,研究人员开发了多机器人协作运输系统(Multirobot Cooperative Transportation Systems,MRCTS)运输单个机器人无法处理的重型超大物体,可用于搜救行动、灾难响应、军事…

【秣厉科技】LabVIEW工具包——OpenCV 教程(19):拾遗 - imgproc 基础操作(上)

文章目录 前言imgproc 基础操作(上)1. 颜色空间2. 直方图3. 二值化4. 腐蚀、膨胀、开闭运算5. 梯度与轮廓6. 简易绘图7. 重映射 总结 前言 需要下载安装OpenCV工具包的朋友,请前往 此处 ;系统要求:Windows系统&#x…

学习笔记:金融经济学 第3讲

学习笔记:金融经济学 第3讲 注:A本金,n时间(比如年),r利率一、 计算习惯1. 单息(新产生的利息不算进本金重新计算利息,收款额A(1nr) )2. 复利(新产生的利息算进本金重新计…

NVIDIA RTX™ GPU 低成本启动零售 AI 场景开发

零售行业正在探索应用 AI 升级客户体验,同时优化内部流程。面对多重应用场景以及成本优化压力,团队可采用成本相对可控的方案,来应对多重场景的前期项目预演和落地,避免短期内大规模投入造成的资源浪费。 客户体验 AI 场景的研究…

【网络】IP层的重要知识

目录 1.IP层的作用 2.主机和节点 3.网络层和数据链路层的关系 4.路由控制 4.1.路由控制的过程 4.2. IP地址与路由控制 4.3.路由控制表的聚合 4.4.静态路由和动态路由 4.5.动态路由的基础 5.数据链路的抽象化 5.1.数据链路不同,MTU则相异 5.2.路径MTU发…

OpenCV 模板匹配方法详解

文章目录 1. 什么是模板匹配?2. 模板匹配的原理2.1数学表达 3. OpenCV 实现模板匹配3.1基本步骤 4. 模板匹配的局限性5. 总结 1. 什么是模板匹配? 模板匹配(Template Matching)是计算机视觉中的一种基础技术,用于在目…

一键解锁Landsat 9地表温度计算!ENVI与ArcGIS Pro全流程详解(无需NASA大气校正)

为什么选择Landsat 9的L2SP数据? 之前:《ArcGIS与ENVI——基于landsat与Modis影像的遥感技术的生态环境质量评价》,基于Landsat前期的产品计算温度反演数据需要一系列复杂的步骤。 现在: Landsat 8-9的Collection 2 Level-2&…

RK3588的linux下实现HDMI输出分辨率及帧率的裁剪

bug反馈:客户现场反馈hdmi接显示屏出现概率性闪黑屏,排除线材,显示屏及GND等外部因素后,提出尝试降低hdmi的输出分辨率和帧率对比测试看看。 Step1:先直接在linux的sdk中找到板卡编译生成后的dts找到hdmi节点 然后找到…

XR技术赋能艺术展演|我的宇宙推动东方美学体验化

本次广州展览现场引入我的宇宙XR体验模块,通过空间计算与动作捕捉技术,让观众在潮玩艺术氛围中体验虚拟互动,打造“看得懂也玩得动”的展演新场景。 作为科技与文化融合的推动者,我的宇宙正在以“体验科技”为媒介,为潮…

多线程进阶知识篇(二)

文章目录 一、Synchronized 锁二、ReentrantLock 锁三、两阶段终止阶段一:通知终止阶段二:响应中断 四、线程池为什么要使用线程池?如何创建线程池?ExecutorsThreadPoolExecutor 线程池的基本参数 五、线程池处理任务的流程 一、S…

Python深度学习基础——深度神经网络(DNN)(PyTorch)

张量 数组与张量 PyTorch 作为当前首屈一指的深度学习库,其将 NumPy 数组的语法尽数吸收,作为自己处理张量的基本语法,且运算速度从使用 CPU 的数组进步到使用 GPU 的张量。 NumPy 和 PyTorch 的基础语法几乎一致,具体表现为&am…

简单实现单点登录

单点登录 单点登录(Single Sign-On, SSO) SSO是一种统一身份认证技术,用户只需在认证平台登录一次,即可访问所有关联的应用程序或网站,无需重复输入凭据。例如,企业员工登录内部系统后,可直接…

02、GPIO外设(一):基础知识

基础知识 1、ZET6的引脚分布2、引脚输出3、引脚输入4、最大输出速度 1、ZET6的引脚分布 下面使用C8T6的引脚来类比ZET6的引脚,ZET6中的特殊功能引脚和C8T6的特殊功能引脚是一样。而通用IO引脚比C8T6多而已。下面的C8T6的特殊功能引脚的介绍: STM32F103C8…

智能Todo协作系统开发日志(二):架构优化与安全增强

📅 2025年4月14日 | 作者:Aphelios380 🌟 今日优化目标 在原Todo单机版基础上进行三大核心升级: 组件化架构改造 - 提升代码可维护性 本地数据加密存储 - 增强隐私安全性 无障碍访问支持 - 践行W3C标准 一、组件化架构改造 …

【C++初阶】第14课—缝合怪deque和优先队列、仿函数

文章目录 1. 双端队列deque1.1 认识deque1.2 deque的迭代器1.3 deque的常用接口1.4 deque的优缺点 2. 优先队列priority_queue2.1 认识priority_queue2.2 模拟实现优先队列priority_queue 3. 仿函数 在学习deque之前,回顾一下vector和list各自的优缺点 数据结构优点…

方德桌面操作系统V5.0-G23安装Docker并配置DockerHub镜像加速器

为什么要使用debina的docker源,因为查询os-release和uname 显示是基于debina 11的操作系统 rootyuhua-virtualmachine:~# cat /etc/os-release NAME"方德桌面操作系统" NAME_EN"NFSDesktop" VERSION"5.0" VERSION_ID"5.0"…

紫光同创FPGA实现HSSTLP光口视频点对点传输,基于Aurora 8b/10b编解码架构,提供6套PDS工程源码和技术支持

目录 1、前言工程概述免责声明 2、相关方案推荐我已有的所有工程源码总目录----方便你快速找到自己喜欢的项目紫光同创FPGA相关方案推荐我这里已有的 GT 高速接口解决方案Xilinx系列FPGA实现GTP光口视频传输方案推荐Xilinx系列FPGA实现GTX光口视频传输方案推荐Xilinx系列FPGA实…

数字孪生城市技术应用典型实践案例汇编(22个典型案例)(附下载)

近年来,数字孪生技术在我国从战略框架逐步向系统性落地推进,成为推动数字中国建设的重要技术引擎。随着《数字中国建设整体布局规划》《"十四五"数字经济发展规划》《深化智慧城市发展推进城市全域数字化转型的指导意见》等政策的实施&#xf…

Hyperf (Swoole)的多进程 + 单线程协程、Gin (Go)Go的单进程 + 多 goroutine 解说

1. 核心概念解析 (1) Hyperf (Swoole): 多进程 单线程协程 Swoole 并发模型详解 Swoole 的并发模型基于多进程架构,每个进程是单线程的,线程内运行多个协程。以下是其结构的关键点: 多进程:Swoole 应用程序启动时,…