我注意到(但我无法解释)某些服务具有
['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
的作用是什么?
答案 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?将有助于理解一个概念及其工作方式。