This document shows kubeadm usage, Official document: https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm/ Default cluster config Master node kubeadm config print init-defaults Worker node kubeadm config print join-defaults Once cluster is ready, user can view kubeadm config by following command, kubectl get cm kubeadm-config -o yaml -n kube-system Customize cluster config kubeadm provides --config option for kubeadm init and kubeadm join, user can configure a cluster by a yaml file as following example,
Local helm repository for preparing a local helm repository, user has to setup follows, ChartMuseum is an open-source, easy to deploy, Helm Chart Repository server. https://chartmuseum.com/ https://github.com/helm/chartmuseum Helm-servecm is a plugin that help to start ChartMuseum server. https://github.com/jdolitsky/helm-servecm Helm-push is a helm plugin to push helm chart package to ChartMuseum. https://github.com/chartmuseum/helm-push Install ChartMuseum/Helm-servecm/Helm-push plugins install ChartMuseum/Helm-servecm
Taint manager eviction
Official document: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/#taint-based-evictions For current kubernetes, Taint based Evictions support as follows, tolerations node.kubernetes.io/not-ready:NoExecute for 300s and node.kubernetes.io/unreachable:NoExecute for 300s are marked on pods in default by k8s when deploy, it means that pods can tolerate these taints for 300s. $ kubectl describe po my-pod-787f46887-cx2gt | grep -i node Node: edge/192.168.0.4 Tolerations: node.kubernetes.io/not-ready:NoExecute for 300s node.kubernetes.io/unreachable:NoExecute for 300s once a slave node was disconnected from cluster, taints node.
This document provides some tips of using kubelet. Official documents: https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/ Tips Since all slave nodes have no capability of storing in kubernetes, it means that kubelet has to request api-server in period. Once slave node was registered to cluster, it no way reconfigure some features by restarting kubelet, for example labeling node by --node-label option when start kubelet. However, if slave node is deleted by administrator(kubectl delete node $NODE_NAME) from cluster, slave node can rejoin cluster by restarting cluster, also some reconfigurable features will active.