K8s 小白入门|从电影配乐谈起,聊聊容器编排和 K8s

来听听音乐

电影,是我们生活中的重要调味剂。

配乐,是电影中不可或缺的一部分。

有的时候,配乐可以跟剧情共振,让你按捺不住自己的情绪,或眼含热泪、或慷慨激昂、或人仰马翻、或怅然若失;

有的时候,音乐竟然成为电影的主题,《音乐之声》、《海上钢琴师》、《波西米亚狂想曲》、《爱乐之城》、还有你的《Once》…

那么,你或许好奇:电影的配乐是怎么制作的?

通常来说,电影配乐流程主要包括定点(Spotting)、音画对位(Syncing)、制作打点轨道(Click Track)、作曲(Writing,此阶段通常只写出缩谱)、录音(Recording)等。

Spotting、Syncing、Click Track 等最终是为了让音乐可以“无缝”的融合到剧情中。

而 Writing 主要由作曲家根据粗剪画面进行创作。

原始曲谱是这样的:

配器后录音是这样的:

后期合成到电影里是这样的:


你应该感受到了,原始曲子跟最终配乐还是有很大差距的,在 Writing 跟 Recording 中间好像缺少了什么东西。

对,配器,就是综合运用各种乐器,使得原始曲子的情感更加饱满,以便进一步烘托剧情。

配器,英文名称叫 Orchestration。

你可能意识到我要聊啥了,

对,聊啥音乐啊,聊容器编排(Container Orchestration)。

云到底是如何构建的?

互联网,是我们生活中重要的调味剂。

云计算,是互联网不可或缺的一部分。

曾几何时,云计算还是个新兴概念,各路大佬或开口必言、或嗤之以鼻、或故作中肯、或一马当先;

事到如今,云计算已成为基础设施,刷抖音、看小红书、发 Tweet、秀公里数、还有你的 Soul…

那么,你或许好奇,云到底是如何构建的?

通常来说,搭建一朵云包括选址、拿批文、买地、盖机房、拉电线、拉网线、装空调、买机架,这些完工后就有了一个 IDC;之后是买机器、插电、连网、装机、虚拟化,这些完工后就有了一个 IaaS。

基础设施的变革,催生了上层多种新的技术的演进或诞生,DevOps、Microservice、Container、IaC等等。其中 Container 的出现彻底解决了应用对环境的依赖问题,毫不夸张的说,Container 使得应用与环境彻底解耦,从而使得基础设施可以“无差别”将所有应用进行统一管理,这无疑使得规模化的管理应用成为可能。

而这样的管理平台便应运而生,Apache Mesos, Docker Swarm, Kubernetes, Nomad, Amazon ECS, Microsoft Azure Container Service, Red Hat OpenShift 等等。计算机领域喜欢从别的领域借鉴概念,所以这次借鉴音乐中的配器,我们把容器管理行为称为编排(Orchestration)。
总之,云计算、容器化使得编排成为必然。

那么,容器编排包含哪些内容?

“容器编排”(Container Orchestration)是一种自动化容器生命周期管理的过程,主要处理的是在大型系统和动态环境中部署、管理和扩展容器的过程。容器编排提供了一种管理和协调容器化应用程序及其依赖关系的方式,同时确保它们在安全、高效和可靠的情况下运行。在云计算和微服务架构的背景下,容器编排成为了非常关键的一环。以下是一些容器编排的主要功能:

  1. 部署和更新:容器编排系统可以自动化地部署和更新容器。这意味着当你需要部署新的服务或者更新现有的服务时,只需要通过编排系统的API或者界面,就可以轻松地完成部署和更新的过程。
  2. 自动扩展:容器编排系统可以根据系统的负载自动增加或减少容器的数量。例如,如果系统的负载增加,编排系统可以自动启动更多的容器来处理增加的请求;反之,如果系统的负载减少,编排系统可以关闭一些不必要的容器,以节省资源。
  3. 服务发现和负载均衡:容器编排系统通常会为容器提供服务发现和负载均衡的功能。这意味着在有多个容器提供相同服务的情况下,这些系统可以自动地将请求平均分配给各个容器,以防止某个容器过载。
  4. 健康检查和故障恢复:如果一个容器出现问题,容器编排系统可以自动检测到,并采取相应的措施,如重启该容器,或者将请求转发到其他健康的容器。
  5. 资源管理:容器编排系统还可以管理系统的资源,如CPU、内存、网络和存储等。它可以根据容器的需求和系统的可用资源,智能地分配资源给各个容器。
  6. 日志和监控:通过收集和分析容器的日志和指标,容器编排系统可以帮助开发者和运维人员了解系统的状态和性能,及时发现并解决问题。
    容器编排是现代云原生架构的关键组成部分,对于构建和管理依赖于容器化的复杂分布式应用程序至关重要。

