问题标签 [readinessprobe]
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.
java - Spring Boot 从就绪或活跃状态中恢复
我正在试验 K8s 和 spring boot liveness and readiness probes。我似乎无法理解和正确修复的一件事是我的 Spring Boot 应用程序应该如何从失败状态中恢复?我有一个简单的场景 - 我的应用程序正在连接到 S3 存储桶并尝试下载内容。而且我想确保当存储桶不可用时,我的就绪状态会自动更改为REFUSING_TRAFFIC
. 但是,当存储桶启动并再次可用时,我希望我的就绪状态再次更新为ACCEPTING_TRAFIC
.
我怎么做?
这是我所拥有的:
我目前观察到的:
- 使 s3 不工作
- 准备是 refusing_traffic
- s3 又开始工作了
- readiness 仍然是 refusing_traffic (但这次它应该接受流量)。
所以我的问题是如何以最好的方式实现这一目标?
kubernetes - 添加资源后 Pod 经常重启
添加资源后 Pod 经常重启。
在此之前没有添加资源。吊舱根本不会重新启动,或者它可能每天只发生一次或两次。
我不确定资源是否会影响健康检查,因此 pod 会经常重启。
以下是描述所有 testservice pod 的结果。
- testservice-dpm-d7979cc69-rwxr4(在 10 分钟内重新启动 7 次,并且现在仍然回退重新启动失败的容器)
- testservice-dpm-d7979cc69-7nq28(10分钟内重启4次,现在运行)
- testservice-dpm-d7979cc69-z566c(10 分钟内不重启,现在正在运行)
kubernetes - bitnami/zookeeper 和 bitnami/kafka 图像的 Liveness/Readiness 探测失败
我正在尝试使用 bitnami/zookeeper 图像为 zookeeper 添加 liveness 和 readinessprobe,但是 pod 创建失败,请让我知道需要在 liveness 和 readiness 探针中添加哪些值。
以下是我尝试过的值。
我收到以下错误。
[spec.containers[0].livenessProbe:必填值:必须指定处理程序类型,spec.containers[0].readinessProbe:必填值:必须指定处理程序类型]
kubernetes - 如何从 Kubernetes 探针测试文件是否存在?
我在 MySQL Pod 中有一个 sidecar 容器,它将使用 MySQL 套接字文件来访问数据库。
我想确保 MySQL 已经成功启动,因此在这个 sidecar 容器启动之前已经创建了套接字文件。
我试图用一个存在添加一个readiness
探针,但它失败了:exec.command
test -S /var/run/mysqld/mysqld.sock
当我在 sidecar 容器中打开一个终端会话时,我可以ls
使用套接字文件,它就在那里。
所以看起来我的test -S <path>
命令在探测的上下文中没有按预期工作。
如何编写我的探针,以便一旦套接字文件可用,我的边车容器就会启动?
kubernetes - Cloud2Edge 包的 Eclipse Hono pod 中的准备工作失败
我有点绝望,我希望有人能帮助我。几个月前,我按照安装说明在 kubernetes 集群上安装了eclipse cloud2edge包,创建了一个 persistentVolume 并使用这些选项运行 helm install 命令。
persistentVolume 的 yaml 如下,我在安装包的同一个命名空间中创建它。
一切正常,所有 pod 都已准备好并正在运行,直到有一天集群崩溃并且一些 pod 停止工作。
kubectl get pods -n $NS输出如下:
运行kubectl describe pod POD_NAME -n $NS时,失败的 pod 都会出现相同的错误。
据此,readinessProbe 失败。在受影响部署的 yalm 定义中,定义了 readinessProbe:
我尝试增加这些值,将延迟增加到 600 并将超时增加到 10。我还尝试卸载软件包并再次安装它,但没有任何变化:安装失败,因为 pod 从未准备好并且超时弹出。我还暴露了端口 8088(健康)并使用 wget 调用 /readiness,结果仍然是 503。另一方面,我测试了 livenessProbe 是否工作并且工作正常。我也尝试过重置集群。首先,我手动删除了其中的所有内容,然后使用了以下命令:
集群似乎工作正常,因为 Eclipse Ditto 部分没有问题,它只是 Eclipse Hono 部分。我添加了更多信息,以防它可能有用。
kubectl记录 dt-service-command-router-b654c8dcb-s2g6t -n $NS输出:
kubectl记录 dt-adapter-amqp-vertx-74d69cbc44-7kmdq -n $NS输出:
kubectl版本输出如下:
提前致谢!
rabbitmq - 准备就绪探测失败:拨号 tcp:5672 连接:rabbitmq-cluster pod 中的连接被拒绝错误
我是 rabbitmq 的新手,希望能帮助我解决我面临的问题。
我在 Azure 上托管的 openshift 上使用 rabbitmq 集群 k8s 运算符部署了 rabbitmq。(这是我提到的部署操作员的指南)。
操作员和集群已启动并运行,还可以访问 localhost:15672 上的管理 UI。
但是当我描述 pod 时,它显示就绪探测失败的警告:
dial tcp <IP>:5672 connect: 连接被拒绝
因此,当我尝试运行 rabbitmq hello world tutorial时,它失败并出现错误:
(172.30.69.51 是集群IP)
在管理 UI 中,我能够创建新的交换、队列和绑定以及发送和发布消息。
PS。抱歉,如果对话格式不正确,请随时纠正我,下次我会注意的。谢谢你。
angular - 如何为 Angular 应用程序设计就绪和活跃度探针
我有一个 Angular 应用程序,它部署在 Kubernetes 上运行的 apache 容器上。我想为 pod 设置活跃度和就绪性探测,但我没有想法。任何帮助将不胜感激。