= k8s/StudyNotes = * [[k8s/StudyNotes/cubectl]] * [[k8s/StudyNotes/Deployments]] * [[k8s/StudyNotes/Pods]] * [[k8s/StudyNotes/Services]] * [[k8s/StudyNotes/SchedulingSelectors]] * [[k8s/StudyNotes/TaintsAndTolerations]] * [[k8s/StudyNotes/NodeSelectors+NodeAffinity]] * [[k8s/StudyNotes/ResourceRequests]] * [[k8s/StudyNotes/DaemonSets]] * [[k8s/StudyNotes/kube-scheduler]] * [[k8s/StudyNotes/Monitor&Logging]] * [[k8s/StudyNotes/Rollout&Versioning]] * [[k8s/StudyNotes/ClusterMaintenance&Upgrades]] * [[k8s/StudyNotes/k8s-certs-security]] * [[k8s/StudyNotes/RBAC]] * [[k8s/StudyNotes/ServiceAccounts]] * [[k8s/StudyNotes/ImageSecurity]] * [[k8s/StudyNotes/SecurityDockerContainer]] * [[k8s/StudyNotes/NetworkPolicies]] * [[k8s/StudyNotes/Storage]] * [[k8s/StudyNotes/LinuxNetworkNamespaces]] * [[k8s/StudyNotes/k8sNetworking]] * [[k8s/StudyNotes/k8sNetworkExam]] * [[k8s/StudyNotes/k8sDNS]] * [[k8s/StudyNotes/k8sIngressService]] * [[k8s/StudyNotes/k8sDesignCluster]] * https://kodekloud.com/ * https://github.com/kodekloudhub/certified-kubernetes-administrator-course * Certified Kubernetes Administrator: https://www.cncf.io/certification/cka/ * Exam Curriculum (Topics): https://github.com/cncf/curriculum * Candidate Handbook: https://www.cncf.io/certification/candidate-handbook * Exam Tips: http://training.linuxfoundation.org/go//Important-Tips-CKA-CKAD * Use the code – DEVOPS15 – while registering for the CKA or CKAD exams at Linux Foundation to get a 15% discount. * '''Tips''': * Setup env {{{ alias k=kubectl export do="-o yaml --dry-run=client" }}} * Very little can be edited in running pod field/property, rather edit deployment, as this will replace pod. * Find yaml config options for obj e.g. Pod {{{ kubectl explain pod --recursive | grep -i scheduler }}} * {{{ kubectl api-resources --namespaced=true }}} * {{{ kubectl auth can-i --as peter get pods }}} * pod python app to access k8s api in container [[k8s/StudyNotes/k8sPythonApp]] * kubectl clusterInfo * kubeadm * deploys all the kubernetes services downloaded from web * Kube-Scheduler 1. Filter Nodes (Pod cant fit) 2. Rank Nodes (Compare resources left, try to balance cpu/mem usage) * kubelet - captain on each Worker Node * Registers with Master node, reports status and executes * Always manual install wget https://storage.googleapis.com/kubernetes-release/release/v1.xx.x/bin/linux/amd64/kubelet * Not kubeadm managed. * Needs tls bootstrap * Kube-proxy - run on each node, service's virtual component * All pods can see all other pods, through POD Network, by IP/Name. Exposed through service: eg. db(IP) * Watches for service creation, and then configure network e.g. Iptables to forward to actual pod. * Install: download wget to install or * kubeadm will deploy it as deamon set to each pod in namespace kube-system * kind: Deployments - Encapsulates ReplicaSet that Encapsulate Pods * Can have deployment and replacement policy * kind: ResourceQuote spec: hard: cpu: