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

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
容器镜像服务 ACR,镜像仓库100个 不限时长
性能测试 PTS,5000VUM额度
简介: 容器技术基础-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 更加简单,高可用及高可靠。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
9天前
|
Kubernetes 监控 开发者
掌握容器化:Docker与Kubernetes的最佳实践
【10月更文挑战第26天】本文深入探讨了Docker和Kubernetes的最佳实践,涵盖Dockerfile优化、数据卷管理、网络配置、Pod设计、服务发现与负载均衡、声明式更新等内容。同时介绍了容器化现有应用、自动化部署、监控与日志等开发技巧,以及Docker Compose和Helm等实用工具。旨在帮助开发者提高开发效率和系统稳定性,构建现代、高效、可扩展的应用。
|
5天前
|
Java 应用服务中间件 Linux
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
本文主要讲解了Docker的安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库以及Docker容器虚拟化与传统虚拟机比较。
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
|
1天前
|
存储 Kubernetes Docker
【赵渝强老师】Kubernetes中Pod的基础容器
Pod 是 Kubernetes 中的基本单位,代表集群上运行的一个进程。它由一个或多个容器组成,包括业务容器、基础容器、初始化容器和临时容器。基础容器负责维护 Pod 的网络空间,对用户透明。文中附有图片和视频讲解,详细介绍了 Pod 的组成结构及其在网络配置中的作用。
【赵渝强老师】Kubernetes中Pod的基础容器
|
1天前
|
Cloud Native 持续交付 Docker
Docker容器化技术:从入门到实践
Docker容器化技术:从入门到实践
|
2天前
|
存储 Kubernetes 调度
基于容器化技术的性能优化实践
基于容器化技术的性能优化实践
9 3
|
1天前
|
运维 Kubernetes Shell
【赵渝强老师】K8s中Pod的临时容器
Pod 是 Kubernetes 中的基本调度单位,由一个或多个容器组成,包括业务容器、基础容器、初始化容器和临时容器。临时容器用于故障排查和性能诊断,不适用于构建应用程序。当 Pod 中的容器异常退出或容器镜像不包含调试工具时,临时容器非常有用。文中通过示例展示了如何使用 `kubectl debug` 命令创建临时容器进行调试。
|
1天前
|
Kubernetes 调度 容器
【赵渝强老师】K8s中Pod中的业务容器
Pod 是 Kubernetes 中的基本调度单元,由一个或多个容器组成。除了业务容器,Pod 还包括基础容器、初始化容器和临时容器。本文通过示例介绍如何创建包含业务容器的 Pod,并提供了一个视频讲解。示例中创建了一个名为 "busybox-container" 的业务容器,并使用 `kubectl create -f firstpod.yaml` 命令部署 Pod。
|
1天前
|
Kubernetes 容器 Perl
【赵渝强老师】K8s中Pod中的初始化容器
Kubernetes的Pod包含业务容器、基础容器、初始化容器和临时容器。初始化容器在业务容器前运行,用于执行必要的初始化任务。本文介绍了初始化容器的作用、配置方法及优势,并提供了一个示例。
|
1天前
|
运维 持续交付 Docker
深入理解Docker容器化技术
深入理解Docker容器化技术
|
1天前
|
Kubernetes 监控 Java
如何在Kubernetes中配置镜像和容器的定期垃圾回收
如何在Kubernetes中配置镜像和容器的定期垃圾回收

相关产品

  • 容器服务Kubernetes版
  • 下一篇
    无影云桌面