- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 kubernetes 的新手,正在尝试了解何时使用 kubectl autoscale 和 kubectl scale 命令
最佳答案
部署中的
规模 表示应始终运行多少 pod 以确保应用程序正常运行。您必须手动指定它。在 YAML 中,您必须在 spec.replicas
中定义它就像下面的例子:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.7.9
ports:
- containerPort: 80
指定部署规模(副本)的第二种方法是使用命令。
$ kubectl run nginx --image=nginx --replicas=3
deployment.apps/nginx created
$ kubectl get deployment
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
nginx 3 3 3 3 11s
这意味着部署将运行 3 个 pod,Kubernetes 将始终尝试维持这个数量的 pod(如果任何 pod 崩溃,K8s 将重新创建它)。您可以随时在 spec.replicas
中更改它并使用 kubectl apply -f <name-of-deployment>
或者通过命令
$ kubectl scale deployment nginx --replicas=10
deployment.extensions/nginx scaled
$ kubectl get deployment
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
nginx 10 10 10 10 4m48s
请阅读documentation关于缩放和复制集。
Horizontal Pod Autoscaling (HPA) 的发明是为了根据 Pod 产生的指标来扩展部署。例如,如果您的应用程序每分钟大约有 300 个 HTTP 请求,并且您的每个 pod 允许每分钟 100 个 HTTP 请求,那么就没问题。但是,如果您将收到大量 HTTP 请求 ~ 1000,则 3 个 pod 是不够的,70% 的请求将失败。什么时候使用 HPA
,部署将自动缩放以运行 10 个 pod 来处理所有请求。一段时间后,当请求数量下降到 500/分钟时,它将缩减为 5 个 pod。稍后取决于请求数量,它可能会上升或下降取决于您的 HPA 配置。
应用自动缩放的最简单方法是:
$ kubectl autoscale deployment <your-deployment> --<metrics>=value --min=3 --max=10
这意味着 autoscale 将根据指标自动扩展到最多 10 个 pod,然后将最小缩减到 3 个。HPA documentation 中显示了很好的示例与 CPU 使用率。
请记住,Kubernetes 可以使用多种基于 API 的指标(HTTP/HTTP 请求、CPU/内存负载、线程数等)
希望它能帮助您了解 Scale 和 Autoscaling 之间的区别。
关于kubernetes - kubectl autoscale 与 kubectl scale 之间有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57405339/
我正在尝试使用 boto 的自动缩放模块。我开始创建 API 连接并获取默认区域 (us-east-1) 中的所有组。 conn = AutoScaleConnection(ACCESS_KEY,S
Windows 窗体(包括我正在使用的用于 Compact Framwork 的 Windows 窗体)有一个 AutoScale feature .通过设置 AutoScaleMode proper
我正在按照https://eksworkshop.com/beginner/080_scaling/deploy_ca/上的说明来部署集群自动缩放器。 在按照说明进行操作时,我注意到cluster_a
我有一个按照以下规范运行的复制 Controller : apiVersion: v1 kind: ReplicationController metadata: name: owncloud-c
matplotlib默认根据数据系列自动缩放坐标轴范围。pyplot模块中的autoscale函数可以切换是否自动缩放坐标轴范围,xlim()和ylim()函数可手动设置坐标轴范围。 autosc
我已经通过 Docker 在我的 Mac 上安装了 Kubernetes 的本地实例。 关注 walkthrough关于如何在部署中激活自动缩放我遇到了一个问题。自动调节程序无法读取指标。 当我运行时
我正在尝试创建一个 EC2 实例,该实例将使用自动缩放功能,并附加到负载均衡器。 不幸的是,我收到了错误 The availability zones of the specified subnets
在Azure队列中为队列项添加单个条目,但对同一队列项多次调用函数,无法理解出了什么问题,我们在函数中使用了异步/等待,代码也是异步的,下面是Azure函数设置, 下面是函数代码, public cl
我正在开发一个应用程序,并将 WorkerRole 与多个实例一起使用(自动缩放选项)。几天前,AI(应用程序洞察)开始发送有关监控数据不可用的电子邮件。 自“日期”UTC 以来,Autoscale
在一个项目中,我正在从Kubernetes启用集群自动缩放器功能。 根据文档How does scale down work,我了解到,当给定时间使用某个节点的时间少于其容量的50%时,该节点将连同其
我正在开发一个应用程序,并将 WorkerRole 与多个实例一起使用(自动缩放选项)。几天前,AI(应用程序洞察)开始发送有关监控数据不可用的电子邮件。 自“日期”UTC 以来,Autoscale
我正在使用应用服务 B1 计划运行 Azure Function。当我想通过“横向扩展”设置来手动扩展它时,我收到“自动缩放当前不适用于此资源”。错误,即使 B1 计划仅支持手动缩放。 这以前是有效的
所以在我的 Fancybox 中,我不想显示滚动条,而是使用 autoscale : true 选项。 所以我的设置发生的情况是没有显示滚动条,这很好,但是 div 的内容超出了 fancybox 的
我正在使用 libqwt-6.1.1 在 QwtPlot 元素(作为直方图)中使用 y 轴自动缩放显示变量数据。根据实际数据和 tic 的数量,autoscale-run 认为合理,整个 QwtPlo
我正在使用以下命令来设置 AWS 启动配置: as-create-launch-config test1autoscale --image-id ami-xxxx --instance-type m1
我正在使用动画在 python GUI 中使用 matplotlib 绘图。下面是代码 import sys from PyQt4 import QtGui from matplotlib.backe
这是来自 Azure 文档的示例。然而,我发现这很令人困惑。 startingNumberOfVMs = 1; maxNumberofVMs = 25; pendingTaskSamplePercen
我有一个 Kubernetes 集群,运行具有不同机器类型(即 cpu-heavy、gpu、ram-heavy)的各种应用程序,并安装了 cluster-autoscaler (CA) 以使用自动发现
我有一个在 azure 上托管的 WCF 服务。当我部署它并启动自动缩放器对象时,Web 服务角色不断被回收并处于不健康状态。如果我不启动自动缩放程序,我不会有任何问题,但我想使用 WASABi。 这
我正在我们的 EKS 平台上工作,我在那里安装了 Cluster Autoscaler。我可以看到它在 Kube Dashboard 中运行。昨天的负载测试,我触发了我们拥有的一个重型应用程序的 20
我是一名优秀的程序员,十分优秀!