Merhaba Hocam,
Kubernetes de coredns i ana dns server olarak kullanmak istiyorum. Yani herhangi bir dns serverdan gidip sorgulama yapmasında kendi içerisinde oluşturduğum domain ve ip eşleştirmesinden sorguları çeksin. Bunun için Corefile dosyasını nasıl düzenlemem gerekiyor. Host üzerinde bir dosya oluşturup Corefile dosyasında buradan sorgu çekmesini sağlayabilir miyim.
Coredns’i corefile üzerinden değiştirebilirsiniz. K8s ortamında bu configmap olarak tutuluyor. Bu configmap’i edit ederek istediklerinizi yapabilirsiniz. Custom DNS Entries For Kubernetes buna bir göz atın.
İstediğim domain ip eşletirmesini yapmak için Corefile içerisinde host eklentisini kullandım.
hosts {
192.168.155.155 xxxx.com
fallthrough
}
/etc/resolv.conf dosyamın içeriğide aşağıdaki gibidir.
nameserver 10.96.0.10
search default.svc.cluster.local svc.cluster.local cluster.local my.local.domain
options ndots:5
Dışarıdan bir ip adresi veya domain yazdığımda bu ip adresini bizim istediğimiz dns sunucudan sorgulatmam için corefile dosyamı nasıl düzenleyebilirim.
Bu aşağıdaki configmap’in forward . olan satıra dns server adresinizi yazıp düzenleyerek deploy edin.
apiVersion: v1
kind: ConfigMap
metadata:
name: coredns-custom
namespace: kube-system
data:
test.server: |
.:53 {
errors
health
ready
kubernetes cluster.local in-addr.arpa ip6.arpa {
pods insecure
upstream /etc/resolv.conf
fallthrough in-addr.arpa ip6.arpa
}
prometheus :9153
forward . buraya_forward_edeceginiz_dns_adresini_yazin_misal_8.8.8.8 {
prefer_udp
}
cache 30
loop
reload
loadbalance
}
upstream seçeneği anladığım kadarıyla artık yeni versiyonlarda desteklenmiyor hocam.
/etc/resolv.conf un yanına istediğimiz farklı bir domain adresini yazınca da çözümleme yapıyor. Bu şekilde ki konfigürasyonda herhangi bir sorun olur mu.
Benim default da bir coredns config map im geliyor onun üzerinden düzenleme yaptım. coredns-custom şeklinde ayrı bir configmap oluşturduğumda ikisi aktif olarak çalışır mı. Yada nasıl birbirlerine entegre ederiz. Teşekkürler