那么,最流行的容器编排工具是哪个?

Kubernestes: 生产可用的容器编排工具

K8s 设计理念是怎样的?

Kubernetes 的设计理念是将容器化应用程序的部署、扩展和管理自动化,从而提高生产效率和应用程序的可靠性。以下是 Kubernetes 设计理念的主要特点:

  1. 自我修复:Kubernetes 可以自动检测和修复应用程序的故障,包括容器崩溃、节点故障和网络问题等。这可以最大程度地减少手动干预的需要,提高应用程序的可靠性。
  2. 自动扩展:Kubernetes 可以根据需求自动扩展应用程序,以适应变化的负载。这可以提高资源利用率,同时确保应用程序的性能和可靠性。
  3. 声明式配置:Kubernetes 使用声明式配置模型,允许用户指定应用程序的期望状态,而不是手动指定如何达到该状态。这可以提高应用程序的可重复性和一致性,并减少配置错误的风险。
  4. 服务发现和负载均衡:Kubernetes 提供了内置的服务发现和负载均衡功能,允许应用程序动态地发现和连接到其他组件,并根据负载均衡算法分配流量。
  5. 滚动更新:Kubernetes 可以支持滚动更新容器化应用程序,以最小化停机时间,并确保新版本的应用程序平稳而安全地部署。
  6. 可扩展性:Kubernetes 的设计允许它在大规模集群中运行,并支持插件式架构,使用户可以根据需要扩展其功能。

总的来说,Kubernetes 的设计理念是将容器化应用程序的部署、扩展和管理自动化,从而提高生产效率和应用程序的可靠性。Kubernetes 提供了丰富的特性和功能,使其成为一种流行的容器编排工具。

为什么 K8s 采用声明式 API?

Kubernetes 被设计为一个管理容器化应用的声明式系统。这意味着 Kubernetes 使用声明式方法,让用户指定系统的期望状态,然后自动将实际状态与期望状态进行协调,而不是提供一套命令式的系统管理命令。

Kubernetes 被设计为声明式系统有几个原因:

  • 简洁性:声明式系统通常比命令式系统更简单、更易用,因为它们允许用户专注于指定系统应做什么,而不是如何去做。

  • 幂等性:声明式系统比命令式系统更具幂等性,这意味着它们可以多次运行而不改变系统状态。这使得管理复杂系统更容易,并且减少了错误和不一致的风险。

  • 可预测性:声明式系统比命令式系统更可预测,因为它们提供了一种清晰且一致的方式来指定系统的期望状态。这使得理解和排除系统故障变得更容易。

  • 自动化:声明式系统比命令式系统更适合自动化,因为它们允许用户以机器可读的格式指定系统的期望状态,便于自动化工具处理。

  • 可扩展性:声明式系统比命令式系统更具可扩展性,因为它们允许用户在不需要手动指定所有系统配置细节的情况下,管理具有大量资源和依赖关系的复杂系统。

总体而言,Kubernetes 使用的声明式方法已被证明是一种强大且有

声明式 Operator 实现起来感觉比命令式的 workflow 难?

实现声明式 Operator 确实需要一定的学习和开发成本,但它们通常比命令式的工作流更加灵活和可维护。

命令式工作流通常需要编写一系列脚本或命令来定义应用程序的部署和管理流程。这些工作流通常是基于特定的环境和应用程序的需求编写的,因此它们可能不具备通用性和可重复性。此外,这些脚本和命令通常难以维护,因为它们与环境和应用程序的状态紧密耦合,需要频繁地更新和调整。

相比之下,声明式 Operator 可以更好地解决这些问题。声明式 Operator 以 Kubernetes 对象的形式定义应用程序的状态和期望结果,而不是直接定义执行的步骤。这样,声明式 Operator 可以更好地实现应用程序的可重复性和一致性,并支持更灵活的自动化应用程序管理。

