K8s集群中的DNS服务(CoreDNS)详解
- 作者: 五速梦信息网
- 时间: 2026年04月20日 04:38
80/TCP 3m56s
验证DNS
```csharp
[root@master ~/coredns]# kubectl exec -it pod/dns-source-pod -- sh
/ # nslookup dns-target-service.default.svc.cluster.local
Server: 10.96.0.10
Address: 10.96.0.10:53
Name: dns-target-service.default.svc.cluster.local
Address: 10.96.3.51
验证在不同命名空间下的DNS访问
示例:
# 创建一个新的命名空间
[root@master ~/coredns]# kubectl create ns coredns
namespace/coredns created
[root@master ~/coredns]# kubectl get ns coredns
NAME STATUS AGE
coredns Active 15s
创建Pod和Service进行验证
[root@master ~/coredns]# cat test-3.yaml
apiVersion: v1
kind: Pod
metadata:
name: dns-coredns-pod
namespace: coredns
labels:
app: dns-coredns-test
spec:
containers:
- name: busybox
image: busybox
command: ["sh", "-c", "while true; do sleep 3600; done"]
---
apiVersion: v1
kind: Service
metadata:
name: dns-coredns-service
namespace: coredns
spec:
type: ClusterIP
selector:
app: dns-coredns-test
ports:
- protocol: TCP
port: 80
targetPort: 80
[root@master ~/coredns]# kubectl apply -f test3.yaml
pod/dns-coredns-pod created
service/dns-coredns-service created
[root@master ~]# kubectl get all -n coredns
NAME READY STATUS RESTARTS AGE
pod/dns-coredns-pod 1/1 Running 0 4m36s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/dns-coredns-service ClusterIP 10.96.0.119 80/TCP 4m36s
进行验证
[root@master ~/coredns]# kubectl exec -it dns-target-pod -- sh
/ # nslookup dns-coredns-service.coredns.svc.cluster.local
Server: 10.96.0.10
Address: 10.96.0.10:53
Name: dns-coredns-service.coredns.svc.cluster.local
Address: 10.96.0.119
- 上一篇: K8stools工具
- 下一篇: K8s进阶之外部访问Pod的几种方式





