我有部署在端口9001上托管网站的服务以及附加到它的服务。我想允许任何人(来自外部群集)能够连接到该站点。
任何帮助都将不胜感激。
答案 0 :(得分:1)
我想允许任何人(来自外部群集)能够连接到该网站
有许多方法可以使用kubernetes services将网站的端口9001
公开给外界:
ExternalIP:Port
点击。NodeIP:NodePort
点击。答案 1 :(得分:0)
如果您希望公开您的应用程序,服务类型 Loadbalancer 将是可行的。
输入LoadBalancer 在支持外部负载均衡器的云提供商上,将类型字段设置为" LoadBalancer"将为您的服务配置负载均衡器。负载均衡器的实际创建是异步发生的,有关已配置的均衡器的信息将发布在Service的status.loadBalancer字段中。
例如
kind: Service
apiVersion: v1
metadata:
name: my-service
spec:
selector:
app: MyApp
ports:
- protocol: TCP
port: 80
targetPort: 9091
type: LoadBalancer
我附上了一个链接,可以获得进一步的见解。 Kubernetes-service
答案 2 :(得分:0)
正如您所写,这不是云部署,您需要考虑如何以适当的方式正确地向世界展示这一点。 First和formost,为您的部署创建NodePort类型服务。这样,您的节点就会在高端口上公开该服务。
根据您的网络,此时您需要在网络中配置负载均衡器以将某些IP:80的流量转发到您的节点高NodePort,或者例如在带有{{1的DeamonSet中部署HAProxy将代理80代理到你的NodePort。
通过部署Nginx IngressController(如上所述)可以添加更多的复杂性,并使用Ingress使Ingress Controller公开您的所有服务,而无需为每个服务提供NodePort / LB / HAProxy。更多。