此外,声明式 Operator 还支持自我修复和自我调整,这可以减少手动干预的需要,提高应用程序的可用性和可靠性。

总的来说,声明式 Operator 确实需要一定的学习和开发成本,但它们通常比命令式的工作流更加灵活和可维护,可以提高应用程序的可重复性和一致性,并支持更高级别的自动化应用程序管理。

以上便是 AIGC 给的答案了。

终章

你的应用代码犹如曲谱,K8s 是目前最好的配器师,经过它的编排,你的应用将演奏出一曲优美的乐章。

End

KubeBlocks 已发布 v0.8.0!KubeBlocks v0.8.0 推出了 Component API,让数据库引擎的组装变得更加简单。Addon 机制也有了重大改进,数据库引擎的 helm chart 从 KubeBlocks repo 中拆分出去,从此数据库引擎或者版本的变动已与 KubeBlocks 发版解绑。v0.8.0 还支持多版本的数据库引擎定义。Pika、ClickHouse、OceanBase、MySQL、PostgreSQL、Redis 等均有功能更新,快来试试看!

小猿姐诚邀各位体验 KubeBlocks,也欢迎您成为产品的使用者和项目的贡献者。跟我们一起构建云原生数据基础设施吧!

💻 官网: www.kubeblocks.io

🌟 GitHub: https://github.com/apecloud/kubeblocks

🚀 Get started: https://kubeblocks.io/docs/preview/user_docs/try-out-on-playground/try-kubeblocks-on-your-laptop

关注小猿姐,一起学习更多云原生技术干货。

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

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

相关文章

WebGL技术在教育培训中的应用

WebGL技术在教育培训中的应用非常广泛,通过其强大的三维图形处理能力,能够为教育培训提供更加生动、互动和沉浸式的学习体验。以下是WebGL在教育培训中的几个主要应用及其具体实现。北京木奇移动技术有限公司,专业的软件外包开发公司&#xf…

想用Python做OCR?看看这篇文章

OCR是Optical Character Recognition的缩写,中文名为光学字符识别。它是一种通过计算机技术对图像或扫描文档中的文字进行识别和理解的过程。OCR技术可以将图像中的文字转换为可编辑、可搜索的文本,使得计算机能够理解和处理这些文字信息。 OCR技术通常…

解锁数据的力量:Navicat 17 新特性和亮点

解锁数据的力量:Navicat 17 新特性和亮点 大家好,我是猫头虎。今天我要为大家介绍 Navicat 17 的新特性和亮点。Navicat 是一款专业的数据库管理工具,支持多种数据库类型,包括 MySQL、Oracle、SQL Server、PostgreSQL、MariaDB、…

【智能家居入门1】环境信息监测(STM32、ONENET云平台、微信小程序、HTTP协议)

作为入门本篇只实现微信小程序接收下位机上传的数据,之后会持续发布如下项目:①可以实现微信小程序控制下位机动作,真正意义上的智能家居;②将网络通讯协议换成MQTT协议再实现上述功能,此时的服务器也不再是ONENET&…

解决Springboot服务启动报错:“Reason: Failed to determine suitable jdbc url”

1、错误详情 *************************** APPLICATION FAILED TO START *************************** Description: Failed to configure a DataSource: url attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine sui…

canvas层级太高?解决方法

这个方法主要是依赖于邀请好有页面展示的canvas二维码二维码以及其他容器的图片 有一个保存图片功能,这个保存图片是需要将二维码以及涉及到的其他容器比如下图: 所以这时候需要canvas来绘制一个保存图片的效果,然后对这个canvas绘制的图片保…

web网络安全知多少

web安全性包括: 客户端脚本安全和服务器端应用服务器 客户端脚本安全: ● 跨站脚本攻击(XSS ) ● 跨站点请求伪造(CSRF) ● 点击劫持(ClickJacking) ● HTML 5 安全性 服务端应用安全: ● 注入攻击 ● 文件上传漏洞 ● 认证与会话管理 ● 访问控制 ● DDos攻击 个人意识和个人…

【CALayer-时钟练习-界面-锚点 Objective-C语言】

一、接下来,我们来说这个时钟练习 1.这个里边呢,有这么一个表盘的一个效果,然后呢,这个秒针,跟我们的时间,是同步的, 新建一个项目, Name:05-时钟练习 然后呢,给这个控制器的View,一个背景颜色,先, 背景颜色, 2.接下来,我们开始来做,我们现在这个表盘啊,是我们…

