问题标签 [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.
kubernetes - 在 pod 中的容器之间共享非持久卷
我正在尝试将两个 nodejs 应用程序放入同一个 pod,因为通常它们应该位于同一台机器上,并且不幸的是,它们以这样一种方式紧密耦合在一起,以至于它们中的每一个都在寻找另一个的文件夹(pos/app. js 需要 /pos-service,而 pos-service/app.js 需要 /pos)
最后,该文件夹应该包含:
他们的卷不需要是持久的,所以我尝试与 emptyDir 共享他们的卷,如下所示:
但是,当 Pod 启动时,我执行到每个容器中,它们似乎仍然是孤立的,并且看不到彼此的文件夹
我会欣赏任何帮助,谢谢
kubernetes - 创建 Pod 后是否可以添加新的 Container?
假设我创建了一个有 1 个容器的 Pod,现在我想向它添加第二个容器,我该怎么做?
kubernetes - 如果容器不健康,有没有办法自动重启 Pod 部署
我的 kubernetes 集群有一个 pod 部署定义,有 10 个 pod 副本。我遇到了一个问题,即 pod 实例的容器将进入不可恢复状态,我发现的唯一缓解方法是通过以下命令重新启动 pod 部署:
我想要一种通过活性探针甚至 pod 条件状态自动执行 pod 部署重启的方法。
是否有任何当前开箱即用的解决方案?
kubernetes-pod - YAML 文件中的 Kubernetes 命令和参数
Pod YAML 文件中的以下三个声明有什么区别:
- 容器:
- 名称:busybox
图片:busybox
参数:
-sleep
-"1000"
容器:
- 名称:busybox
图像:busybox
命令:["/bin/sh", "-c", "sleep 1000"]
- 名称:busybox
容器:
- 名称:busybox
图片:busybox
参数:
-/bin/sh
--c
-sleep 1000
另外,上面的1、2和3会产生相同的结果吗?
我进一步编辑。这真的越来越令人困惑。看来,以下两个将产生相同的结果。如果是这样,不确定每个的目的是什么:
命令:
-睡眠
-“5000”
参数:
-睡眠
-“5000”
shell - 需要在 Kubernetes 容器中通过命令进行输入
以下三个传递命令/参数的声明有什么区别:
容器:
名称:busybox
图像:busybox
参数:
-sleep
-"1000"容器:
名称:busybox
图像:busybox
命令:["/bin/sh", "-c", "sleep 1000"]容器:
名称:busybox
图像:busybox
参数:
-sleep
-"1000"
A. 这些会产生相同的结果吗?
B. 每个人的偏好或用途是什么?
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 容器发出停止运行的信号,我将不胜感激?
kubernetes - 主容器完成后如何优雅关闭边车容器
我有一个 Kubernetes 清单文件,它有 2 个容器。主容器正在收集某个时间段的数据和其他(logstash)容器读取主容器的日志并将其运送到ELK堆栈。主容器完成其工作后,优雅地发出信号或关闭 logstash 容器的最佳方式是什么?
kubernetes - 在所有容器中打开端口
在我的 openshift 集群中,我注意到我所有的 pod 都有一个开放的端口,而我没有指定它。它的 pott 443 显然用于本文中提到的 k8s api。
即使读完,我仍然不明白一些事情。
我了解该服务存在并转发到所有 pod。但是为了让 pod 使用此服务接收和发送请求。容器中的端口必须是开放的。但不知何故,即使没有在我的 pod 容器上指定端口。默认的 443 端口是打开的。这让我可以做这样的事情:
- 创建目标端口设置为 443 的服务
- 没有打开容器端口的设置 pod。
- 成功使用服务与容器通信。
这安全吗?,什么会在没有我指定的情况下打开容器端口?有没有办法防止这种情况发生?
kubernetes - 如何在同一个 Kubernetes 集群中部署依赖于数据库的微服务(可能有多个实例)?
我想运行一个使用数据库的微服务。DB 也需要使用 PVC/PV 部署在同一个 kubernetes 集群中。用于实现此类逻辑的 kubernetes 服务名称/命令是什么:
- 部署数据库实例
- 如果1成功,则部署微服务,否则返回1并尝试(如果100次失败-则停止并报警)
- 如果 2 成功,请使用它,如果需要自动缩放(自动缩放 kubernetes 选项)
我主要关心 1-2:没有数据库,服务无法工作,但同时需要在不同的 pod 中(或者我错了,最好将 2 个容器:数据库和服务放在同一个 pod 中?)
kubernetes - 如何重置 K3s 集群 Pod
我有一个带有以下 pod 的 k3s 集群:
如何使用命令(kubectl
可能)或任何脚本重置(停止并再次启动 pod)pod?