问题标签 [kubernetes-deployment]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2187 浏览

kubernetes - Kubernetes:选择器在服务与部署中的作用

来自关于使用 mysql部署应用程序的文档站点的官方示例:KubernetesWordpress

的服务定义mysql

部署定义mysql

我的问题如下:

Deployment定义具有matchLabel selector, 以便它将匹配下面定义的具有app: wordpress tier:mysql标签的 pod。

为什么Service selector不需要matchLabel出于相同目的的指令?服务的“选择”是什么?

0 投票
2 回答
2060 浏览

kubernetes - Kubernetes 部署是否有继承的概念?

有没有办法为 Kubernetes 部署创建继承树?我有许多相似但不相同的部署。它们共享许多 ENV 变量,但不是全部。他们都使用相同的图像。

例如,我有一个开发部署,其配置几乎与生产部署相同,但环境变量指向不同的数据库后端。我有一个 celery 部署,其配置与生产部署相同,但是,它具有不同的运行命令。

0 投票
2 回答
145 浏览

node.js - 实时应用对 pod 代码源的更改 - npm

我在我的 pod 上运行了 reactjs 应用程序,并且我已经将源代码从主机安装到了 pod。它工作正常,但是当我在主机中更改我的代码时,pod 源代码也会更改,但是当我运行该站点时,它并没有影响应用程序。这是我的清单,我做错了什么?

而且我知道事实上 npm 没有监视我的更改,我如何在 pod 中解决它?

0 投票
1 回答
1616 浏览

kubernetes - 延迟 Kubernetes pod 创建以实现零停机

我正在尝试在 Kubernetes 中实现部署的滚动更新。我关注了很多文章,说停机时间为零,但是当我连续运行 curl 时。在得到回复之前,我的一些请求失败了。下面是部署文件。

我做的下一件事是添加

MinReadySeconds:120

这可以解决这个问题,但它不是最佳解决方案,因为我们希望在下一个 Pod 开始服务请求并终止旧 Pod 时立即切换到它。我有两个问题——

  1. 当两个 pod(新的和旧的)都在运行并且都开始为流量提供服务时,是否会出现这种情况?那也不理想。因为我们希望一次只有一个 pod 为请求提供服务。
  2. Kubernetes 是否提供了其他开箱即用的解决方案来进行滚动部署?
0 投票
6 回答
24117 浏览

kubernetes - 无法在 Kubernetes 中删除 pod

我尝试使用 Kubernetes 安装 dgraph(单服务器)。
我使用以下方法创建了 pod:

现在我需要做的就是删除创建的 pod。
我尝试使用以下方法删除 pod:

结果显示pod deleted,但 pod 不断自我重建。
我需要从我的 Kubernetes 中删除这些 pod。我现在该怎么办?

0 投票
1 回答
347 浏览

kubernetes - 如何向其中的 pod 公开部署或 statefulset 的规模?

我的第一个想法是使用向下 API,但这似乎并没有暴露部署/有状态集的规模。我希望能够避免手动将其添加为单独的环境变量,或者如果可能的话,不得不依赖所有的 pod 相互发现来确定规模。

用例:为连接到外部服务的应用程序部署许多 pod。所述服务执行某种形式的一致散列(我相信这是正确的术语?)将数据发送到客户端,因此连接的客户端发送一个从 0 - N-1 和客户端总数 N 的 id 号。在这种情况下,部署/状态集规模将为 N。

0 投票
1 回答
80 浏览

kubernetes - 在不中断服务的情况下重新创建部署

在以下创建新部署的场景中:

kubectl apply -f deployment.yaml

我正在更改yaml并再次运行apply,并收到一条消息,表明部署已更新。

但随后我看到了两个用于我的部署的 pod,并表明有两个实例,而只有一个是最新的。

据我了解,如果我使用过,kubectl replace --force我实际上会删除当前部署并创建一个新部署。

但是,这将导致服务中断。

是否有正确的方法来创建新部署并仅在成功推出后删除以前的部署?

0 投票
3 回答
1689 浏览

kubernetes - 更新使用 ReadWriteOnce 卷的部署将在挂载时失败

我的部署使用了几个卷,全部定义为ReadWriteOnce.

将部署应用到干净的集群时,Pod 已成功创建。

但是,如果我更新我的部署(即更新容器映像),当为我的部署创建一个新的 pod 时,它总是会在卷挂载时失败:

那么,将更改应用于此类部署的最佳策略是什么?为了使用相同的持久性卷,是否必须发生一些服务中断?(我不想创建新卷 - 数据应该保持)

0 投票
1 回答
106 浏览

kubernetes - 使用 Helm / Kubernetes 设置独特用途的 pod

我需要让 n 个 pod 做基本相同的事情,但根据环境变量在不同的端点上运行。例如,pod1 将处理 var1,pod2 将处理 var2 等等...

我可以在部署中拥有独特用途的 pod:向每个 pod 传播一个唯一变量吗?还是我需要有 n 个状态集,看起来更重?

0 投票
4 回答
1420 浏览

kubernetes - 为什么标签在一次部署中被提及 3 次

我浏览了以下文档页面:https ://kubernetes.io/docs/concepts/workloads/controllers/deployment/

示例部署yaml如下:

我们可以在这里看到app: nginx提到标签的三个不同时间。

为什么我们需要它们中的每一个?我很难从官方文档中理解它。