k8s 服务发现

服务发现

通过环境变量发现服务

在 pod 开始运行的时候,Kubernetes 会初始化一系列的环境变量指向现在存在的服务。如果创建的服务早于客户端 pod 的创建,pod 上的进程可以根据环境变量获得服务的 IP 地址和端口号。

通过 DNS 发现服务

在 kube-system 命名空间下有个 pod 运行 DNS 服务,在集群中的其他 pod 都被配置成使用其作为 dns。运行在 pod 上的进程 DNS 查询都会被 Kubernetes 自身的 DNS 服务器响应,该服务器知道系统中运行的所有服务。
pod 是否使用内部的 DNS 服务器是根据 pod 中 spec 的 dnsPolicy 属性来决定的。
backend database 对应于服务名称,default 表示服务在其中定义的名称空间,而 svc.cluster.local 是在所有集群本地服务名称中使用的可配置集群域后缀。
如果两个 pod 在同一个命名空间下,可以省略 svc.cluster.local 后缀,甚至命名空间。

一般使用 DNS 来做服务发现。

相关推荐

  1. k8s 服务发现

    2024-05-14 07:34:09       24 阅读
  2. k8s服务发现

    2024-05-14 07:34:09       55 阅读
  3. k8s学习 — (实践)第五章 服务发现

    2024-05-14 07:34:09       52 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-14 07:34:09       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-14 07:34:09       100 阅读
  3. 在Django里面运行非项目文件

    2024-05-14 07:34:09       82 阅读
  4. Python语言-面向对象

    2024-05-14 07:34:09       91 阅读

热门阅读

  1. react之Reducer和Context的联合使用

    2024-05-14 07:34:09       31 阅读
  2. Python 中的 heapq 模块简介

    2024-05-14 07:34:09       31 阅读
  3. 项目总结(后面应该怎做)

    2024-05-14 07:34:09       36 阅读