반응형
Kube DNS
초기에 클러스터를 만들면 Kube DNS에 관한 Pod(CoreDNS)와 Service(Kube DNS)가 배포된다.
k get svc -n kube-system
k get pod -n kube-system
위의 DNS 기능으로 인해 서비스 리소스를 만들면 서비스의 IP에 도메인 네임을 할당한다.
해당 리소스 이름이 web-service라면 어떠한 파드에서든 내부적으로 아래의 명령어로 접근이 가능하다.
(물론 curl이나 nslookup이 깔려있어야 겠지만 말이다.)
curl http://web-service.default.svc
nslookup web-service.default.svc
그래서 pod에 접근해서 nslookup을 해보자
nslookup으로 DNS 접근하기
방법 1.
apiVersion: v1
kind: Pod
metadata:
name: dnsutils
namespace: default
spec:
containers:
- name: dnsutils
image: registry.k8s.io/e2e-test-images/jessie-dnsutils:1.3
command:
- sleep
- "infinity"
imagePullPolicy: IfNotPresent
restartPolicy: Always
위의 파드를 만들고 파드에 exec로 접근하면 nslookup을 사용할 수 있다.
nslookup my-pod.default.svc
방법 2.
k run my-pod --image=nginx:1.16
k expose pod my-pod --port=80
아무 파드에 접속한 뒤
apt update
apt install yum
apt install dnsutils
위와 같이 설치해준다.
nslookup my-pod.default.svc
그럼 접근되는 걸 볼 수 있다.
728x90
'☸️ Kubernetes' 카테고리의 다른 글
[istio] 서비스 진입 경로 설정 방법과 우회 시 기존 룰 순서의 중요성 (1) | 2024.08.02 |
---|---|
개인 PC에 Kubernetes 환경 설치 (1) | 2024.01.07 |
[Kubernetes] Json (0) | 2024.01.04 |
[Kubernetes] ETCD Snapshot Backup (0) | 2024.01.03 |
[Kubernetes] Cluster Upgrade (0) | 2024.01.03 |