Kubernetes ReplicaSet: Kubernetes可伸缩性解释道

什么是Kubernetes ReplicaSet吗?

ReplicaSet (RS)是一个Kubernetes对象,确保总有一个稳定的豆荚运行一个特定的工作负载。ReplicaSet配置定义了所需的相同的豆荚,如果一个豆荚驱逐或失败,创造了更多的吊舱,以弥补损失。

你不直接创建ReplicaSets Kubernetes。ReplicaSets设置部署构建的一部分。我们将展示如何部署自动创建ReplicaSets,一个实际的代码示例。

这是我们的系列文章的一部分Kubernetes自动定量

在本文中,您将学习:

ReplicaSet工作当你应该如何使用它呢?

您可以定义一个ReplicaSet与领域,包括:

  • 选择器经常你指定选择器应该如何选择豆荚。
  • 大量的副本这表明有多少豆荚ReplicaSet应该维护。
  • 一个圆荚体模板——ReplicaSet使用pod模板创建豆荚,和添加吊舱,以满足所需数量的副本。

一旦您定义字段,ReplicaSet开始创建和删除豆荚达到指定的数量。

相关内容:读我们的指南Kubernetes自动定量

3种Kubernetes复制

一个ReplicaSet Kubernetes复制三种类型之一。复制控制器ReplicaSets的前兆和部署是一个声明式方法控制ReplicaSets和豆荚。本节中的代码示例是共享的Mirantis

另一个机制,部署豆荚在多个节点,主要用于后台服务,是Kubernetes Daemonset -了解更多我们的导游

Kubernetes ReplicationController

这是一个老的复制机制,ReplicaSets所取代,但仍然工作和广泛应用。它创造了一定数量的相同的豆荚,如果pod失败,取代它。它还允许您更新几个豆荚和一个命令或删除豆荚。

kubernetes replicationcontroller代码

ReplicationController有一个名称,并指定多少次舱应该复制(3在上面的示例中)。的模板指定应该复制的豆荚。的选择器确定哪些豆荚属于这个复制控制器。

虽然豆荚由ReplicationController语义相同,它们的配置是可以随着时间而改变的。这使它用于无状态应用程序复制,分片的拓扑结构,worker-pool等场景。

Kubernetes ReplicaSets

ReplicaSets ReplicationControllers宣布以类似的方式,但提供更多选择器的选择。根据Kubernetes文档,ReplicaSets通常不习惯直接通常作为部署的一部分创建的。

这是一个简单的例子matchLabels选择器。

matchLabels作为一个选择器

这是一个更高级的例子,检查两个条件是否一个豆荚属于ReplicaSet:测试如果app标签相匹配matchExpressions,检查如果“层”的标签不等于“生产”。

matchExpressions检查ReplicaSet的豆荚

部署

从ReplicaSets部署是一个水平。它们允许您使用声明性方法部署ReplicaSets和豆荚。您使用YAML配置来定义你的群豆荚应该是什么样子,和部署操纵Kubernetes对象创建豆荚完全根据YAML规范。

与ReplicaSet部署,您可以修改YAML Pod模板,和部署会照顾推出的更改。你可以回到前一个版本的配置,如果必要的。

ReplicaSet快速教程:创建一个部署

本教程是基于代码的Kubernetes文档。我们将定义一个部署的ReplicaSet规定3 NGINX豆荚。

定义部署与ReplicaSet 3 nginx豆荚

几件事情需要注意部署结构:

  • .spec.replicas定义了吊舱复制品的数量
  • .spec.selector定义了如何找到豆荚来管理这ReplicaSet-in本例中使用的一部分MatchLabels
  • .spec.template指定如何创建新的豆荚ReplicaSet-containers码头工人上使用nginx图像中心。新的容器叫nginx。

使用这个示例中,创建一个部署运行这个命令:

kubectl应用- f https://k8s.io/examples/controllers/nginx-deployment.yaml

检查部署状态:

  • 运行kubectl得到部署是否已经创建了新的部署。
  • 运行部署/ nginx-deployment kubectl推出状态看到推出状态副本的部署。
  • 运行kubectl得到rs(ReplicaSet)看到ReplicaSets创建的部署。
  • 运行kubectl得到豆荚,show-labels看到生成的标签被ReplicaSet豆荚。

最终的输出的豆荚中运行ReplicaSet会看起来像这样:

输出ReplicaSet的豆荚

NetApp Kubernetes自动化基础设施与现货

从现货现货海洋NetApp释放DevOps团队从繁琐的管理节点集群的工人在帮助降低成本90%。现货海洋的自动优化提供了以下好处:

  • 容器驱动自动定量的豆荚最快的匹配适当的节点
  • 易于管理的工作负载与不同的资源需求在一个集群中
  • 智能装箱高度利用节点和更大的成本效益
  • 成本分配的名称空间、资源、注释和标签雷竞技rabet官网
  • 可靠的最优的混合使用,保留和按需计算定价模型
  • 自动化基础设施空间确保高可用性
  • 裁员基于实际资源消耗

了解更多关于现货的海洋今天!

Baidu
map