Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to find master node from worker node in Kubernetes

I need to know to which master node my current worker node is connected. I can see the worker nodes by typing "kubectl get nodes" command in the master node, but I need to find the master node from the worker node itself.

In simple words, How to find the master node from the worker node in the kubernetes cluster?

like image 348
AATHITH RAJENDRAN Avatar asked Oct 23 '18 04:10

AATHITH RAJENDRAN


People also ask

How does the worker nodes in Kubernetes are related with master node?

A Kubernetes cluster is made up of one master node and several worker nodes. The worker nodes are responsible for running the containers and doing any work assigned to them by the master node. The master node looks after: scheduling and scaling applications.


2 Answers

You can usually find it on your kubelet config file: /etc/kubernetes/kubelet.conf

$ cat /etc/kubernetes/kubelet.conf
apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: REDACTED
    server: https://1.1.1.1:6443 <== here
  name: default-cluster
contexts:
- context:
    cluster: default-cluster
    namespace: default
    user: default-auth
  name: default-context
current-context: default-context
kind: Config
preferences: {}
users:
- name: default-auth
  user:
    client-certificate: /var/lib/kubelet/pki/kubelet-client-current.pem
    client-key: /var/lib/kubelet/pki/kubelet-client-current.pem

If you have something like yq you can get it like this:

yq .clusters[0].cluster.server /etc/kubernetes/kubelet.conf | tr -d "\n\""
like image 75
Rico Avatar answered Oct 27 '22 10:10

Rico


When creating a cluster in GCP and then connect to that cluster with

gcloud container clusters get-credentials kafka-and-zookeepr --zone us-central1-a --project {YOUR_PROJECT_NAME} 

you can issue

kubectl cluster-info   

This will return

Kubernetes master is running at https://xxx.xxx.xxx.xxx
GLBCDefaultBackend is running at https://xxx.xxx.xxx.xxx/api/v1/namespaces/kube-system/services/default-http-backend:http/proxy
Heapster is running at https://xxx.xxx.xxx.xxx/api/v1/namespaces/kube-system/services/heapster/proxy
KubeDNS is running at https://xxx.xxx.xxx.xxx/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
Metrics-server is running at https://xxx.xxx.xxx.xxx/api/v1/namespaces/kube-system/services/https:metrics-server:/proxy

NOTE: I have docker installed on my local machine

like image 43
Adelin Avatar answered Oct 27 '22 10:10

Adelin