绿色瓶装水“暗战”竞争越发激烈,华润饮料谋上市同时多地扩产能

《港湾商业观察》黄懿 4月23日,纯净水牌“怡宝”母公司华润饮料(控股)有限公司(下称“华润饮料”)向港交所主板提交上市申请,联席保荐人为中银国际、中信证券、美银美林、瑞银集团。 在华润饮料递表不久之…

【ARM+Codesys案例】基于全志T3+Codesys软PLC的3C点胶边缘控制解决方案:整合了运动控制、视觉、激光测高等技术

视觉精密点胶控制方案 针对直交型机构的平面点涂胶应用,基于CODESYS软件平台开发的一站式PC型控制器解决方案,包含运动控制器硬件和点胶应用软件。方案整合了运动控制、视觉、激光测高等技术,高效精密的控制胶水点涂于产品表面或内部&#x…

CHIMA专访美创高级总监丁斐:为医疗数据安全构筑体系化防御新机制

5月17-19日,中国医院信息网络大会(CHIMA 2024)在南京隆重召开。作为结识多年的老友,美创科技再携以数据为中心的全系列安全业务、新一代数字化安全平台、医疗行业解决方案精彩亮相。 会议期间,CHIMA专访美创科技&…

[数据集][目标检测]RSNA肺炎检测数据集VOC+YOLO格式6012张1类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):6012 标注数量(xml文件个数):6012 标注数量(txt文件个数):6012 标注…

【基础算法总结】前缀和二

前缀和二 1.和为 K 的子数组2.和可被 K 整除的子数组3.连续数组4. 矩阵区域和 点赞👍👍收藏🌟🌟关注💖💖 你的支持是对我最大的鼓励,我们一起努力吧!😃😃 1.和为 K 的子数…

Java语言ADR药物不良反应系统源码Java+IntelliJ+IDEA+MySQL一款先进的药物警戒系统

Java语言ADR药物不良反应系统源码JavaIntelliJIDEAMySQL一款先进的药物警戒系统源码 ADR药物不良反应监测系统是一个综合性的监测平台,旨在收集、报告、分析和评价药品在使用过程中可能出现的不良反应,以确保药品的安全性和有效性。 以下是对该系统的详细…

Modbus工业网关

随着工业自动化程度的不断提高,设备之间的数据通信与交互变得至关重要。在这一背景下,Modbus协议凭借其简单、可靠、开放的特点,成为了工业自动化领域中最常用的通信协议之一。而HiWoo Box网关作为一款支持Modbus协议的工业网关设备&#xff…

【全开源】防伪溯源一体化管理系统源码(FastAdmin+ThinkPHP和Uniapp)

一款基于FastAdminThinkPHP和Uniapp进行开发的多平台(微信小程序、H5网页)溯源、防伪、管理一体化独立系统,拥有强大的防伪码和溯源码双码生成功能(内置多种生成规则)、批量大量导出防伪和溯源码码数据、支持代理商管理…

Springboot项目——博客平台

前言:为巩固之前学习的知识,同时锻炼自己的代码能力,项目经验,熟悉前后端交互方式等,特此完成一个博客平台系统。(总之,为了学习,为了进步) 博客平台:本项目…

网络安全的重要组成部分:数据库审计

数据库审计(简称DBAudit)以安全事件为中心,以全面审计和精确审计为基础,实时记录网络上的数据库活动,对数据库操作进行细粒度审计的合规性管理,对数据库遭受到的风险行为进行实时告警。它通过对用户访问数据…

线性稳压电路和开关稳压电路

稳压二极管稳压电路 电网电压增大,导到u1端的电压增大,从而使输出电压,稳压二极管两端的电压增大,稳压二极管两端电压增大,使流过的电注增大。那么,流过线性电阻R的总电流增大。 Ur电压增大,从…

PGP软件安装文件加密解密签名实践记录

文章目录 环境说明PGP软件安装PGP软件汉化AB电脑新建密钥并互换密钥对称密钥并互换密钥 文件加密和解密A电脑加密B电脑解密 文件签名A电脑签名文件B电脑校验文件修改文件内容校验失败修改文件名称正常校验 环境说明 使用VM虚拟两个win11,进行操作演示 PGP软件安装 PGP软件下…