0

我注意到,但我无法解释,有些服务有

NAME      TYPE       CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
web       NodePort   10.104.133.249   <none>        8080:31637/TCP   12m

PORT(S) 部分看起来像这样8080:31637/TCP。但这项服务

NAME                            TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)    AGE    SELECTOR                                                         
grafana                         ClusterIP   10.109.88.206    <none>        80/TCP     84s    app=grafana,release=grafana

只有80/TCP. 这些服务之间究竟有什么区别?端口到底是31637做什么的?

4

1 回答 1

2

将在一组 Pod 上运行的应用程序公开为网络服务的服务抽象方式。使用 ClusterIP,集群中的 pod/服务可以访问服务,但无法从外部网络访问,而 NodePort 将服务暴露在 30000-32767 范围之间的随机端口上,该端口基本上映射到集群内部的端口。

在您的情况下web,服务公开为 NodePort 类型,您可以从外部通过端口 31637 访问它,而您无法访问grafana服务,因为它没有暴露给外部网络。

查看这个线程,Kubernetes 中的 ClusterIP、NodePort 和 LoadBalancer 服务类型有什么区别? 这将有助于理解一个概念及其工作原理。

于 2019-07-23T15:43:54.613 回答