问题标签 [kubernetes-health-check]
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 - Why does Ingress fail when LoadBalancer works on GKE?
I can't get Ingress to work on GKE, owing to health check failures. I've tried all of the debugging steps I can think of, including:
- Verified I'm not running low on any quotas
- Verified that my service is accessible from within the cluster
- Verified that my service works behind a k8s/GKE Load Balancer.
- Verified that
healthz
checks are passing in Stackdriver logs
... I'd love any advice about how to debug or fix. Details below!
I have set up a service with type LoadBalancer
on GKE. Works great via external IP:
Then I try setting up an Ingress on top of this same service:
The Ingress gets created, but it thinks the backend nodes are unhealthy:
Inspecting the state of the Ingress backend in the GKE web console, I see the same thing:
The health check details appear as expected:
... and from within a pod in my cluster I can call the service successfully:
And I can address the service by NodePort:
(Which goes without saying, because the Load Balancer service I set up in step 1 resulted in a web site that's working just fine.)
I also see healthz
checks passing in Stackdriver logs:
Regarding quotas, I check and see I'm only using 3 of 30 backend services:
kubernetes - Kubernetes - 滚动更新杀死旧 pod 而不启动新 pod
我目前正在使用 Deployments 来管理我的 K8S 集群中的 pod。
我的一些部署需要 2 个 pod/副本,有些需要 3 个 pod/副本,其中一些只需要 1 个 pod/副本。我遇到的问题是带有一个 pod/副本的问题。
我的 YAML 文件是:
我有一个运行良好的旧版本。
现在我想更新图像:
现在根据 RollingUpdate 的设计,K8S 应该在保持旧 pod 工作的同时启动新 pod,并且只有在新 pod 准备好接受流量时,旧 pod 才会被删除。但我看到的是,旧的 pod 立即被删除,新的 pod 被创建,然后开始占用流量需要时间,这意味着我必须放弃流量。
我用过maxSurge: 2
&maxUnavailable: 1
但这似乎不起作用。
任何想法为什么这不起作用?
docker - 跨数据中心的 Kubernetes 部署
是否可以将流量从在一个数据中心运行的 mysql k8s 部署故障转移到在另一个数据中心运行的部署及其存储?
如果是,我们是否需要将同一个 k8s 集群分布在多个数据中心上,或者我们必须在每个数据中心运行单独的 k8s 集群?
k8s 将如何跨数据中心运送或管理存储卷?为此,我们是否需要一种特殊类型的云存储?
注意:我只是将 mysql 作为需要存储一些数据的应用程序的示例,它可以是任何有状态的需要继承其数据量的应用程序。它不是像 mysql-HA 那样的 HA,它只是开始为应用程序提供服务,因为它是从其他地方自动连同其数据一起提供的。将数据存储到卷的任何应用程序。
我们如何使用 k8s 为跨数据中心的有状态应用程序实现 HA。
谢谢
kubernetes - kubernetes-dashboard CrashLoopBackOff:无法读取 CA 证书:打开:没有这样的文件或目录
我刚刚根据本手册使用 kubeadm 在 CentOS7 上安装了一个单节点 kubernetes 集群,然后安装了 kubernetes-dashboard 扩展。但是 pod 状态是CrashLoopBackOff
.
我检查了仪表板 docker 容器的日志,发现以下错误:
这是什么意思?
kubernetes - 是否可以通过 HTTP 或 TCP 对 Kubernetes API 服务器进行健康检查?
我需要在 DigitalOcean 上对一组 Kubernetes API 服务器(1.7 版)进行负载均衡,但问题是 Kubernetes API 服务器似乎只支持 HTTPS,而 DigitalOcean 负载均衡器只能进行HTTP 或 TCP 健康检查。
有没有办法通过 HTTP 或 TCP 对 Kubernetes API 服务器进行健康检查?
kubernetes - 执行和初始化 kubeadm 时出错
初始化kubeadm
时出现以下错误。kubeadm reset
在做之前我也尝试过命令kubadm init
。Kubelet 也在运行,我使用的命令是systemctl enable kubelet && systemctl start kubelet
. 以下是执行 kubeadm init 后的日志
以下是输出journalctl -u kubelet
kubernetes - 如何在 Kubernetes 中获取 Kubernetes 组件指标数据?
我正在尝试获取网络输入和输出字节、磁盘读写速度等指标数据。在 kubernetes 仪表板上,我只获取内存和 CPU 数据。我什至在 kube-system 命名空间中安装了 heapster、influx db 和 grafana。当我运行命令 kubectl cluster-info 时,它显示“无法访问此站点”。因此,仪表板似乎正在运行,但其他 API 没有。还有其他方法可以获取此指标数据吗?
kubernetes - 就绪探测失败:HTTP 探测失败,状态码:500 后退重新启动失败的容器
我使用 kubeadm 来部署我的 Kubernetes 仪表板。当我尝试使用默认服务帐户在我的 dev 命名空间中部署nginx-ingress-controller时,我遇到了liveness probe和 readiness 失败并显示状态码。
nginx-ingress-controller 图像是
我在测试命名空间中也遇到了同样的错误。在我的日志中显示
为什么我在集群范围内出现故障;我的失败在哪里?