Awesome Kubernetes bookmarks and learning resources
This article would show some learning resources for kubernetes users, especially for those who are beginning to learn kubernetes and those who are planing for the CKA/CKAD exams.
Bookmarks for kubernetes.io
When managing kubernetes at work or doing the certification test ( CKA / CKAD) , do NOT always search in the kubernetes.io, you need bookmark it in your browser to quickly find examples or references, because you should bear in mind that you can only open two tabs in your browser in the CKA/CKAD test, one for test and the other is kubernetes.io.
Here are some bookmarks of Kubernetes.io, which can help you pass the CKA certification tests.
- Kubectl Cheet Sheet
- Kubectl is the key command of kubernetes. This page contains all the kubectl command options and examples, which are very useful references for daily works and the CKA/CKAD certification tests.
- https://kubernetes.io/docs/reference/kubectl/cheatsheet/
2. kubectl Usage Conventions
- This page shows some recommended usage conventions for kubectl, for example, the best practices of kubectl commands.
- https://kubernetes.io/docs/reference/kubectl/conventions/
3. JSONPath
- Kubectl uses JSONPath expressions to filter on specific fields in the JSON object and format the output, it’s widely used for filtering and searching tasks when using kubectl.
- https://kubernetes.io/docs/reference/kubectl/jsonpath/
4. NodeSelector | Affinity
- It’s about how to schedule resources to nodes, including the node selector / affinity / anti-affinity, it’s very import features of kubernetes.
- https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
5. Taints and Tolerations
- Taints and tolerations are powerful tools which work together to ensure that pods are not scheduled onto inappropriate nodes
- https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/
6. Requests and Limits
- You can use Requests and limits to limit the cpu / memory / hardisk qutoa of kubernetes resources.
- https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/#requests-and-limits
7. Command and Arguments for a Container
- You can use commands and arguments for kubernetes containers to extend its capabilities.
- https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/
8. Environment Variables for a Container
- This page help you to define and query environment variables of the container in kubernetes
- https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/
9. Multiple Containers in the Same Pod
- This page introduces how to share volumes between multiple containers in a pod.
- https://kubernetes.io/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/
10. Upgrading kubeadm clusters
- This page gives examples of how to upgrade kubernetes clusters built with kubeadm.
- https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/
11. Certificates
- This page demos how to generate certificates of kubernetes by using openssl/easyrsa/cfssl.
- https://kubernetes.io/docs/concepts/cluster-administration/certificates/
12. RBAC Authorization
- Role based authorization is the key security methods of kubernetes, this page demos how to use RBAC , and the yamls.
- https://kubernetes.io/docs/reference/access-authn-authz/rbac/
13. Pull an Image from a Private Registry
- This page demos how to pull images from private registries, e.g. docker registry or harbor.
- https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
14. Security Context
- This page introduces how to set and query the security context for pods and containers in kubernetes.
- https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
15. Network Policies
- You can specify how pods can communicate with each other with network policies.
- https://kubernetes.io/docs/concepts/services-networking/network-policies/
16. Persistent Volumes
- This page list examples of static or dynamic persistent volumes of kubernetes
- https://kubernetes.io/docs/concepts/storage/persistent-volumes/
17. DNS Resolution
- Kubernetes use DNS to resolve name to IP address, you must know how it works and how to debug it.
- https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/
18. Volumes
- This page introduce volumes in kubernetes, and compare it with docker volumes, and also show us some examples of different volume types.
- https://kubernetes.io/docs/concepts/storage/volumes/
Please save the above names and links in your browser as bookmarks, it would save you a lot of time when you do your regular work or passing the CKA/CKAD certification tests.
Here is the kubernetes.io bookmarks result in my computer:
Kubernetes learning resources for beginners
- Books
I recommend to read kubernetes in action ,writen by Marko Lukša, have a deep insight into the kubernetes concepts and practices. After reading this book, you would master the kubernetes theory , concepts and some best practices, and also know how it works under the hood.
2. Udemy courses
I am learning CKA from Certified Kubernetes Administrator (CKA) with Practice Tests , this course provides a lab to practice, it’s very cool, you don’t even have to setup a local test environment to learn kubernetes concepts.
3. Tutorials
You can reference the official tutorial of kubernetes for beginners: the Kubernetes basics , where you can learn the basic ideas, learn how to deploy a cluster, deploy an app and scale an app.
4. Practical example for deploying app in kubernetes
Here is an example named guestbook,which shows you how to build and deploy a simple, multi-tier web application using Kubernetes and Docker.
5. Follow some masters in twitter
- Tim Hockin
- Clayton Coleman
- Daniel Smith
- Brian Grant
- Vishnu Kannan
- Saad Ali
- Kelsey Hightower
- Joe Beda
- Brendan Burns
- Michelle Noorali
6. Some blogs to read
Other Reminders:
- If you are new to Kubernetes for the first time, or have only a little knowledge of Kubernetes, then do not try to understand what is going on at the bottom of Kubernetes. Please don’t worry, just use it as a black box tool
- You may see more concepts online, such as PVC, Ingress, Priority, etc. During the beginning phase, please do not try to learn too many resource types. Kubernetes has a lot of concepts and similar resources. We are familiar with the most core concepts here, otherwise it is easy to get mad and remember.