问题标签 [kubernetes-ingress]
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 - Kubernetes Ingress - 服务路由的入口不起作用
我有一个像下面这样的入口。
kubectl 获取测试入口 -o yaml
我的服务如下,
kubectl 获取 svc 测试 -o yaml
豆荚运行良好。这有什么问题?为什么从入口到服务的路由不起作用。
访问入口端点时出错,
谢谢,
google-cloud-platform - GKE Ingress:下载文件时出现 502 错误
我在 GKE 上部署了集群,并通过Ingress公开。静态资源和多数或 REST 请求工作正常。但我在下载文件请求时收到 502 服务器错误。错误信息是:The server encountered a temporary error and could not complete your request.Please try again in 30 seconds.
如果没有 Ingres,当使用 LoadBalancer 时,下载工作正常。我怀疑 Ingress 不喜欢后端响应。这是成功响应标头(没有 Ingress):
我试过的:
- 将云控制台中入口转发规则的后端服务超时从默认的 30 秒增加到 100 秒
- 搜索堆栈驱动程序日志 - 没有找到入口控制器的任何日志。
为什么此请求不适用于 Ingress,如何解决?我在哪里可以找到 GKE 中的 Ingress 日志?
https - 如何让 Kubernetes Ingress 终止 SSL 和代理服务?
我有一个在裸机上使用 kubernetes 的 centos7 部署。一切都很好。但是,我想得到一份Ingress
工作。所以简而言之,我想做的是从 Ingress 中终止 SSL,并在 ingress 和我的服务之间使用普通的 http。这就是我所做的:
2)我有一个入口控制器设置为:
注意 DaemonSet 和 nodeSelector。还有hostNetwork = true
这样我的 kubernetes 节点将打开 80 和 443 来监听路由)。
所以我尝试访问http://foo.bar.com,不出所料,什么也没有。我只是得到default backend - 404
页面。我需要入口规则....
3)所以我创建了这样的Ingress
规则:
所以它很好用!...对于 http...当我在http://foo.bar.com访问我的节点时,我可以访问我的服务(集线器)并可以登录。但是,由于必须登录,因此只有强制执行 https 才有意义......
所以我的问题是,当我将浏览器切换到https://foo.bar.com时,我最终得到了一个default backend - 404
页面。
查看上面提供的证书,我发现它是由 kubernetes 创建的:
检查我的秘密:
我究竟做错了什么?
nginx - Nginx反向代理504网关超时仅发生在浏览器访问中
我使用 Nginx 作为反向代理,当我从浏览器(Chrome、Firefox)访问 url 时,它会显示 504 网关超时。但是当我使用curl
或wget
访问该 url 时,它工作正常。这真的是一个奇怪的问题,有人可以帮我吗?
以下是我的配置:https ://pastebin.com/fZHEtRGa
上游配置是:
服务器配置是
kubernetes - 重写目标不起作用
我正在尝试使用来自 kubernetes 的重写目标,gcloud
但它似乎没有得到尊重。我的代码如下。也许有一些我没见过的东西:
当我这样做时,curl mycustomdomain.com/api/something
我的后端总是接收backend/api/something
而不是backend/something
. 我真的没有想法,我可以使用一些帮助。
nginx - jwilder/nginx-proxy 和 kubernetes/ingress-nginx 有什么区别
jwilder/nginx-proxy 在 Docker Hub 上有 1.3K STARS 和 10M+ PULLS。并在 GitHub 上观看 262、Star 7701、Fork 1546。 https://github.com/jwilder/nginx-proxy
kubernetes/ingress-nginx 在 kubeapps.com 上获得了 13 颗星(最多星的图表之一),在 GitHub 上获得了 Watch 137、Star 1596、Fork 918。 https://github.com/kubernetes/ingress-nginx
- 两者有什么区别?
- 您什么时候会使用其中一种?
nginx - 如何在端口 80 / 443 的公共节点 IP 上公开 kubernetes nginx-ingress 服务?
我安装ingress-nginx
在一个集群中。我尝试使用该kind: nodePort
选项公开服务,但这仅允许30000-32767
(AFAIK)之间的端口范围......我需要在端口80
为 http 和443
tls 公开服务,以便我可以A Records
将域直接链接到服务. 有谁知道如何做到这一点?
我之前尝试type: LoadBalancer
过,效果很好,但这会在我的云提供商处为每个集群创建一个新的外部负载均衡器。在我目前的情况下,我想生成多个迷你集群。为每个集群创建一个新的(digitalocean)负载平衡器太昂贵了,所以我决定用它自己的内部入口控制器运行每个集群,并将其直接暴露在80/443
.
docker - Kubenetes:是否可以在 Kubernetes 集群中使用单个请求命中多个 pod
我想清除 Kubernetes 命名空间中所有 pod 中的缓存。我想向端点发送一个请求,然后它将向命名空间中的所有 pod 发送 HTTP 调用以清除缓存。目前,我只能使用 Kubernetes 命中一个 pod,而且我无法控制哪个 pod 会被命中。
即使负载均衡器设置为 RR,连续访问 pod(n 次,其中 n 是 pod 的总数)也无济于事,因为其他一些请求可能会悄悄进入。
这里讨论了同样的问题,但我找不到实现的解决方案: https ://github.com/kubernetes/kubernetes/issues/18755
我正在尝试使用 Hazelcast 实现清除缓存部分,其中我将存储所有缓存,Hazelcast 会自动处理缓存更新。
如果有解决此问题的替代方法,或者配置 Kubernetes 以针对某些特定请求命中所有端点的方法,那么在此处分享将有很大帮助。
amazon-web-services - 让外部 DNS 与 Kops AWS 1.7 K8s 集群中的入口对象一起使用
我试图弄清楚如何让这个设置工作:
- 我正在使用从 AWS 中的 kops 推出的 Kube 1.7(无 RBAC)
- 我的整个集群有一个 nginx 入口控制器,它使用通过 Helm 安装的命名空间
LoadBalancer
中的服务kube-system
- 我已经
cert-manager
设置kube-system
,通过 Helm 安装并使用ClusterIssuers
- 我已经通过 Helm 安装
external-dns
了kube-system
- 我有多个应用程序,每个命名空间一个,每个命名空间中都有关联
Ingress
的对象。 - 我正在使用
cert-manager
(certmanager.k8s.io/cluster-issuer: letsencrypt-prod
) 和external-dns
(dns.alpha.kubernetes.io/external: app.contoso.com
)的适当注释来注释 Ingress
在这种情况下,cert-manager
正在对对象做出适当的反应Ingress
(修改它以完成 ACME 质询),但external-dns
没有做任何事情(日志显示所有主机名都是最新的)。如果我为与 LB 服务关联的 ELB 手动添加 Route53 记录,一切都会按预期工作。检查 Ingress 对象,我看到状态块如下所示:
我想这是为什么external-dns
没有反应?我怎样才能让它工作?根据文档
更多故障排除信息(pod 定义、入口定义、控制器日志等)可以在这里找到:https ://gist.github.com/DWSR/f6d596850346223393bec23b289c9731
minikube - Minikube Ingress:读取 configmap kube-system/tcp-services 时出现意外错误:未找到 configmap kube-system/tcp-services
我正在使用以下配置运行 minikube
环境:
- minikube 版本:v0.25.2
- macOS 版本: 10.12.6
- 驱动程序名称: virtualbox
- ISO: minikube-v0.25.1.iso
我创建了入口资源来映射服务:messy-chimp-emauser
到路径:/
但是,当我推出对 minikube 的更改时,我在 pod 中的日志低于nginx-ingress-controller
因此在尝试从浏览器访问服务时得到 HTTP - 503
重现步骤
步骤1
minikube addons enable ingress
第 2 步
kubectl create -f kube-resources.yml
(用 替换实际图像k8s.gcr.io/echoserver:1.4
)
kube-resources.yml
请求请就此提出建议。