kubernetes coredns is in CrashLoopBackOff status with "no nameservers found" error
The cause was that coredns has a forwarding setting on its ConfigMap by default. It was trying to forward requests to upstream DNS server though there's no DNS setting on /etc/resolv.conf.
# kubectl edit configmap coredns -n kube-system
After deleting the following section, it started and worked properly.
forward . /etc/resolv.conf {
max_concurrent 1000
}