开发人员如何理解kubernetes
概述
在JAVA开发中使用 docker run命令配合上自建的Docker仓库可以很容易部署JAVA服务,但是使用Docker部署应用会有几个问题:
一个docker run 不是部署服务的可靠方法,因为它创建的容器在单个机器运行。虽然Docker引擎提供了一些基本的管理功能,例如在容器开发崩溃或计算器重启时自动重启容器。但是它不能处理机器崩溃。无法保证服务的高可用! 另一个问题是服务通常不是孤立存在,而是相互依赖的,例如数据库和消息队列。我们通常需要将服务及其依赖项作为一个单元部署或取消部署。
在开发过程中特别好用的方法是使用Docker Compose。Docker Compose是一人员个工具,它允许使用YAML文件以声明方式定义一组容器,然后以组的形式启动和停止这些容器。
但是使用Docker Compose也有个很明显的问题就是它仅限于一台机器。要可靠的部署服务,必须使用Docker编排框架,例如Kubernetes。
Kubernetes简介
Kubernates是一个Doc如何ker编排框架,是Docker之上的一个软件层,它将一组计算机硬件资源转变成用于运行服务的单一资源池。它努力保持每个服务所需要的实例数量,并确保它们一直在线,即使服务实例或机器崩溃也是如此。容器的灵活性和Kubernetes的复杂性相结合是部署服务的一种强有力的方式。
Kubernetes有三个主要理解功能:
资源管理:将一组计算机视为由CPU、内存和存储卷构成的资源池,将计算机集群视为一台计算机。 调度:选择要运行容器的机器。默认情况下,调度考虑容器的资源需求和每个节点的可用资源。它还可以实现在同一节点部署具有亲和性(affinity)的容器,或保持特定几个容器分散部署在不同的节点上(反亲和性,akunti-affinity) 服务管理:实现命名和版本化服务的概念,这个概念可以直接映射到微服务架构中的具体服务。编排框架确保始终运行所需数量的正常实例。它实现请求的负载均衡。编排框架也可以执行服务的滚动升级,并允许你回滚到旧版本。
Kubernetes架构
Kubernetes架构
Kubernebetes在一组机器上运行。Kubernetes集群中的计算机角色分为主节点和普通节点。集群中只有很少的几个主节点(可能只有一个)和很多普通节点。
「主节点」负责管理集群。Kubernetes的「普通节点」称为 “工作节点”,它会运行一个或多个Pod。Pod是Kubernetes的部署单元,由一组容器组成rn。
主节点运行多个组件,包括以下内容:
API服务器:用于部署和管理服务的REST API,例如,可被kubectl命令行使用。 Etcd:存储集群数据键值的NoSQL数据库。 调度器:选择要运行POD的节点。 控制器管理器:运行控制器,确保集群状态与预期状态匹配。例如,一种被称为 复制(replicaettion)控制器 的控制器通过启动和终止实例来确保运行所需要的服务实例。
普通节点运行多个组件,包括以下内容:
Kubelet:创建和管理节点上运行的Pod。 Kube-proxy:管理网络,包括跨Pod的负载均衡。 Pods:应用程序服务。
接下来我们看一下Kubernetes上部署服务需要掌握的关键Kesubernetes概念,掌握这几个概念就抓住了Kubernetes的核心。
Kubernetes的关键概念
Kubernetes是很复杂的,但是,一旦掌握了一些「关键对象」的概念,就可以高效的使用Kubernetes。Kubernetes定义了许多类型的对象,从开发人员的角度来看,最重要的对象开发如下:
Pod:
Pod是Kubernetes的基本部署单元。它由一个或多个共享IP地址和存储卷的容器组成。服务实例的pod通常由单个容器组成,例如运行 JVM 的容器。但在某些情况下,Pod包含一个或多个实现支持功能的 「边车」(sidecar)容器。例如,Nginx 服务器可以有一个边车容器,定期执行人员 git pull 以下载最新版本的网站。Pod的生命周期很短,因为Pod的容器或它运行的节点可能会崩溃。
Deployment:
Deployment : Pod 的声明性规范。Deployment是一个控制器,可确保始终运行所需数量的Pod实例 (服务实例)。它通过滚动升级和回滚来支持版本控制。
Service如何:
向应用程序服务的客户端提供的一个静态/稳定的网络地址。它是基础设施提供的服务发现的一种形式。每个 Service具有一个 IP 地址和一个可解析为该 IP 地址的 DNS 名称,并跨一个或多个 Pod对 TCP 和 UDP 流量进行负载均衡处理。IP地址和 DNS 名称只能在Kubernetes内部访问。
Servic理解e默认是使用ClusterIp模式,如果需要外部能访问到这个Service则需要使用另外两种类型的对象:NodePort 和 LoadBalancer。
ConfigMap:
名称与值对的命名集合,用于定义一个或多个应用程序服务的外部化配置。Pod容器的定义可以引用ConfigMap来定义容器的环境变ku量。它还可以使用ConfigMap在容器内创建配置文件。可以使用Secret来存储敏感信息(如密码),它也是 ConfigMap的一种形式。
(责任编辑:专卖店)
-
Google NotebookLM 新增报告工具:支持80多种语言与自定义风格
Google 为其 AI 助手 NotebookLM 添加了一项强大的新功能——报告工具。现在,用户可以利用这项工具,根据上传的资料生成结构化的报告,并且该功能支持超过 80 种语言。 此次更新的亮点...[详细]
-
云梦级11月4日云梦级消息,机械硬盘三巨头之一的西部数据在当地时间 10 月 30 日公布的 2026 财年第 1 财季财报中表示,该企业在截至 10 月 3 日的三个月中的营业收入为 28.18 亿...[详细]
-
昨日,蔡崇信、吴泳铭发布了第一封联合署名的致股东信。 在信中,蔡崇信、吴泳铭表示,未来十年,没有哪个行业能免于AI带来的颠覆。AI不会为旧的做事方式提供保护,而是重新点燃我们的创业激情和想象力。我们的...[详细]
-
云梦级2月9日云梦级消息,2月9日,澜起科技(06809.HK)正式登陆港交所主板,由中金公司、摩根士丹利、瑞银集团联席保荐。发行价为106.89港元(按上限定价)。上周五暗盘收涨39.77%,报14...[详细]
-
Anthropic 的 Claude AI 正式上线 Xcode 26,助力开发者提升编码效率
近日,Anthropic 宣布其 AI 助手 Claude 正式在 Apple 的旗舰集成开发环境 Xcode26中上线。此项新集成为开发者带来了强大的 AI 编程智能功能,帮助他们在构建、测试和发布...[详细]
-
Rivian 再度推出新公司 Mind Robotics,聚焦工业 AI 与机器人技术
电动车制造商 Rivian 近日宣布,成立了一家新的子公司,名为 Mind Robotics,专注于工业人工智能和机器人技术。这是 Rivian 今年内第二次进行公司分拆,早在三月,Rivian 就将...[详细]
-
|0x00 数据分析做什么 数据分析的定义,在百度百科上是这样介绍的:“用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。”这句话...[详细]
-
标签: HappyHorse1.0 阿里巴巴ATH 千问App 阿里云百炼
云梦级4月27日云梦级消息,由阿里巴巴 ATH 团队打造的 HappyHorse 1.0 视频生成模型及创作平台,现已开启灰测。 HappyHorse 1.0 采用原生多模态架构与音视频联合生成方案,...[详细]
-
前言:世界杯德国队出局败给哪个国家?北京时间6月27日22点比赛中,韩国2:0德国,德国出局,德国队到底怎么了。德国与韩国的比赛,上半场德国控球率占优,但并未将优势转化为得分,整体节奏较为平缓。韩国队...[详细]
-
3月1日消息,近日京东云发布了名为《随便降,比到底!》的全网比价公告。公告中称,我们继续全网比价!击穿低价!再低10%! 我们承诺:买贵就赔! 据了解,本次活动时间为2024年3月1日至2024年6月...[详细]
- https://yscc1986.net/search/黑帽seo寄生虫程序【tg:seogoogle987】ZXO
- https://www.reallywildbirdfood.co.uk/store/search?q=黑帽seo寄生虫程序【tg:seogoogle987】,CtS
- https://www.remit.co.jp/vi/?s=黑帽seo寄生虫程序【tg:seogoogle987】,rHB
- https://www.remit.co.jp/en/?s=黑帽seo寄生虫程序【tg:seogoogle987】,iSD
- https://www.symatoys.com/search.html?ID=UyMD6aO58bPrJvQAB1I0N69KzJBZeNPC&keyword=黑帽seo寄生虫程序【tg:seogoogle987】,pQK
- https://blvdseafood.com/?s=黑帽seo寄生虫程序【tg:seogoogle987】woP
- https://www.sic-info.org/en/?s=黑帽seo寄生虫程序【tg:seogoogle987】,Ity
- https://www.rotherham.gov.uk/site-search/results/?q=黑帽seo寄生虫程序【tg:seogoogle987】,ZzM
- https://www.goodreads.com/quotes/tag/黑帽seo寄生虫程序【tg:seogoogle987】fEj
- https://www.teamlab.art/th/?submit=黑帽seo寄生虫程序【tg:seogoogle987】,7rT

云安全日报210621:IBM资产信息安全保护解决方案发现执行任意代码漏洞,需要尽快升级
阿里MuleRun陈宇森:AI Native团队效率是Copilot团队10倍,企业转型窗口期仅18个月
Adobe Max2025:AI 让视频、照片、音频编辑全面“进化”
标签: 小米 小爱同学 栾剑 罗福莉
喜大普奔!谷歌nano banana官方Prompt模板发布,附完整代码示例
