容器技术基础-Kubernetes 价值及优势

简介: 容器技术基础-Kubernetes 价值及优势

开发者学习笔记【阿里云云原生助理工程师认证(ACA)课程:容器技术基础-Kubernetes 价值及优势】

课程地址:https://edu.aliyun.com/course/3112075/lesson/19015


容器技术基础-Kubernetes 价值及优势

 

内容介绍:

一、Kubernetes 使用优势

二、本章节小结和回顾

 

一、Kubernetes 使用优势

(1)一个平台搞定所有

image.png

Kubernetes 最大的优势是一个平台搞定所有使用 Kubernetes,部署任何应用都是小菜一碟,只要应用可以打包进容器,Kubernetes就一定能启动它,不管什么语言什么框架写的都可以快速打包,只要应用可以打包到容器(JavaPython.Node.js),Kubernetes 都可以在任何环境中安全的启动它无论是物理机、虚拟机、云环境 (公有云、私有云、混合),在不同的环境中都可以保持运行,这就是 kubernetes 最重要的优势,无论什么平台都可以屏蔽掉平台差异性,为用户提供便捷。
Kubernetes本身是支持多种云环境的,无论是公有云、私有云还是混合云都可以将容器的工作负载从本地的开发计算机上无缝的迁移到测试环境进行测试然后再从测试环境迁移到生产环境最后从生产环境迁移到云环境可以实现无缝迁移

在本地的技术结构以及公有云和混合云不同的复杂环境中,可以保持一致性的运行。这就是Kubernetes最关键的一点。等于无论底层是什么样的平台,都可以屏蔽掉底层平台的差异性,为用户提供一个统一的资源服务界面在这个资源服务界面之上,可以构建分装任何的应用,并快速的打包部署这就是本Kubernetes最核心的优势一个平台搞定所有。

(2)高效的利用资源

Kubernetes 第二个核心优势就是高效的利用资源,Kubernetes 可以帮助我们节省开销,高效的利用内存、处理器等资源。

image.png

Kubernetes 如果发现有节点工作不饱和,便会重新分配 pod如果一个节点宕机了,Kubernetes会自动重新创建之前运行在此节点上的pod,在其他节点上运行从而具备相应的自愈能力,而调度器能够实现 kubernetes 的核心的调度,根据特定的调度算法能够将 pod 调度到更优的节点上,从而更高效处理底层资源使资源更好的服务上层资源。

(3)开箱即用的自动缩放能力

Kubernetes第三个优势是开箱即用的自动缩放能力,它具有网络、负载均衡、复制等特性,对于 Kubernetes 都是开箱即用的。
Pod 是无状态运行的,任何时候有 pod 宕机,立马会有其他 pod 接替它的工作,上层用户完全无感如果用户量突然暴增,现有的pod的规模无法适应应用需求的访问他就会以秒级的方式进行自动的扩容,满足当前的需求它会自动创建一批新的pod来满足当前的业务需求。
反之Kubernetes当用户量下来的时候,他会根据你设定的规则和策略会进行自动的缩拢减少pod的数量Kubernetes是通过pod来实现整个容器的管理Modern来实现数据的计划 Deployment, 实现容器的附属和扩容,以及历史版本的回归这些都是Kubernetes开箱即用的能力它能够提供整个容器的网络负载均衡以及快速的弹性伸缩能力使得Kubernetes的优势变得更加强大。

(4)使 CI/CD 更加简单

Kubernetes第四个优势:使 CI/CD 更加简单,你不必精通自动化部署和持续集成/部署这类工具,只需要对 CI 服务写个简单的脚本然后运行它,就会使用你的代码创建一个新的 pod,并部署到 Kubernetes 集群里面。

流水线图:

image.png

流程是先发布一个代码,后续集成的服务器将相应的代码监听,监听到代码变更后就会自动触发第一个阶段,就是持续集成阶段。在这个阶段,自动构建单元测试、静态代码的分析以及生成报告,所有的部署预计通过才会进入下一阶段,那就是自动化测试的阶段。
部署到测试服务器之后,就会触发自动化测试套件,测试案例验收都是事先进行配置的,通过验收测试,包括容量测试,性能测试,就会自动执行容器的build。
如果所有的测试都顺利通过的话,就会变成一个可发布的候选版本,一旦业务需要通过一键部署的方式,它就会将其布署到生产环境上。我们可以通过加高 kubernetes 容器技术去快速搭建起来一个集群,需要单独去部署一些复杂的,高可用的服务,它本身就已经具备了一些很强大的功能,对于构建任务所需要的资源、日志监控的能力在 kubernetes 平台上都可以实现,而无需重复开发通过 kubernetes 让其构建的任务和容器运行更具备高级的调度能力,通过容器镜像标准概念,使得企业的持续交付和持续集成变得更加的简单,可以通过制定的模板,具备更好的扩展能力,实现快速的这种代码流水线管理,实现快速的自动化的部署和集成这就是 kubernetes 核心第四个优势。

