当前位置: 首页 > 知识库问答 >
问题:

库伯内特斯-如何设置入口?

斜烈
2023-03-14
 I have an application running on 1001. I deployed it to a container in port 80.

我怎样才能使用入口呢?我尝试使用NodePort和--Target etPort=1001,我在servicePort中添加了80在Ingress.yaml

kubectl公开部署测试--Target-port=1001--type=NodePort

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: test-ingress
spec:
  backend:
    serviceName: test
    servicePort: 80

我得到了错误

找不到后端-404

我使用的是正确的方法还是需要遵循其他方法?

共有2个答案

戎元忠
2023-03-14

最后它对我有用。这是我的发现

1)如果您使用的是GCE/GKE,则不需要nginx控制器

2) 端口:如果您使用的是集装箱端口80,则服务端口应为80。

如果应用程序暴露于4000,则NodePort

--port=80
--targetPort=4000

3) 如果您仍然在入口中看到不健康状态。在“运行状况检查”中检查您的路径可能没有指向所需的路径。

例如:我必须指向/main.html在请求路径LB*

裴浩歌
2023-03-14

使用官方kubernetes图表回购中的helm设置nginx ingresshttps://github.com/kubernetes/charts/tree/master/stable/nginx-ingress.

除了nginx入口控制器,您还需要一个入口资源。有关示例,请参阅https://github.com/nginxinc/kubernetes-ingress/tree/master/examples/complete-example。

 类似资料:
  • 我试图设置Kubernetes入口,将外部http流量路由到前端pod(路径/)和后端pod(路径/rest/*),但我总是得到400错误,而不是主nginx索引。html。 所以我在第https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer页尝试了谷歌库伯内特斯的例子,但我总是得到400个错误。有什么想法吗?

  • 是否可以在库伯内特斯中配置入口控制器,仅当传入请求的标头具有特定值时才将HTTP请求路由到服务? 实例 带有以下标头的HTTP请求 应该转发给服务1 带有以下标头的HTTP请求 应该被阻止 如果可能的话,你能详细一点或指向一些文档,因为我找不到这种用例的文档吗

  • 我的公司有一个伪造的CA证书。实例com和一张伪造地图的唱片。实例com连接到我们的负载平衡器的IP 负载平衡器正在将流量转发到我们的Kubernetes群集。 在集群中,我部署了nginx ingress helm图表,在30200处公开了https节点端口 我根据上述证书创建了一个名为test secret的k8s TLS机密。 我部署了一个带有服务“test”的应用程序,并安装了以下入口:

  • 为了在minikube的k8s上运行php fpm应用程序,我缺少一些kubernetes ingress nginx配置。 k8s配置文件: 先前docker开发环境的docker Nginx映像上使用的Nginx服务器工作配置文件(Nginx位于docker中,是与php容器分离的容器): 在浏览器上访问minikube ip时,出现502错误。 我已经安装了运行以下命令的ingress ng

  • 我假设没有愚蠢的问题,所以这里有一个我找不到直接答案的问题。 现在的情况 我目前有一个运行1.15的Kubernetes集群。AKS上的x,通过Terraform部署和管理。AKS最近宣布Azure将在AKS上停用Kubernetes的1.15版本,我需要将集群升级到1.16或更高版本。现在,据我所知,直接在Azure中升级集群不会对集群的内容产生任何影响,即节点、豆荚、秘密和当前在那里的所有其他

  • 新来的。我想知道是否有人可以帮助我区分我可以用来识别入口控制器和通过YAML和服务识别入口的特征。我有一个预先存在的集群,我认为入口控制器可能是通过helm安装的,但我不确定。有没有办法了解helm在安装nginx ingress控制器时使用的yaml?