---
slug: "kubernetes-name-resolv-dns-another-pod"
title: "Kubernetes で他の Pod と通信する"
description: "同じ namespace 内であれば、 Service の metadata.name で名前解決ができる。"
url: "https://www.ytyng.com/blog/kubernetes-name-resolv-dns-another-pod"
publish_date: "2023-10-07T09:46:45Z"
created: "2023-10-07T09:46:45Z"
updated: "2026-02-26T05:20:57.906Z"
categories: []
keywords: ""
featured_image_url: "https://media.ytyng.com/resize/20250615/24cec32d468b4be7a087bc74cd27c774.png.webp?width=768"
has_video: true
has_music: true
video_urls: ["https://media.ytyng.net/ytyng-blog/293/featured-video-1.mp4", "https://media.ytyng.net/ytyng-blog/293/featured-video-2.mp4", "https://media.ytyng.net/ytyng-blog/293/featured-video-3.mp4"]
music_urls: ["https://media.ytyng.net/ytyng-blog/293/featured-music-293-3.mp3", "https://media.ytyng.net/ytyng-blog/293/featured-music-293-4.mp3"]
lang: "ja"
---

# Kubernetes で他の Pod と通信する

同じ namespace 内であれば、 Service の `metadata.name` で名前解決ができる。

## Service

```yaml
apiVersion: v1
kind: Service
metadata:
  name: redis
  namespace: airflow
spec:
  ports:
    - name: "6379"
      port: 6379
      targetPort: 6379
```

とすると、他の Pod から `redis` で名前解決できる。

```
redis://:@redis:6379/0
```

同様に

```yaml
apiVersion: v1
kind: Service
metadata:
  name: postgres
  namespace: airflow
spec:
  ports:
    - name: "5432"
      port: 5432
      targetPort: 5432
```

とすれば

```
db+postgresql://username:password@postgres/airflow
postgresql+psycopg2://username:password@postgres/airflow
```

とできる
