Kubernetes服务端口映射

时间:2019-07-23 15:30:34

标签: kubernetes kubernetes-service

我注意到(但我无法解释)某些服务具有

['A B', 'B C', 'C D', 'E F', 'F G', 'G H', 'H I', 'I J', 'K L', 'L M', 'M N']

PORT(S)部分看起来像这样NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE web NodePort 10.104.133.249 <none> 8080:31637/TCP 12m 。但是这项服务

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的作用是什么?

1 个答案:

答案 0 :(得分:2)

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

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

检查此线程,What's the difference between ClusterIP, NodePort and LoadBalancer service types in Kubernetes?将有助于理解一个概念及其工作方式。