Search code examples
kubernetesetcdkubeadm

Where are the kubernetes 1.8 etcd configuration files?


Questions

Where are the configuration files of etcd which kubeadm init installs?

Background

Followed Using kubeadm to Create a Cluster and noticed there was no step to manually install etcd, hence kubeadm init should be installing it.

Run below to try to see which files but could not find the clue.

for i in $(ls /proc/$(pgrep etcd)/fd) ; do readlink $i; done | grep -v socket
pipe:[432740]
pipe:[432741]
/var/lib/etcd/member/wal/0.tmp
pipe:[432742]
anon_inode:[eventpoll]
/var/lib/etcd/member/snap/db
/var/lib/etcd/member/wal/0000000000000000-0000000000000000.wal
/var/lib/etcd/member/wal

Solution

  • Kubeadm initialises as well as provide adequate files in the /etc/kubernetes directory to kubelet.

    [certificates] Valid certificates and keys now exist in "/etc/kubernetes/pki"
    [kubeconfig] Wrote KubeConfig file to disk: "admin.conf"
    [kubeconfig] Wrote KubeConfig file to disk: "kubelet.conf"
    [kubeconfig] Wrote KubeConfig file to disk: "controller-manager.conf"
    [kubeconfig] Wrote KubeConfig file to disk: "scheduler.conf"
    [etcd] Wrote Static Pod manifest for a local etcd instance to "/etc/kubernetes/manifests/etcd.yaml"
    

    As you can see that necessary manifest files are prepared for kubelet in the /etc/kubernetes/manifests/ directory.

    [init] Waiting for the kubelet to boot up the control plane as Static Pods from directory "/etc/kubernetes/manifests"
    

    Now Kubelet will apply these manifest files and control-plane will be up and running.