Статикалық DNS жазбаларын қосу
Домендік атау берілген IP мекенжайға үнемі шешілуі үшін, кластердің DNS сервисіне статикалық DNS жазбасын қосу қажет.
Мақалада СoreDNS ресурсын пайдаланып, домен мен IP мекенжайды кластердің DNS сервисіне қалай қосу керектігінің мысалы көрсетілген.
-
Жасаңыз Kubernetes кластерін өзекті нұсқада, егер бұл әлі жасалмаған болса.
Кластер параметрлерін өз қалауыңыз бойынша таңдаңыз.
-
kubectlкөмегімен кластерге қосыла алатыныңызға көз жеткізіңіз.
-
Команданы орындаңыз:
kubectl edit cm coredns -n kube-systemCoreDNS ресурсының ConfigMap файлы ашылады.
-
Төменде көрсетілгендей, домен мен IP мекенжайды ресурс сипаттамасына
.:53блогының алдына қосыңыз:apiVersion: v1data:Corefile: |myhost.com {hosts {8.8.8.8 myhost.comfallthrough}}.:53 {errorsloghealthkubernetes cluster.local 10.254.0.0/16 10.100.0.0/16 {pods insecure}prometheus :9153forward . /etc/resolv.confcache 30}Мұнда:
8.8.8.8— қосылатын доменнің IP мекенжайы.myhost.com— хосттың домендік атауы.fallthrough— егер домен ағымдағы аймақта табылмаса, сұрауды келесі плагиндерде өңдеуді жалғастыруға мүмкіндік беретін параметр.
CoreDNS конфигурацияны 1-2 минут ішінде автоматты түрде қайта жүктейді. Өзгерістердің қолданылғанын күтіңіз.
-
Уақытша под жасаңыз:
kubectl run -it --rm dns-test --image=busybox:1.28 --restart=Never -- nslookup myhost.comКүтілетін шығыс:
Server: 10.254.0.10Address 1: 10.254.0.10 kube-dns.kube-system.svc.cluster.localName: myhost.comAddress 1: 8.8.8.8 -
Егер жауапта
myhost.comхосты үшін басқа IP мекенжай қайтарылса:-
Барлық CoreDNS подтарын қайта іске қосыңыз:
kubectl rollout restart daemonset/coredns -n kube-systemDaemonSet контроллері оларды өзгертілген конфигурация бойынша қайта жасайды.
-
DNS-ті тексеру үшін уақытша подты қайта жасаңыз:
kubectl run -it --rm dns-test --image=busybox:1.28 --restart=Never -- nslookup myhost.com
-
Жұмыс істеп тұрған кластер тарификацияланады және есептеу ресурстарын тұтынады. Егер сіз кластерді тестілеу мақсатында жасап, ол енді қажет болмаса:
- тоқтатыңыз оны кейінірек пайдалану үшін;
- жойыңыз оны біржола.