问题标签 [kubernetes-container]

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 投票
1 回答
450 浏览

kubernetes - 在 pod 中的容器之间共享非持久卷

我正在尝试将两个 nodejs 应用程序放入同一个 pod,因为通常它们应该位于同一台机器上,并且不幸的是,它们以这样一种方式紧密耦合在一起,以至于它们中的每一个都在寻找另一个的文件夹(pos/app. js 需要 /pos-service,而 pos-service/app.js 需要 /pos)

最后,该文件夹应该包含:

他们的卷不需要是持久的,所以我尝试与 emptyDir 共享他们的卷,如下所示:

但是,当 Pod 启动时,我执行到每个容器中,它们似乎仍然是孤立的,并且看不到彼此的文件夹

我会欣赏任何帮助,谢谢

0 投票
1 回答
82 浏览

kubernetes - 创建 Pod 后是否可以添加新的 Container?

假设我创建了一个有 1 个容器的 Pod,现在我想向它添加第二个容器,我该怎么做?

0 投票
1 回答
706 浏览

kubernetes - 如果容器不健康,有没有办法自动重启 Pod 部署

我的 kubernetes 集群有一个 pod 部署定义,有 10 个 pod 副本。我遇到了一个问题,即 pod 实例的容器将进入不可恢复状态,我发现的唯一缓解方法是通过以下命令重新启动 pod 部署:

我想要一种通过活性探针甚至 pod 条件状态自动执行 pod 部署重启的方法。

是否有任何当前开箱即用的解决方案?

0 投票
2 回答
859 浏览

kubernetes-pod - YAML 文件中的 Kubernetes 命令和参数

Pod YAML 文件中的以下三个声明有什么区别:

  1. 容器:
  • 名称:busybox
    图片:busybox
    参数:
    -sleep
    -"1000"
  1. 容器:

    • 名称:busybox
      图像:busybox
      命令:["/bin/sh", "-c", "sleep 1000"]
  2. 容器:

  • 名称:busybox
    图片:busybox
    参数:
    -/bin/sh
    --c
    -sleep 1000

另外,上面的1、2和3会产生相同的结果吗?



我进一步编辑。这真的越来越令人困惑。看来,以下两个将产生相同的结果。如果是这样,不确定每个的目的是什么:

命令:
-睡眠
-“5000”

参数:
-睡眠
-“5000”

0 投票
1 回答
73 浏览

shell - 需要在 Kubernetes 容器中通过命令进行输入

以下三个传递命令/参数的声明有什么区别:

  1. 容器:
    名称:busybox
    图像:busybox
    参数:
    -sleep
    -"1000"

  2. 容器:
    名称:busybox
    图像:busybox
    命令:["/bin/sh", "-c", "sleep 1000"]

  3. 容器:
    名称:busybox
    图像:busybox
    参数:
    -sleep
    -"1000"

A. 这些会产生相同的结果吗?
B. 每个人的偏好或用途是什么?

0 投票
0 回答
41 浏览

kubernetes - kubelet如何使用livelinessProbe exec命令完成logstash容器

我有多容器应用程序,它是应用程序(执行 cronjob)+ logstash。Cronjob 容器执行 java 进程并在完成后将文件写入共享文件系统,即 /usr/share/example/config/pod/done。Logstash 容器(docker logstash 镜像)启动用于弹性搜索的 API 端点,并从主容器中读取日志并发送到 elasticSearch。因为,cronjob 容器在作业完成后完成,但 logstash 容器继续运行,因为它不知道它现在必须停止运行,我正在尝试使用 livelinessProbe exec 块来向 logstash 容器发出退出容器的信号。

我尝试了上面的代码块,但注意到这些 livelinessProbe 命令没有被执行,并且我的 logstash 容器继续运行,这使我的 pod 处于“未准备好”状态。

如果有人可以帮助我了解如何从 livelinessProbe 执行命令,以便它向我的 logstash 容器发出停止运行的信号,我将不胜感激?

0 投票
1 回答
312 浏览

kubernetes - 主容器完成后如何优雅关闭边车容器

我有一个 Kubernetes 清单文件,它有 2 个容器。主容器正在收集某个时间段的数据和其他(logstash)容器读取主容器的日志并将其运送到ELK堆栈。主容器完成其工作后,优雅地发出信号或关闭 logstash 容器的最佳方式是什么?

0 投票
1 回答
211 浏览

kubernetes - 在所有容器中打开端口

在我的 openshift 集群中,我注意到我所有的 pod 都有一个开放的端口,而我没有指定它。它的 pott 443 显然用于本文中提到的 k8s api

即使读完,我仍然不明白一些事情。

我了解该服务存在并转发到所有 pod。但是为了让 pod 使用此服务接收和发送请求。容器中的端口必须是开放的。但不知何故,即使没有在我的 pod 容器上指定端口。默认的 443 端口是打开的。这让我可以做这样的事情:

  1. 创建目标端口设置为 443 的服务
  2. 没有打开容器端口的设置 pod。
  3. 成功使用服务与容器通信。

这安全吗?,什么会在没有我指定的情况下打开容器端口?有没有办法防止这种情况发生?

0 投票
1 回答
146 浏览

kubernetes - 如何在同一个 Kubernetes 集群中部署依赖于数据库的微服务(可能有多个实例)?

我想运行一个使用数据库的微服务。DB 也需要使用 PVC/PV 部署在同一个 kubernetes 集群中。用于实现此类逻辑的 kubernetes 服务名称/命令是什么:

  1. 部署数据库实例
  2. 如果1成功,则部署微服务,否则返回1并尝试(如果100次失败-则停止并报警)
  3. 如果 2 成功,请使用它,如果需要自动缩放(自动缩放 kubernetes 选项)

我主要关心 1-2:没有数据库,服务无法工作,但同时需要在不同的 pod 中(或者我错了,最好将 2 个容器:数据库和服务放在同一个 pod 中?)

0 投票
1 回答
444 浏览

kubernetes - 如何重置 K3s 集群 Pod

我有一个带有以下 pod 的 k3s 集群:

如何使用命令(kubectl可能)或任何脚本重置(停止并再次启动 pod)pod?