同一个 Namespace

K8s 给每个内部服务提供了一个内部使用的 host,格式为 <servicename>.<namespace>。可以在代码中直接访问 http://<servicename>.<namespace>:<port> 来访问另一个服务。如果是部署到默认 Namespace 下的服务,Namespace 为 default

不同 Namespace

无论是相同还是不同 Namespace,都可以通过以下格式访问:

  • {SERVICE_NAME}.{NAMESPACE_NAME}.svc.cluster.local
  • {SERVICE_NAME}.{NAMESPACE_NAME}(短格式)

Namespace 的作用是形成逻辑上的"组",以方便不同组的资源进行隔离使用和管理。

例如:my-service.default.svc.cluster.local 中,default 是命名空间,svc 表示这是一个 Service,cluster.local 是集群域(在不同集群中可能有所不同)。