我正在使用https://github.com/kubernetes/charts/tree/master/stable/concourse提供的 concourse helm build 在我们的 kubernetes 集群内设置 concourse。我已经能够使设置正常工作,并且可以在集群内访问它,但在集群外访问它时遇到问题。构建中的注释显示我可以使用kubectl port-forward
它来访问网页,但我不希望所有开发人员都必须转发端口才能访问 web ui。我尝试创建一个具有如下节点端口的服务:
apiVersion: v1
kind: Service
metadata:
name: concourse
namespace: concourse-ci
spec:
ports:
- port: 8080
name: atc
nodePort: 31080
- port: 2222
name: tsa
nodePort: 31222
selector:
app: concourse-web
type: NodePort
这使我可以访问网页并以大多数方式与之交互,但是当我尝试查看构建状态时,它永远不会加载发生的事件。取而代之的是,网络请求/api/v1/builds/1/events
处于待处理状态,并且构建的步骤永远不会加载。有什么想法可以完全访问集群外部的大厅吗?
编辑:似乎事件网络请求通常以text/event-stream
数据类型响应,并且 Kubernetes 服务可能没有正确处理事件流。或者有一些关于大厅处理与规范不同的事件流的东西。