什么是Kubernetes部署?

Kubernetes 部署 用于告诉 Kubernetes 如何创建或修改包含容器化应用程序pod 实例。部署可以扩展副本 pod 的数量,以受控方式推出更新的代码,或者在必要时回滚到早期的部署版本。 

什么是Kubernetes部署?

使用 Kubernetes 部署有什么好处?

Kubernetes 自动化了生产中部署、扩展和更新应用程序所涉及的工作和重复的手动功能。由于 Kubernetes 部署控制器始终监控 Pod 和节点的健康状况,它可以替换发生故障的 Pod 或绕过节点,替换这些 Pod 以确保关键应用程序的连续性。部署会自动启动 pod 实例,并确保它们按照定义在集群中的所有节点上运行。更多的自动化转化为更快的部署和更少的错误。

什么是 Kubernetes 部署策略?

Kubernetes 提供了多种部署策略来处理广泛的应用程序开发和部署需求。一旦您定义了应用程序的所需状态,部署控制器就会以受控的变化率进行所需的更改。 

什么是 Kubernetes 重新创建部署?

重新创建策略会终止当前运行的 pod 实例并使用新版本“重新创建”它们。通常用于用户活动不是问题的开发环境中。
重新创建完全刷新了 pod 和应用程序的状态。因此,存在与旧部署的关闭和新部署实例的启动相关的停机时间。

什么是 Kubernetes 滚动更新部署?

滚动更新策略允许从一个应用程序版本到新版本的有序、渐进式迁移。在此部署中,启动了具有新版本的新 ReplicaSet,并且随着新版本的副本的启动,旧版本的副本被终止。最终,所有旧版本的 Pod 都被终止并被新版本取代。滚动更新可实现版本之间的有序转换,但转换可能需要一些时间。

什么是Kubernetes部署?

什么是 Kubernetes 蓝/绿部署?

一旦新版本在生产中进行测试,蓝/绿策略提供了从旧应用程序版本到新应用程序版本的快速过渡。在这里,新的“绿色”版本与现有的“蓝色”版本一起部署。当确信“绿色”版本按设计工作时,版本标签将在执行负载平衡的 Kubernetes 服务对象的选择器字段中替换。这会立即将流量切换到新版本。尽管这提供了避免版本控制问题的快速推出,但此策略需要两倍的资源利用率,因为两个版本都在运行直到切换。

什么是 Kubernetes 金丝雀部署?

在金丝雀部署中,较小的用户组被路由到应用程序的新版本,该应用程序在较小的 pod 子集上运行以测试生产环境中的功能。一旦确信测试没有错误,新版本的副本就会被放大,从而有条不紊地替换旧版本。Canary 部署非常适合在一小部分用户上测试新功能,并且很容易回滚。因此,金丝雀部署可以很好地衡量新代码将如何影响系统的整体运行。

Kubernetes 部署的用例是什么?

部署是管理和扩展应用程序在集群上运行方式的最简单方法,Kubernetes 的开放 API 简化了与 CI/CD 管道的集成。 

一些常见的部署用例:

  • Kubernetes 的一个流行用例是运行无状态 Web 服务器,例如流行的开源 nginx。部署可以请求实例化固定数量的 pod 副本,Kubernetes 将在部署期间维护该数量的 pod。
  • 需要像数据库实例这样的持久存储的应用程序将使用 StatefulSet 类型部署并挂载持久卷以确保数据完整性和寿命。
  • 随着工作负载的增加,部署可以自动扩展集群中的副本数量,自动平衡副本之间的传入请求,随着需求的增加创建新的副本,并在需求下降时终止副本。

什么是Kubernetes部署?

如何创建 Kubernetes 部署?

与大多数 Kubernetes 功能一样,部署在 YAML(或 JSON)文件中描述,然后使用 kubectl apply 创建。

例如,一个名为“web-deployment”的 nginx 部署的 YAML 具有 4 个副本,如下所示:

api版本:应用程序/v1;

种类:部署

元数据:

名称:网络部署规范:

选择器:

匹配标签:

应用程序:nginx

复制品:4

模板:

元数据:

标签:

应用程序:nginx

规格:

容器:

- 名称:nginx

图片:nginx:1.17.0

端口:- 容器端口:80

一旦定义了部署,它就会从 YAML 文件中创建:kubectl apply -f https://[location/web-deployment.yaml]

Kubernetes 中的 JSON 和 YAML 有什么区别?

YAML(YAML Ain't Markup Language)和 JSON(JavaScript Object Notation)都可以用来定义 Kubernetes 资源。许多用户更喜欢 YAML 的可读性。但是,由于 YAML 是 JSON 的超集,因此任何有效的 JSON 文件也是有效的 YAML 文件。

如何更新 Kubernetes 部署?

可以通过更改部署中的 Pod 模板规范来更新部署,这会自动导致更新推出。更改 Pod 模板将导致正在运行的 pod 停止接受请求,因此可以缩减它们,直到可以终止所有 pod。一旦它们被终止,更新的 pod 模板将用于创建新的 pod。

什么是Kubernetes部署?

如何回滚 Kubernetes 部署?

如果部署被认为不稳定或部署中有错误,则使用以下命令回滚到以前的版本:

Kubectl rollout undo [deployment_name]添加参数–to-revision=将回滚到该特定版本的部署

如何扩展 Kubernetes 部署?

随着特定应用程序的需求增加,部署对于扩展副本数量很有用,并且可以通过 kubectl scale 命令完成。例如,要将部署扩展到 20 个副本,可以使用:

Kubectl scale [deployment-name] –replicas 20

文章链接: https://www.mfisp.com/6899.html

文章标题:什么是Kubernetes部署?

文章版权:梦飞科技所发布的内容,部分为原创文章,转载请注明来源,网络转载文章如有侵权请联系我们!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
IDC云库

提高网站安全性的10个基本步骤

2022-5-18 16:12:44

IDC云库

什么是Kubernetes基础架构?

2022-5-19 9:58:49

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索

梦飞科技 - 最新云主机促销服务器租用优惠