(5)高可用及高可靠

Kubernetes优势还有高可用及高可靠,Kubernetes 如此流行的一个重要原因是应用会一直顺利运行,不会被 pod 或节点的故障所中断;如果出现故障,Kubernetes 会创建必要数量的应用镜像,并分配到健康的pod或节点中,直到系统恢复高可用

image.png

用户不会感到任何不适,这样减轻了对集群的压力不会导致所有压力集中到一起,具备高可用高可靠的能力就可以使用户更好的去使用它,不会感到有任何的问题。

 

二、本章节小结及回顾

1、Kubernetes概念:

Kubernetes 是一个自动化的容器编排平台,它负责应用的部署、应用的弹性以及应用的管理技术都是基于容器的。

2、Kubernetes 核心功能:

资源调度、自动化容器恢复、水平伸缩、容器编排。

3、Kubernetes 核心架构:

Kubernetes系统架构遵循客户端/服务端 (C/S)架构,系统架构分为 Master 和 Node 两部分,Master 作为服务端,Node作为客户端。

4、Kubernetes 关键概念:

包括Pod、 Volume、 Deployment Service、 Namespace这写核心的概念,Kubernetes就是通过Pod来实现容器的管理,Volume、实现了数据的永久化,Deployment实现了容器的部署扩容版本的回滚,Service为容器的应用提供了一个统一的地址,可以实现外部服务被统一的访问,多个Pod可以通过一个接口来实现,使得一个Pod停止运行的时候不受影响服务本身。

5、Kubernetes 价值及优势:

任何环境快速启动,高效的利用资源,提供了开箱即用的自动缩放能力, CI/CD 更加简单,高可用及高可靠。

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
5G 网络安全 SDN
网络功能虚拟化(NFV)和软件定义网络(SDN):赋能5G网络灵活、智能演进的关键
网络功能虚拟化(NFV)和软件定义网络(SDN):赋能5G网络灵活、智能演进的关键
863 4
|
Java
Java Scanner 类,超详细整理,适合新手入门
Java Scanner 类,超详细整理,适合新手入门
1463 0
SAP 批量更新会计凭证文本
批量更新会计凭证文本
1314 0
|
9月前
|
NoSQL IDE MongoDB
Studio 3T 2025.18 发布 - MongoDB 的终极 GUI、IDE 和 客户端
Studio 3T 2025.18 (macOS, Linux, Windows) - MongoDB 的终极 GUI、IDE 和 客户端
566 0
Studio 3T 2025.18 发布 - MongoDB 的终极 GUI、IDE 和 客户端
|
Linux KVM 虚拟化
如何判断一个linux机器是物理机还是虚拟机
使用`dmesg`检查"Hypervisor detected"可识别Xen PV虚拟机;`lscpu`显示"Hypervisor vendor"表明KVM虚拟化;"Virtualization: VT-x"指示实体机;`systemd-detect-virt`无法准确判断;`dmidecode -t 1`在某些节点上无法区分虚拟与实体。
1121 0
|
JavaScript
JS获取当前日期和时间的方法,并按照YYYY-MM-DD格式化
闲暇之余、好东西做个收藏、以备不时之需。 转载自  安然博客 Js获取当前日期时间及其它操作 var myDate = new Date(); myDate.getYear();        //获取当前年份(2位) myDate.getFullYear();    //获取完整的年份(4位,1970-????) myDate.getMonth();       
15964 0
|
JavaScript 关系型数据库 MySQL
基于VUE的校园二手交易平台系统设计与实现毕业设计论文模板
基于Vue的校园二手交易平台是一款专为校园用户设计的在线交易系统,提供简洁高效、安全可靠的二手商品买卖环境。平台利用Vue框架的响应式数据绑定和组件化特性,实现用户友好的界面,方便商品浏览、发布与管理。该系统采用Node.js、MySQL及B/S架构,确保稳定性和多功能模块设计,涵盖管理员和用户功能模块,促进物品循环使用,降低开销,提升环保意识,助力绿色校园文化建设。
|
存储 弹性计算 固态存储
三分钟磁盘存储性能IOPS、I/O及吞吐量指标详解
什么是磁盘I/O?存储IOPS是什么?磁盘性能指标吞吐量是指什么?
18626 39
|
存储 人工智能 算法
通过Milvus内置Sparse-BM25算法进行全文检索并将混合检索应用于RAG系统
阿里云向量检索服务Milvus 2.5版本在全文检索、关键词匹配以及混合检索(Hybrid Search)方面实现了显著的增强,在多模态检索、RAG等多场景中检索结果能够兼顾召回率与精确性。本文将详细介绍如何利用 Milvus 2.5 版本实现这些功能,并阐述其在RAG 应用的 Retrieve 阶段的最佳实践。
2753 1
通过Milvus内置Sparse-BM25算法进行全文检索并将混合检索应用于RAG系统

相关产品

  • 容器服务Kubernetes版