2.1 Enable Remote Access to CoreDNS

Casablanca

This installation step is required for Casablanca in order to enable automatic DNS updates on failover.

Setup required to test DnsSwitch functionality

These steps are used to test DNSSwitch functionality within PROM POD

1. Place dnsSwitch.bash on core-dns master under /home/ubuntu

2.Following are the steps to create ssh key for remote core-dns connection

a. As a root user, execute below command on coredns master (make sure to use the key name as coredns.key) : $ ssh-keygen -t rsa -f coredns.key (hit Enter key for the prompts) This creates two files: coredns.key and coredns.key.pub b. verify below command works for root user without any prompts(because the key was added with root user): ssh -i coredns.key root@<corednsHost> c. Copy coredns.key and coredns.key.pub files to /dockerdata-nfs/coredns on all Master sites



3. Make sure kubectl works on core-dns master

#kubernetes cluster was installed using ubuntu, hence below does not work root@core-dns-master:/home/ubuntu# kubectl get pods -n onap The connection to the server localhost:8080 was refused - did you specify the right host or port? #copy kube config using root user to /root to make it work root@core-dns-master:/home/ubuntu# cp /home/ubuntu/.kube/ /root #verify kubectl works from root user root@core-dns-master:~# kubectl get pods --all-namespaces NAMESPACE NAME READY STATUS RESTARTS AGE kube-system coredns-7fd6694686-dnwt7 1/1 Running 2 11d kube-system coredns-7fd6694686-jrj92 1/1 Running 2 11d kube-system etcd-core-dns-master 1/1 Running 2 12d kube-system kube-apiserver-core-dns-master 1/1 Running 10 12d kube-system kube-controller-manager-core-dns-master 1/1 Running 8 12d kube-system kube-proxy-j4wlv 1/1 Running 2 12d kube-system kube-proxy-q74fc 1/1 Running 2 12d kube-system kube-scheduler-core-dns-master 1/1 Running 7 12d kube-system tiller-deploy-84f4c8bb78-skvlp 1/1 Running 2 12d kube-system weave-net-lq4ls 2/2 Running 7 12d kube-system weave-net-rm6z4 2/2 Running 15 12d



6. Execute sdnc.makeActive script from Site A or Site B  to trigger manual failover and DNSSwitch

root@k8s-master:/home/ubuntu# ./sdnc.makeActive



7. You may verify the logs on core-dns master :

root@core-dns-master:~$ ll *.log -rw-r--r-- 1 root root 12002 May 1 11:28 dnsSwitch.log root@core-dns-master:~$ root@core-dns-master:~$ cat dnsSwitch.log Fri Apr 27 09:16:10 EDT 2018 script called from site: 10.147.113.136 Fri Apr 27 09:16:10 EDT 2018 logging current dns entry Server: 10.96.0.10 Address: 10.96.0.10#53 Name: sdnc.example.com Address: 10.147.112.139 Fri Apr 27 09:16:10 EDT 2018 editing dns zone Fri Apr 27 09:16:10 EDT 2018 verify if dns domain address exist in configuration for given app: sdnc Fri Apr 27 09:16:10 EDT 2018 dns domain address was found Fri Apr 27 09:16:10 EDT 2018 dns zone file edited Fri Apr 27 09:16:10 EDT 2018 editing coredns configmap configmap "coredns" deleted configmap "coredns" created Fri Apr 27 09:16:11 EDT 2018 coredns configmap edited Fri Apr 27 09:16:11 EDT 2018 waiting for dns cache time Fri Apr 27 09:17:01 EDT 2018 sending refresh signal for coredns configmap Fri Apr 27 09:17:01 EDT 2018 Completed executing sdnc.dnsswitch on host: core-dns-master